Azure Active Directory - 使用客户端证书

时间:2018-03-20 10:44:41

标签: azure azure-active-directory client-certificates

我正在关注此示例:https://github.com/Azure-Samples/active-directory-dotnet-daemon-certificate-credential

我能够成功运行示例,获取访问令牌(JWT)并访问Web API。

但是,我希望在Azure AD返回的令牌中声明包含证书主题的值(在这种情况下,它是CN = TodoListDaemonWithCert)。 这是因为我将获得更多具有不同主题的证书(CN = TodoListDaemonWithCert-1,CN = TodoListDaemonWithCert-2 ...),它们也将在TodoListDaemonwithCert应用程序中注册。

Web API将使用从令牌读取的主题(CN = TodoListDaemonWithCert)作为标识继续下一步。

任何想法都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

Azure Active Directory目前不支持此类功能。添加到单个应用程序的多个证书都是可互换的,使用特定的证书不会影响身份验证体验的任何部分,包括令牌中的声明。

请记住,Application Object表示单个应用程序标识。如果您尝试表示多个应用程序,则应采用不同的设计模式:

例如,如果您尝试支持多租户应用程序,其中每个租户都有自己的秘密,那么您应该使用特定于租户的服务主体来注册自定义证书。

如果您尝试表示多个不同的应用程序标识,那么您应该注册多个应用程序,每个应用程序都有自己的证书。

如果有帮助,请告诉我。