在没有注册客户端的情况下对AzureAD(OAuth2)进行身份验证?

时间:2017-07-25 18:11:40

标签: oauth-2.0 azure-active-directory azure-ad-b2c

我尝试在Azure中创建一个允许用户访问它的Web api。 我不在乎用户是否通过postman,curl或.net控制台应用程序调用api,只要用户可以对AzureAD进行身份验证,保护资源,他应该在。

但是,到目前为止我看到的所有文档都要求我使用AzureAD注册客户端。

所以,我有一个工作示例,但我必须在AzureAD中注册控制台应用程序。

现在,可能有数百或数千名开发人员针对我的API开发应用程序。显然,我不想用AzureAD注册每一个。事实上,我甚至不想知道它们。

我怎么能这样做呢?我关心用户,而不关心客户端应用。 或者这是AzureAD B2C的功能吗?

1 个答案:

答案 0 :(得分:0)

  

现在,可能有数百或数千名开发人员针对我的API开发应用程序。显然,我不想用AzureAD注册每一个。事实上,我甚至不想知道它们。

您只需注册一个应用(网络应用)即可保护网络API。如果您希望不同组织使用Web api,则需要在Azure门户上启用Multi-tenanted功能。

之后,如果其他开发人员想要使用Web API,他们还需要在他们的租户上注册一个应用程序,并向他们的应用程序授予Web API应用程序。之后,可以获取Web API的访问令牌,并使用访问令牌请求Web API。

有关调用Web API的方案的更多详细信息,您可以参考下面的代码示例:

active-directory-dotnet-webapp-webapi-openidconnect

如果sencario是多租户,您也可以参考下面的文档了解详细信息:

How to sign in any Azure Active Directory (AD) user using the multi-tenant application pattern