C# Azure Active Directory与.Net核心

C# Azure Active Directory与.Net核心,c#,asp.net-core-mvc,owin,C#,Asp.net Core Mvc,Owin,Microsoft默认标识不适合我的项目需要,因此我必须编写一个自定义筛选器来处理身份验证。通过在我的系统中存储一个带有ActiveDirectory用户Id及其用户Id的引用表,我允许用户使用Azure Active Directory 我真的需要修改一些东西才能在常规的.NET中运行。我现在已经将我的系统切换到.Net核心web api Mvc,我的许多库和语法都没有翻译 代码示例如下: public void SignIn() { HttpContext.GetOwinContext()

Microsoft默认标识不适合我的项目需要,因此我必须编写一个自定义筛选器来处理身份验证。通过在我的系统中存储一个带有ActiveDirectory用户Id及其用户Id的引用表,我允许用户使用Azure Active Directory

我真的需要修改一些东西才能在常规的.NET中运行。我现在已经将我的系统切换到.Net核心web api Mvc,我的许多库和语法都没有翻译

代码示例如下:

public void SignIn() {
 HttpContext.GetOwinContext().Authentication.Challenge(new 
 AuthenticationProperties { RedirectUri = "/" }, 
 OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
我只想引用azure广告,我可以使用.net core登录用户,但无法获取有关该用户的任何详细信息。我过去使用的是azure graph


在不使用Microsoft标识的情况下,我如何才能做到这一点?

您的情况尚不清楚。如果要使用AAD实现身份验证,最简单的方法是使用默认的Azure AD模板:
更改身份验证
-->
工作或学校帐户
。或者手动添加
Microsoft.AspNetCore.Authentication.AzureAD.UI
包:

如果您使用.Net Core Web API作为服务,则客户端应向AAD请求访问令牌以访问受保护的API,您可以使用JWT承载身份验证中间件: