我可以使用 RBAC 访问 Azure 服务总线中继吗?

Can I Access Azure Service Bus Relay Using RBAC?

我知道我可以使用 SAS 令牌身份验证访问 Azure 服务总线中的任何内容,而且似乎通过 RBAC 访问现在正成为事件中心等内容的首选身份验证方法。我在 GitHub 上的各种网络文章或示例中找不到确凿的证据表明可以通过 RBAC 授予 Azure 中继混合连接访问权限。出于各种原因,恕我直言,RBAC 更可取,但如果它不受支持,那么我将不得不走 SAS 路线,这可能会导致一些我无法克服的问题。 TIA.

嗯,据我所知,Hybrid Connection 不支持 RBAC。

本质上,我们更喜欢使用RBAC,因为我们可以在将RBAC角色授予Azure资源后使用Azure AD auth,这是一种更安全的方式。

所以在你的场景中,如果你想避免安全问题,最好的选择是使用Azure Keyvault, just store the SASKey as a secret in keyvault, then just the client which is added to the access policy(or has the Key Vault Administrator role if you select Azure role-based access control in Access policies blade of the keyvault) has the permission to access the secret.

那么在你的代码中,你不需要暴露SASKey,只需要先使用SDK获取秘密,然后根据你的需要继续使用它。