Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuración de incorporación del hub
Complete estos pasos de configuración para cada dispositivo central antes de comenzar el proceso de incorporación del aprovisionamiento de la flota. En esta sección se describe cómo crear elementos gestionados, configurar las estructuras de directorios y configurar los certificados necesarios.
Pasos de configuración
Paso 1: Registrar un punto final personalizado
Cree un punto final de comunicación dedicado que sus dispositivos utilicen para intercambiar datos con las integraciones gestionadas. Este terminal establece un punto de conexión seguro para todos los device-to-cloud mensajes, incluidos los comandos del dispositivo, las actualizaciones de estado y las notificaciones.
Para registrar un punto de conexión
-
Utilice la RegisterCustomEndpointAPI para crear un punto final para la comunicación de device-to-managed las integraciones.
RegisterCustomEndpointEjemplo de solicitud
aws iot-managed-integrations register-custom-endpointRespuesta:
{ [ACCOUNT-PREFIX]-ats.iot.AWS-REGION.amazonaws.com }nota
Guarde la dirección del punto final. Lo necesitarás para comunicarte con tus dispositivos en el futuro.
Para devolver la información del punto final, usa la
GetCustomEndpointAPI.Para obtener más información, consulta la RegisterCustomEndpointAPI y la GetCustomEndpointAPI en la Guía de referencia de la API de integraciones gestionadas.
Paso 2: Crear un perfil de aprovisionamiento
Un perfil de aprovisionamiento contiene las credenciales de seguridad y los ajustes de configuración que sus dispositivos necesitan para conectarse a las integraciones gestionadas.
Para crear un perfil de aprovisionamiento de flota
-
Llame a la CreateProvisioningProfileAPI para generar lo siguiente:
-
Una plantilla de aprovisionamiento que define la configuración de conexión del dispositivo
-
Un certificado de reclamación y una clave privada para la autenticación del dispositivo
importante
Guarde el certificado de reclamación, la clave privada y el ID de plantilla de forma segura. Necesitará estas credenciales para incorporar los dispositivos a las integraciones gestionadas. Si pierde estas credenciales, debe crear un nuevo perfil de aprovisionamiento.
-
CreateProvisioningProfilesolicitud de ejemplo
aws iot-managed-integrations create-provisioning-profile \ --provisioning-type FLEET_PROVISIONING \ --name PROFILE_NAME
Respuesta:
{ "Arn":"arn:aws:iotmanagedintegrations:AWS-REGION:ACCOUNT-ID:provisioning-profile/PROFILE-ID", "ClaimCertificate": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7.....w3rrszlaEXAMPLE= -----END CERTIFICATE-----", "ClaimCertificatePrivateKey": "-----BEGIN RSA PRIVATE KEY----- MIICiTCCAfICCQ...3rrszlaEXAMPLE= -----END RSA PRIVATE KEY-----", "Id": "PROFILE-ID", "PROFILE-NAME", "ProvisioningType": "FLEET_PROVISIONING" }
Paso 3: Crear algo gestionado (aprovisionamiento de flota)
Usa la CreateManagedThing API para crear un elemento gestionado para tu dispositivo hub. Cada hub requiere su propio dispositivo gestionado con materiales de autenticación únicos. Para obtener más información, consulta la CreateManagedThingAPI en la referencia de la API de integraciones gestionadas.
Al crear un elemento gestionado, especifique estos parámetros:
-
Role: Establezca este valor enCONTROLLERpara los concentradores que no admiten comando y control; de lo contrario, establézcalo en.DEVICE -
AuthenticationMaterialType: Establezca este valor en.WIFI_SETUP_QR_BAR_CODE -
AuthenticationMaterial: incluya los siguientes campos. Puede usar unoUPCo ambosEAN, pero no ambos.-
SN: el número de serie exclusivo de este dispositivo -
UPC: El código de producto universal de este dispositivo -
EAN: El número de artículo internacional de este dispositivo
-
importante
Cada dispositivo debe tener un número de serie (SN) único en su material de autenticación.
CreateManagedThingEjemplo de solicitud:
{ "Role": "CONTROLLER", "AuthenticationMaterialType": "WIFI_SETUP_QR_BAR_CODE", "AuthenticationMaterial": "SN:123456789524;UPC:829576019524" }
Para obtener más información, consulta la referencia CreateManagedThingde la API de integraciones gestionadas.
(Opcional) Obtenga algo gestionado
Lo que debe gestionar debe ser PRE_ASSOCIATED antes de que pueda continuar. ProvisioningStatus Para obtener más información ProvisioningStatus, consulte Aprovisionamiento de dispositivos. Usa la GetManagedThing API para comprobar que el dispositivo gestionado existe y está listo para el aprovisionamiento. Para obtener más información, consulta la referencia GetManagedThingde la API de integraciones gestionadas.
Paso 4: Crear la estructura de directorios
Cree directorios para sus certificados y archivos de configuración. De forma predeterminada, el proceso de incorporación del hub utiliza el/data/aws/iotmi/config/iotmi_config.json.
Puede especificar rutas personalizadas para los certificados y las claves privadas en el archivo de configuración. En esta guía se utiliza la ruta predeterminada/data/aws/iotmi/certs.
mkdir -p /data/aws/iotmi/config mkdir -p /data/aws/iotmi/certs /data/ aws/ iotmi/ config/ certs/
Paso 5: Añadir materiales de autenticación al dispositivo hub
Copie los certificados y las claves en su dispositivo concentrador y, a continuación, cree un archivo de configuración específico para el dispositivo. Estos archivos establecen una comunicación segura entre tu hub y las integraciones gestionadas durante el proceso de aprovisionamiento.
Para copiar el certificado de reclamación y la clave
-
Copia estos archivos de autenticación de la respuesta de la
CreateProvisioningProfileAPI a tu dispositivo hub:-
claim_cert.pem: El certificado de reclamación (común a todos los dispositivos) -
claim_pk.key: la clave privada del certificado de reclamación
Coloque ambos archivos en el
/data/aws/iotmi/certsdirectorio.importante
Al almacenar certificados y claves privadas en formato PEM, asegúrese de formatear correctamente los caracteres de nueva línea. En el caso de los archivos codificados con PEM, los caracteres de nueva línea
(\n)deben sustituirse por separadores de línea reales, ya que el simple hecho de almacenar las líneas nuevas escapadas no se recuperará correctamente más adelante.nota
Si utiliza un almacenamiento seguro, guarde estas credenciales en su ubicación de almacenamiento segura en lugar de en el sistema de archivos. Para obtener más información, consulte Cree un controlador de certificados personalizado para un almacenamiento seguro.
-
Paso 6: Cree el archivo de configuración del dispositivo
Cree un archivo de configuración que contenga identificadores de dispositivo únicos, ubicaciones de certificados y ajustes de aprovisionamiento. El SDK utiliza este archivo durante la incorporación del hub para autenticar el dispositivo, gestionar el estado del aprovisionamiento y almacenar la configuración de la conexión.
nota
Cada dispositivo hub requiere su propio archivo de configuración con valores únicos específicos del dispositivo.
Utilice el siguiente procedimiento para crear o modificar el archivo de configuración y cópielo en el hub.
-
Cree o modifique el archivo de configuración (aprovisionamiento de flota).
Configure estos campos obligatorios en el archivo de configuración del dispositivo:
-
Rutas de certificado
-
iot_claim_cert_path: Ubicación de su certificado de reclamación (claim_cert.pem) -
iot_claim_pk_path: Ubicación de su clave privada (claim_pk.key) -
SECURE_STORAGEUtilícelo para ambos campos al implementar el controlador de certificados de almacenamiento seguro
-
-
Configuraciones de conexión
-
fp_template_name: ElProvisioningProfilenombre de antes. -
endpoint_url: la URL del punto final de las integraciones gestionadas a partir de la respuesta de laRegisterCustomEndpointAPI (la misma para todos los dispositivos de una región).
-
-
Identificadores de dispositivos
-
SN: número de serie del dispositivo que coincide con tu llamada a laCreateManagedThingAPI (único por dispositivo) -
UPCCódigo de producto universal de tu llamada a laCreateManagedThingAPI (el mismo para todos los dispositivos de este producto)
-
{ "ro": { "iot_provisioning_method": "FLEET_PROVISIONING", "iot_claim_cert_path": "<SPECIFY_THIS_FIELD>", "iot_claim_pk_path": "<SPECIFY_THIS_FIELD>", "fp_template_name": "<SPECIFY_THIS_FIELD>", "endpoint_url": "<SPECIFY_THIS_FIELD>", "SN": "<SPECIFY_THIS_FIELD>", "UPC": "<SPECIFY_THIS_FIELD>" }, "rw": { "iot_provisioning_state": "NOT_PROVISIONED" } } -
Contenido del archivo de configuración
Revise el contenido del iotmi_config.json archivo.
| Clave | Valores | ¿Lo agregó el cliente? | Notas |
|---|---|---|---|
iot_provisioning_method |
FLEET_PROVISIONING |
Sí | Especifique el método de aprovisionamiento que quiere usar. |
iot_claim_cert_path |
La ruta del archivo que especifique oSECURE_STORAGE. Por ejemplo, /data/aws/iotmi/certs/claim_cert.pem |
Sí | Especifique la ruta del archivo que desee utilizar oSECURE_STORAGE. |
iot_claim_pk_path |
La ruta del archivo que especifique oSECURE_STORAGE. Por ejemplo, /data/aws/iotmi/certs/claim_pk.pem |
Sí | Especifique la ruta del archivo que desee utilizar oSECURE_STORAGE. |
fp_template_name |
El nombre de la plantilla de aprovisionamiento de flota debe ser igual al nombre de ProvisioningProfile la plantilla utilizada anteriormente. |
Sí | Igual al nombre de la ProvisioningProfile que se usó anteriormente |
endpoint_url |
La URL del punto final de las integraciones gestionadas. | Sí | Sus dispositivos utilizan esta URL para conectarse a la nube de integraciones gestionadas. Para obtener esta información, utilice la RegisterCustomEndpointAPI. |
SN |
El número de serie del dispositivo. Por ejemplo, AIDACKCEVSQ6C2EXAMPLE. |
Sí | Debe proporcionar esta información única para cada dispositivo. |
UPC |
Código de producto universal del dispositivo. Por ejemplo, 841667145075. |
Sí | Debe proporcionar esta información para el dispositivo. |
managed_thing_id |
El ID del elemento gestionado. | No | Esta información se añade posteriormente mediante el proceso de incorporación, tras el aprovisionamiento del hub. |
iot_provisioning_state |
El estado del aprovisionamiento. | Sí | El estado de aprovisionamiento debe estar establecido como. NOT_PROVISIONED |
iot_permanent_cert_path |
La ruta del certificado de IoT. Por ejemplo, /data/aws/iotmi/iot_cert.pem. |
No | Esta información se agrega más adelante mediante el proceso de incorporación, tras el aprovisionamiento del hub. |
iot_permanent_pk_path |
La ruta del archivo de clave privada de IoT. Por ejemplo, /data/aws/iotmi/iot_pk.pem. |
No | Esta información se agrega más adelante mediante el proceso de incorporación, tras el aprovisionamiento del hub. |
client_id |
El ID de cliente que se utilizará para las conexiones MQTT. | No | Esta información se añade posteriormente durante el proceso de incorporación, tras el aprovisionamiento del hub, para que la consuman otros componentes. |
mqtt_keep_alive_interval |
El rango es de 30 a 1200 y las unidades están en segundos. El valor predeterminado es 300. | Sí | Utilice esta opción para establecer un intervalo de mantenimiento de las conexiones MQTT. |
event_manager_upper_bound |
El valor predeterminado es 500. | No | Esta información se añade posteriormente durante el proceso de incorporación, tras el aprovisionamiento del hub, para que la consuman otros componentes. |
Paso 7: copia el archivo de configuración en tu hub
Copie el archivo de configuración /data/aws/iotmi/config o la ruta de directorio personalizada. Proporcionarás esta ruta al HubOnboarding binario durante el proceso de incorporación.
Para el aprovisionamiento de flotas
/data/ aws/ iotmi/ config/ iotmi_config.json certs/ claim_cert.pem claim_pk.key