繁体   English   中英

.Net Core WebApi如何使用AD进行授权

[英].Net Core WebApi How to use AD for authorization

我已经看到了一百万个不同的答案,但没有一个能够奏效。

有人可以给我一个适用于的链接:

我有一个web api,我在Azure上注册了它。 我配置了Azure Active Directory。

我有一个tenantId,一个clientId,一个客户端Secret,以及我应该需要的所有其他变量。

我可以通过一个MVC控制器通过AD将用户登录到我的系统,我怎么能用web api做同样的事情?

我基本上需要生成AD令牌,以便我可以继续使用我的MVC控制器之外的API。

它必须是相同的标记,因为我需要从API的客户端访问microsoft图。

救命!

由客户端获取令牌并将其传递给您的API。 您没有指定客户端是什么(即Web,iOS,Android),但由于您使用的是Azure AD,因此您可以使用Microsoft提供的相应ADAL库来执行此操作。

https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-authentication-libraries

我可以通过一个MVC控制器通过AD将用户登录到我的系统,我怎么能用web api做同样的事情?

如果您对服务器到服务器的交互感兴趣而没有来自用户端的直接交互,那么您可以查看AZAD的OAuth 2.0客户端凭据授权流程

所附文章包含简单的实施示例。 我认为对于您的情况,您需要的是使用守护程序/控制台应用程序 (只需用Web API替换它)的示例 下载示例,用你的appsettings.json替换配置(Instance,TenantId,ClientId和ClientSecret),并尝试使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM