授予对 Azure 事件中心的访问权限
每次向事件中心发布事件或使用事件中心的事件时,客户端都会尝试访问事件中心资源。 每个对安全资源的请求都必须经过授权,以便服务确保客户端具有发布或使用数据所需的权限。
Azure 事件中心提供以下用于授权访问安全资源的选项:
- Microsoft Entra ID
- 共享访问签名
注意
本文同时适用于事件中心和 Apache Kafka 方案。
Microsoft Entra ID
Microsoft Entra 与事件中心资源集成,提供了 Azure 基于角色的访问控制 (RBAC),用于精细控制客户端对资源的访问。 可使用 Azure RBAC 授予对安全主体的权限,该主体可以是用户、组或应用程序服务主体。 Microsoft Entra 将对安全主体进行身份验证并返回 OAuth 2.0 令牌。 令牌可用于授权访问事件中心资源的请求。
有关使用 Microsoft Entra ID 进行身份验证的详细信息,请参阅以下文章:
共享访问签名
事件中心资源的共享访问签名 (SAS) 针对事件中心资源提供有限的委托访问权限。 通过对签名的有效时间间隔或对它授予的权限添加约束,可灵活地管理资源。 有关详细信息,请参阅使用共享访问签名 (SAS) 进行身份验证。
使用 Microsoft Entra ID 返回的 OAuth 2.0 令牌授权用户或应用程序,从而提供比共享访问签名 (SAS) 更高的安全性和易用性。 使用 Microsoft Entra ID,不需要在代码中存储令牌,也不需要冒潜在的安全漏洞风险。 你可以继续使用共享访问签名 (SAS) 授予对事件中心资源的精细访问权限,Microsoft Entra ID 同时提供了类似的功能,并且不需要管理 SAS 令牌,也不需要担心吊销已泄密的 SAS。
默认情况下,所有事件中心资源都受到保护,并且只能由帐户所有者使用。 虽然可以使用上述任何授权策略为客户端授予访问事件中心资源的权限, Azure 建议尽可能使用 Microsoft Entra ID,以便最大程度地确保安全性和易用性。
若要详细了解如何使用 SAS 进行授权,请参阅使用共享访问签名授权访问事件中心资源。