Autenticación y autorización
Todas las llamada a la API de REST que se realizan en una aplicación de IoT Central deben incluir un encabezado Authorization. El encabezado Authorization debe contener un token de API o un token de portador de AAD. IoT Central usa estos tokens para determinar quién es el autor de la llamada y a qué tienen acceso dentro de la aplicación.
Token de API
Los tokens de API están diseñados para la comunicación entre servicios, sin un contexto de usuario que haya iniciado sesión. Puede crear un token de API en la aplicación y asignarle un rol para conceder acceso a los recursos de la aplicación.
Para crear y usar un token de API:
Abra la aplicación de IoT Central en el explorador.
Vaya a Administración o tokens de API.
Haga clic en Generar token. Se le pedirá que le asigne un nombre y elija un rol. El rol determina lo que un cliente que usa este token está autorizado para realizar en esta aplicación.
Genere el token y copie el valor. El valor es un secreto y solo se mostrará una vez.
Al construir una solicitud de API, agregue un encabezado similar al siguiente:
Nombre de encabezado Valor de encabezado Authorization <Valor del token de API>
De forma predeterminada, hay 3 roles disponibles en la aplicación. Obtenga más información sobre la creación de nuevos roles.
También puede crear nuevos tokens de API mediante programación. Para realizar la solicitud de API para crear un nuevo token de API, necesitará un encabezado authorization que contenga un token de API o un portador con permisos para crear nuevos tokens de API. Consulte la documentación sobre las operaciones de tokens de API.
Token de portador de AAD
Un token de portador está asociado a una cuenta de usuario de Azure Active Directory que se ha agregado a la aplicación de IoT Central. Puede generar un token de portador en el comando de la CLI de Azure: az account get-access-token --resource https://apps.azureiotcentral.com
Construya una solicitud de API con el siguiente encabezado:
Nombre de encabezado | Valor de encabezado |
---|---|
Authorization | <Valor del token de portador de portador> |
Cuando se usa un token de portador en las solicitudes de API, se concede al autor de la llamada el mismo nivel de acceso que el usuario de Azure Active Directory tiene en la aplicación de IoT Central.
Autenticación de entidad de servicio
Para usar una entidad de servicio de AAD para autenticarse en la API, primero deberá crear la entidad de servicio. Deberá obtener el identificador de inquilino y el identificador de objeto de la entidad de servicio:
- Vaya a Azure Portal -> Azure Active Directory -> Información general. Copia del identificador de inquilino
- Vaya a Aplicaciones empresariales. Cree una nueva aplicación o elija una existente. Copia del valor de objectID
- Vaya a Azure Portal -> Azure Active Directory -> Registros de aplicaciones -> la aplicación -> Permisos de API. Haga clic en Agregar un permiso:> API que usa mi organización y busque Microsoft IoT Central. Elija el elemento que coincida con este texto exacto.
- Seleccione los permisos user_impersonation y Application.ReadWrite.All y agréguelos .
- Seleccione Conceder consentimiento del administrador para el directorio.
Por último, agregue la entidad de servicio a la aplicación de IoT Central. Esto es posible a través de las API en la actualidad.
- Use la API Crear usuarios para agregar este usuario de entidad de servicio. Asegúrese de usar {tenantID} y {objectID} al crear el nuevo usuario.
Ahora puede usar el token de portador asociado a este usuario de entidad de servicio para realizar solicitudes de API, siguiendo los mismos pasos anteriores.
Pasos siguientes
Pruebe a realizar la primera solicitud de API.