Azure 机密及;密钥-事件中心

Azure 机密及;密钥-事件中心,azure,oauth,key,vault,Azure,Oauth,Key,Vault,我有一个第三方外部事件中心生成器客户端将事件发送到我的事件中心队列 我计划使用密钥库向第三方提供客户端ID/Secret和事件中心字符串 这是否仍需要我将用户凭据分发给第三方,以便访问事件中心的Vault机密/密钥?如果您使用Azure key Vault存储EventHub连接字符串和具有适当访问策略的服务主体,然后,如果您想获得该秘密,您的第三方需要使用服务主体凭据-答案是肯定的 static KeyVaultClient GetClient() => new KeyVaultClie

我有一个第三方外部事件中心生成器客户端将事件发送到我的事件中心队列

我计划使用密钥库向第三方提供客户端ID/Secret和事件中心字符串


这是否仍需要我将用户凭据分发给第三方,以便访问事件中心的Vault机密/密钥?

如果您使用Azure key Vault存储EventHub连接字符串和具有适当访问策略的服务主体,然后,如果您想获得该秘密,您的第三方需要使用服务主体凭据-答案是肯定的

static KeyVaultClient GetClient() => new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(async (string authority, string resource, string scope) =>
{
    var context = new AuthenticationContext(authority, TokenCache.DefaultShared);
    ClientCredential clientCred = new ClientCredential(CLIENT_ID, CLIENT_SECRET);
    var authResult = await context.AcquireTokenAsync(resource, clientCred);
    return authResult.AccessToken;
}));
你可以在这里找到完整的样品


此外,您还可以使用Azure AD启用EventHub。

我建议使用共享访问密钥。您授予了对生存期、权限和范围的完全控制权。请看。谢谢,这仍然是安全的,尽管基于secret的值与KV中的值匹配?我更愿意把秘密放在保险库中,因为我可以应用IP白名单进行更深入的防御。秘密在保险库中,根据上面的示例,您正在使用服务主体获取它。在需要时添加更多的安全性始终是一个好主意,我相信。。。