".NET Core身份验证中AddJwtBearer和AddOpenIdConnect有什么区别?"

27
我一直在研究使用Azure AD进行.NET Core身份验证的基础知识,以构建一个API,尝试查找有关身份验证方案的信息。我了解基于cookie和令牌的身份验证之间的区别,但似乎JwtBearer和OpenIdConnect选项非常相似,因为它们都基于令牌系统工作。
我做了很多搜索,却找不到任何地方解释两者之间的区别,以及在哪些情况下使用其中之一或甚至这些方法的定义。我查看了很多在线教程和各种YouTube视频,大约60%的人使用AddJwtBearer,其他人使用AddOpenIdConnect来指定他们的身份验证方案。能否有人解释一下这些方法是做什么的,它们之间的区别是什么?
1个回答

27
您使用AddJwtBearer来保护API,这意味着API的客户端发送JWT令牌来访问API,而且没有其他人类交互。
您使用AddOpenIdConnect来保护Web应用程序,在该应用程序中有人类交互(登录/注销等),因为通常会将用户重定向到身份提供者。
下面的图片显示了JwtBearer处理程序的功能:

enter image description here

如果在使用AddOpenIdConnect / AddJwtBearer时需要进一步帮助,我写了几篇相关的博客文章:


这个回答解决了你的问题吗? - Tore Nestenius

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接