Escenario: Trabajar con un dominio IoT

En este escenario se muestra cómo crear un dominio IoT y cómo agregar autenticación a un dominio IoT para que pueda conectarse a APEX, ORDS o establecer una conexión directa a la base de datos para ver los datos IoT.

Tareas

  1. Crear un dominio IoT
  2. Opcional. Utilice solicitudes de trabajo para comprobar el estado de cualquier proceso al trabajar con un dominio IoT.
  3. En función de dónde desee ver los datos de IoT, debe completar los pasos necesarios para configurar el acceso a ese sistema. Como parte de la conexión a otro sistema, debe agregar credenciales de autenticación al dominio IoT para autenticarse en ese sistema:

Antes de empezar

Para completar este flujo de trabajo, debe tener configurada la siguiente configuración:

  • Para administradores: un administrador debe agregar una política al compartimento en el que desea trabajar con el dominio IoT para permitir que el usuario o grupo de usuarios especificado cree, actualice y suprima dominios en el compartimento específico. Para obtener más información, consulte Detalles de la política de la plataforma Internet of Things (IoT).

  • Debe utilizar un grupo de dominios IoT existente o crear un grupo de dominios IoT antes de crear un dominio IoT.
Nota

Oracle recomienda crear hasta 2 dominios IoT en cada grupo de dominios IoT. El número máximo de grupos de dominios IoT es 5 y el número máximo de dominios IoT es 10 para cada región de su arrendamiento.

Paso 1: Crear un dominio IoT

  1. Utilice este comando oci iot domain create y los parámetros necesarios para crear un dominio IoT. Sustituya <domain-group-OCID> para asociar el dominio a un grupo de dominios. Sustituya <compartment-OCID> por el compartimento que desea utilizar. Debe crear el dominio IoT en la misma región que cualquier recurso de gemelo digital relacionado. Opcionalmente, sustituya <your-display-name> por un nombre para el dominio IoT. Agregue el parámetro --wait-for-state SUCCEEDED para recibir la respuesta cuando se complete la acción de creación de un dominio IoT.
    oci iot domain create --compartment-id <compartment-OCID> --iot-domain-group-id <domain-group-OCID> --display-name <your-display-name> --wait-for-state SUCCEEDED

    En esta respuesta de ejemplo se muestra cómo crear un dominio IoT terminado correctamente.

    Action completed. Waiting until the work request has entered state: ('SUCCEEDED',)
    {
      "data": {
        "compartment-id": "<compartment-OCID>",
        "id": "<iot-work-request-OCID>",
        "operation-type": "CREATE_IOT_DOMAIN",
        "percent-complete": 100.0,
        "resources": [
          {
            "action-type": "CREATED",
            "entity-type": "iotDomain",
            "entity-uri": "/20250531/iotDomains/<iot-domain-OCID>",
            "identifier": "<iot-domain-OCID>",
            "metadata": null
          }
        ],
        "status": "SUCCEEDED",
        "time-accepted": "2025-09-08T09:47:18.045000+00:00",
        "time-finished": "2025-09-08T09:49:23.201000+00:00",
        "time-started": "2025-09-08T09:47:30.138000+00:00",
        "time-updated": "2025-09-08T09:49:23.201000+00:00"
      },
      "etag": "<unique-id>"
    }
    

Paso 2: Obtener los detalles del dominio IoT

Utilice este comando para obtener los detalles de un dominio IoT:

oci iot domain get --iot-domain-id <iot-domain-OCID>

En este ejemplo, se muestra que el dominio IoT está activo. Observe que los siguientes nombres de grupo de dominios de identidad y los parámetros de host de permiso del dominio de identidad son null. Este es el resultado esperado, ya que aún no se han definido los detalles de conexión a la base de datos. Si desea establecer una conexión directa a la base de datos, debe configurar el acceso de datos del dominio IoT a la base de datos en el siguiente paso.

"db-allow-listed-identity-group-names": null,

"db-allowed-identity-domain-host": null,
{
  "data": {
    "compartment-id": "<compartment-OCID>",
    "data-retention-periods-in-days": {
      "historized-data": 30,
      "raw-command-data": 16,
      "raw-data": 16,
      "rejected-data": 16
    },
    "db-allow-listed-identity-group-names": null,
    "db-allowed-identity-domain-host": null,
    "defined-tags": {
      "Oracle-Tags": {
        "CreatedBy": "default/user@oracle.com",
        "CreatedOn": "2025-09-08T09:47:17.759Z"
      }
    },
    "description": "<your-description>",
    "device-host": "<domain-short-id>.device.iot.<region>.oci.oraclecloud.com",
    "display-name": "<your-display-name>",
    "freeform-tags": {},
    "id": "<iot-domain-OCID>",
    "iot-domain-group-id": "<iot-domain-group-OCID>",
    "lifecycle-state": "ACTIVE",
    "system-tags": {},
    "time-created": "2025-09-08T09:47:17.987000+00:00",
    "time-updated": "2025-09-08T09:49:23.223000+00:00"
  },
  "etag": "<unique-id>"
}

Paso opcional: Configurar el acceso de un dominio IoT para establecer una conexión directa a la base de datos

Opcionalmente, si desea ver los datos IoT directamente en la base de datos o si desea configurar una conexión a base de datos para ver los datos en Oracle Analytics Cloud o directamente en la base de datos, utilice el comando oci iot domain configure-direct-data-access para configurar la autenticación de un dominio IoT para acceder a la base de datos mediante el grupo o grupos de dominios de identidad configurados durante la configuración.

Para el parámetro <identity-domain-name>, introduzca cualquiera de las siguientes opciones, <identity-group-name> es el grupo de identidades o un grupo dinámico de identidades:

  • Si <identity-group-name> está en el dominio de identidad por defecto, utilice este formato:

    <tenancy-OCID:<identity-group-name>

  • Si <identity-group-name> no está en el dominio de identidad por defecto, utilice este formato para especificar el nombre de dominio de identidad para el grupo de dominio de identidad o el grupo dinámico de dominio de identidad:

    <tenancy-OCID>:<identity-domain-name>/<identity-group-name>

oci iot domain configure-direct-data-access --iot-domain-id <iot-domain-OCID> --db-allow-listed-identity-group-names '["<tenancy-OCID>:<identity-group-name>"]'

En este ejemplo se muestran varios grupos dinámicos de identidades que no están en el dominio de identidad por defecto y que están configurados y autorizados para conectarse a la base de datos. Utilice este formato si tiene una aplicación o un usuario en ejecución en una VCN con grupos dinámicos configurados:

oci iot domain configure-direct-data-access --iot-domain-id <iot-domain-OCID> --db-allow-listed-identity-group-names '["<tenancy-OCID>:<identity-domain-name>/<identity-group-name>", "<tenancy-OCID>:<identity-domain-name>/<identity-group-name>"]'

Para obtener una lista completa de los pasos para configurar una conexión directa a la base de datos, consulte Escenario: Conexión directa a la base de datos IoT o para obtener una lista completa de los pasos para configurar el acceso para ver los datos de IoT en Oracle Analytics Cloud, consulte Escenario: Conexión de los datos de IoT a Analytics Cloud.

Paso opcional: Configurar el acceso de un dominio IoT a Oracle REST Data Services (ORDS)

Si desea utilizar la API de datos IoT o ver los datos en Oracle REST Data Services (ORDS), debe completar la configuración de una conexión a ORDS.

Como parte de la configuración, utilice el comando oci iot domain configure-ords-data-access para configurar el acceso al host del dominio de identidad.

Sustituya idcs-<idcs-id>.identity.oraclecloud.com por el host del dominio de identidad y el OCID del dominio IoT para su entorno:

oci iot domain configure-ords-data-access --iot-domain-id <iot-domain-OCID> --db-allowed-identity-domain-host <idcs-unique-id.identity.oraclecloud.com>

Para obtener una lista completa de los pasos para configurar el acceso para ver los datos en ORDS, consulte Escenario: Conexión de datos de IoT a Oracle REST Data Services (ORDS).

Paso opcional: configurar el acceso de un dominio IoT a APEX

Si desea utilizar la API de datos IoT o ver los datos en Oracle Application Express (APEX), debe completar la configuración de una conexión a APEX.

Como parte de la configuración, utilice el comando oci iot domain configure-apex-data-access para configurar el acceso de un dominio IoT a APEX. Sustituya <your-initial-apex-password> y <iot-domain-OCID> por los valores de su entorno:
oci iot domain configure-apex-data-access --db-workspace-admin-initial-password "<your-initial-apex-password>" --iot-domain-id <iot-domain-OCID>
Para obtener una lista completa de los pasos para configurar el acceso para ver los datos en APEX, consulte Escenario: conexión de datos de IoT a APEX.

Paso opcional: obtener los detalles de conexión del dominio IoT

Después de configurar el acceso a los datos para un dominio IoT, utilice el comando oci iot domain get para confirmar los detalles de conexión de un dominio IoT. Sustituya <iot-domain-OCID> por el OCID del dominio IoT:
oci iot domain get --iot-domain-id <iot-domain-OCID>

Esta respuesta de ejemplo incluye los detalles de conexión a la base de datos que ahora están definidos para el dominio IoT:

{
  "compartment-id": "<compartment-OCID>",
  "data-retention-periods-in-days": {
    "historized-data": 30,
    "raw-command-data": 16,
    "raw-data": 16,
    "rejected-data": 16
  },
  "db-allow-listed-identity-group-names": [
      "<tenancy-OCID>:<identity-domain-name>/<identity-group-name>"
    ],
  "db-allowed-identity-domain-host": "<idcs-unique-id.identity.oraclecloud.com>",
  "defined-tags": {
    "Oracle-Tags": {
      "CreatedBy": "default/user@oracle.com",
      "CreatedOn": "2025-08-05T18:02:51.633Z"
    }
  },
  "description": "<your-description>",
  "device-host": "<domain-short-id>.device.iot.<region>.oci.oraclecloud.com",
  "display-name": "<your-display-name>",
  "freeform-tags": {},
  "id": "<iot-domain-OCID>",
  "iot-domain-group-id": "<iot-domain-group-OCID>",
  "lifecycle-state": "ACTIVE",
  "system-tags": {},
  "time-created": "2025-08-05T18:02:53.418000+00:00",
  "time-updated": "2025-08-05T18:04:42.585000+00:00"
}