Compartir a través de


autenticación y autorización de Service Bus

Hay dos maneras de autenticar y autorizar el acceso a Azure Service Bus recursos:

  • Microsoft Entra ID
  • Firmas de acceso compartido (SAS).

En este artículo se proporcionan detalles sobre el uso de estos dos tipos de mecanismos de seguridad.

Microsoft Entra ID

La integración de Microsoft Entra con Service Bus proporciona control de acceso basado en roles (RBAC) a los recursos de Service Bus. Puede usar Azure RBAC para conceder permisos a una entidad de seguridad, que puede ser un usuario, un grupo, una entidad de servicio de aplicación o una identidad administrada. Microsoft Entra autentica la entidad de seguridad y devuelve un token de OAuth 2.0. Este token se puede usar para autorizar una solicitud de acceso a un recurso de Service Bus (cola, tema y suscripción).

Para obtener más información sobre la autenticación con Microsoft Entra ID, consulte los siguientes artículos:

Nota:

Service Bus API REST admite la autenticación de OAuth con Microsoft Entra ID.

Importante

La autorización de usuarios o aplicaciones mediante el token de OAuth 2.0 devuelto por Microsoft Entra ID proporciona mayor seguridad y facilidad de uso en las firmas de acceso compartido (SAS). Con Microsoft Entra ID, no es necesario almacenar tokens en el código y poner en riesgo posibles vulnerabilidades de seguridad. Se recomienda usar Microsoft Entra ID con las aplicaciones de Azure Service Bus siempre que sea posible.

Puede deshabilitar la autenticación de clave local o de SAS para un espacio de nombres de Service Bus y permitir solo la autenticación de Microsoft Entra. Para instrucciones paso a paso, consulte Deshabilitación de la autenticación local.

Firma de acceso compartido

La autenticación SAS permite conceder a un usuario acceso a los recursos de Service Bus, con derechos específicos. La autenticación de SAS en Service Bus implica la configuración de una clave criptográfica con derechos asociados en un recurso de Service Bus. Los clientes pueden obtener acceso a ese recurso presentando un token SAS, que consta del URI del recurso al que se tiene acceso y una fecha de expiración firmada con la clave configurada.

Puede configurar directivas de acceso compartido en un espacio de nombres Service Bus. La clave se aplica a todas las entidades de mensajes de ese espacio de nombres. También puede configurar directivas de acceso compartido en colas y temas de Service Bus. Para utilizar SAS, puede configurar una regla de autorización de acceso compartido en un espacio de nombres, una cola o un tema. Esta regla está formada por los siguientes elementos:

  • KeyName: identifica la regla.
  • PrimaryKey: una clave criptográfica que se usa para firmar o validar tokens de SAS.
  • SecondaryKey: una clave criptográfica que se usa para firmar o validar tokens de SAS.
  • Derechos: representa la colección de derechos de escucha, envío o administración concedidos.

Las reglas de autorización configuradas en el nivel de espacio de nombres pueden conceder acceso a todas las entidades de un espacio de nombres a los clientes con tokens firmados con la clave correspondiente. Se puede configurar un máximo de 12 reglas de autorización en un espacio de nombres, cola o tema de Service Bus. De forma predeterminada, se configura una regla de autorización de acceso compartido con todos los derechos para cada espacio de nombres cuando se aprovisiona por primera vez.

Para obtener acceso a una entidad, el cliente requiere un token SAS generado con una regla de autorización de acceso compartido determinada. El token SAS se genera mediante el HMAC-SHA256 de una cadena de recurso que consta del URI del recurso al que se notifica el acceso y una fecha de expiración con una clave criptográfica asociada a la regla de autorización.

Para obtener información detallada sobre el uso de SAS para la autenticación, consulte Autenticación con firmas de acceso compartido.

Para obtener más información sobre la autenticación con Microsoft Entra ID, consulte los siguientes artículos:

Consulte los siguientes artículos para más información sobre la autenticación con SAS: