每次从事件中心发布或使用事件时,客户端都会访问事件中心资源。 必须授权对安全资源的每个请求,以确保客户端具有发布或使用数据所需的权限。
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 进行授权,请参阅使用共享访问签名授权访问事件中心资源。