Compartir por


Identidades administradas para el servicio Azure Web PubSub

En este artículo se muestra cómo crear una identidad administrada para el servicio Azure Web PubSub y cómo usarla.

Importante

El servicio Azure Web PubSub solo admite una identidad administrada. Esto significa que puede agregar una identidad asignada por el sistema o asignada por el usuario.

Adición de una identidad asignada por el sistema

Para configurar una identidad administrada en Azure Portal, primero tiene que crear una instancia del servicio Azure Web PubSub y después habilitar la característica.

  1. Cree una instancia del servicio Azure Web PubSub en el portal como lo haría habitualmente. Búsquela en el portal.

  2. Seleccione Identidad.

  3. En la pestaña Asignado por el sistema, cambie Estado a Activado. Seleccione Guardar.

    Adición de una identidad asignada por el sistema en el portal

Adición de una identidad asignada por el usuario

La creación de una instancia del servicio Azure Web PubSub con una identidad asignada por el usuario requiere que se cree la identidad y luego se agregue su identificador de recurso al servicio.

  1. Cree un recurso de identidad administrada asignada por el usuario según estas instrucciones.

  2. Cree una instancia del servicio Azure Web PubSub en el portal como lo haría habitualmente. Búsquela en el portal.

  3. Seleccione Identidad.

  4. En la pestaña Usuario asignado, seleccione Agregar.

  5. Busque la identidad que creó anteriormente y selecciónela. Seleccione Agregar.

    Adición de una identidad asignada por el usuario en el portal

Uso de una identidad administrada en escenarios de eventos de cliente

Azure Web PubSub es un servicio totalmente administrado, por lo que no puede usar una identidad administrada para obtener tokens manualmente. En su lugar, cuando el servicio Azure Web PubSub envía eventos al controlador de eventos, usará la identidad administrada para obtener un token de acceso. Luego, el servicio establece el token de acceso en el encabezado Authorization de la solicitud HTTP.

Habilitación de la autenticación de identidades administradas en la configuración del controlador de eventos

  1. Agregue una identidad asignada por el sistema o una asignada por el usuario.

  2. Vaya a Configuración del centro de conectividad y agregue o edite un controlador de eventos ascendente.

    msi-setting

  3. En la sección Autenticación, seleccione Usar de autenticación y active Especificar la audiencia de tokens emitida. La audiencia se convertirá en la notificación aud en el token de acceso obtenido, que se puede usar como parte de la validación en el controlador de eventos. Puede elegir una de las opciones siguientes:

    • Seleccione entre las aplicaciones existentes de Microsoft Entra. Se usará el identificador de la aplicación que elija.
    • El URI del identificador de la aplicación de la entidad de servicio.

    Importante

    El uso de un recurso vacío realmente adquiere un token destinado a Microsoft Graph. Como hoy, Microsoft Graph habilita el cifrado de tokens para que no esté disponible para que la aplicación autentique el token que no sea Microsoft Graph. En la práctica habitual, siempre debe crear una entidad de servicio para representar el destino ascendente. Y establezca el id. de aplicación o el URI identificador de aplicación de la entidad de servicio que ha creado.

Autenticación en una aplicación de funciones

Puede establecer fácilmente la validación de acceso para una aplicación de funciones sin cambios en el código mediante Azure Portal:

  1. En Azure Portal, vaya a la aplicación de funciones.

  2. Seleccione Autenticar desde el menú.

  3. Seleccione Agregar el proveedor de identidades.

  4. En la pestaña Aspectos básicos, en la lista desplegable proveedor de identidades, seleccione Microsoft.

  5. En Acción necesaria cuando la solicitud no está autenticada, seleccione Iniciar sesión con Microsoft Entra ID.

  6. La opción para crear un nuevo registro está seleccionada de forma predeterminada. Puede cambiar el nombre del registro. Para obtener más información sobre cómo habilitar un proveedor de Microsoft Entra, consulte Configuración de la aplicación de App Service o Azure Functions para usar un inicio de sesión de Microsoft Entra ID.

    Captura de pantalla que muestra información básica para agregar un proveedor de identidades.

  7. Vaya al servicio Web PubSub y siga los pasos para agregar una identidad asignada por el sistema o una identidad asignada por el usuario.

  8. En la pestaña Configuración del servicio Web PubSub, Edite la configuración del centro, Edite la configuración del controlador de eventos, en la sección Autenticación, seleccione Usar identidad administrada y Seleccione entre las aplicaciones existentes. Seleccione la aplicación que creó anteriormente.

Después de configurar estos ajustes, la aplicación de funciones rechazará las solicitudes sin un token de acceso en el encabezado.

Validación de los tokens de acceso

Si no usa WebApp o Azure Functions, también puede validar el token.

El token del encabezado Authorization es un token de acceso plataforma de identidades de Microsoft.

Para validar los tokens de acceso, la aplicación también debe validar la audiencia y los tokens de firmas. Deben validarse con los valores del documento de detección de OpenID. Por ejemplo, fijémonos en la versión independiente del inquilino del documento.

El middleware de Microsoft Entra tiene capacidades integradas para validar los tokens de acceso. Puede examinar nuestros ejemplos para encontrar uno en el idioma que elija.

Proporcionamos bibliotecas y ejemplos de código que le muestran cómo controlar la validación de tokens. También hay varias bibliotecas de asociados de código abierto disponibles para la validación de JSON Web Token (JWT). Al menos hay una opción para casi cualquier plataforma y lenguaje. Para obtener más información sobre las bibliotecas de autorización y los ejemplos de código de Microsoft Entra, consulte bibliotecas de autenticación de la plataforma de identidad de Microsoft.

Especialmente, si el controlador de eventos hospeda en Azure Function o Web Apps, una manera sencilla es Configurar el inicio de sesión de Microsoft Entra.

Uso de una identidad administrada para la referencia de Key Vault

El servicio Web PubSub puede tener acceso a Key Vault para obtener el secreto mediante la identidad administrada.

  1. Agregue una identidad asignada por el sistema o una identidad asignada por el usuario para el servicio Web PubSub.

  2. Conceda el permiso de lectura de secreto para la identidad administrada en las directivas de acceso de Key Vault. Consulte Asignación de una directiva de acceso de Key Vault mediante Azure Portal

Actualmente, esta característica se puede usar en los escenarios siguientes:

  • Utilice la sintaxis {@Microsoft.KeyVault(SecretUri=<secret-identity>)} para obtener secretos de KeyVault en la configuración de la plantilla de dirección URL del controlador de eventos.

Pasos siguientes