C# MSAL与Microsoft.Owin.Security.OpenIdConnect的关系是什么?
我对使用Azure Active Directory和ASP.NET Framework 4.x的组织实施SSO感兴趣 在研究了Microsoft文档之后,我遇到了使用MSAL(Microsoft身份验证库)的建议,以及GitHub上的一个代码示例。代码示例被此引用 根据NuGet的说法,是MSAL库。但是上面的代码示例没有引用该库。如packages.config文件所示 packages.config文件和文章引用了其他库:C# MSAL与Microsoft.Owin.Security.OpenIdConnect的关系是什么?,c#,asp.net,azure,azure-active-directory,msal,C#,Asp.net,Azure,Azure Active Directory,Msal,我对使用Azure Active Directory和ASP.NET Framework 4.x的组织实施SSO感兴趣 在研究了Microsoft文档之后,我遇到了使用MSAL(Microsoft身份验证库)的建议,以及GitHub上的一个代码示例。代码示例被此引用 根据NuGet的说法,是MSAL库。但是上面的代码示例没有引用该库。如packages.config文件所示 packages.config文件和文章引用了其他库: Microsoft.Owin.Security.OpenIdCon
Microsoft.Owin.Security.OpenIdConnect
Microsoft.Owin.Security.Cookies
Microsoft.Owin.Host.SystemWeb
那么这些包与MSAL之间的关系是什么呢?您提到的包被ASP.NET MVC应用程序用于使用OpenID Connect+Cookies组合对用户进行身份验证。 它们用于验证应用程序中的用户。 在后端Web应用程序的上下文中,MSAL处理令牌获取,而不是用户身份验证。 因此,如果您的应用程序需要调用例如MS Graph API,您可以在OpenID Connect软件包完成用户身份验证并收到授权码后,使用MSAL获取访问令牌。 MSAL可以请求令牌,并为您处理令牌缓存和令牌刷新。Microsoft身份验证库 MSAL是一个库,可用于从Microsoft identity platform endpoint获取和管理令牌,以验证用户身份并访问一些受保护的API(例如Graph API) Microsoft.Owin.Security.*(ASP.NET MVC) 这些是可以在ASP.NET MVC应用程序中使用的包
Microsoft.Owin.Security.OpenIdConnect
是一个包含Owin中间件的包,它接受并验证传入的访问令牌
因此:
- 如果要使用AzureAD将用户登录到ASP.NET MVC应用程序,请使用
。您可以查看以下内容Microsoft.Owin.Securit.OpenIdConnect
- 如果您想代表某些用户获取和管理令牌,请使用
MSAL