我知道我可以使用SAS令牌身份验证访问Azure服务总线中的任何内容,并且似乎通过RBAC访问现在正在成为诸如事件中心之类的首选验证方法。我在GitHub上的各种网络文章或示例中找不到确凿的证据表明Azure中继混合连接访问可以通过RBAC授予。出于各种原因,我认为RBAC更可取,但如果不支持它,那么我将不得不走SAS路线,这可能会导致一些无法克服的问题。TIA。
据我所知,Hybrid Connection不支持RBAC。
本质上,我们更喜欢使用RBAC,因为我们可以在向Azure资源授予RBAC角色后使用Azure AD认证,这是一种更安全的方式。
所以在你的场景中,如果你想避免安全问题,最好的选择是使用Azure Keyvault,只是将SASKey
作为密钥存储在Keyvault中,然后只有添加到访问策略的客户端(或者如果你在Keyvault的Access policies
刀片中选择Azure role-based access control
,则具有Key Vault Administrator
角色)具有访问该密钥的权限。
那么在你的代码中,你不需要暴露SASKey
,只需要使用SDK先获得秘密,然后继续使用它取决于你的需求。