.NET Core Authentication 中的 AddJwtBearer 和 AddOpenIdConnect 有什么区别?

Ser*_*uss 12 authentication jwt openid-connect .net-core

我一直在研究使用 Azure AD 为我正在构建的 API 进行 .NET Core 身份验证的基础知识,并且我一直在尝试查找有关身份验证方案的信息。我知道基于 cookie 和基于令牌的身份验证之间的区别,但在我看来 JwtBearer 和 OpenIdConnect 选项非常相似,因为它们都基于令牌系统工作。

我进行了大量搜索,但找不到任何可以解释两者之间差异的地方,在哪种情况下您会使用一种而不是另一种,甚至是这些方法的作用的定义。我在网上看了很多教程,甚至各种 YouTube 视频,其中大约 60% 使用 AddJwtBearer,其他人使用 AddOpenIdConnect 来指定他们的身份验证方案。有人能解释一下这些是做什么的,有什么区别吗?

And*_*ndy 7

您使用AddJwtBearer来保护 API,这意味着 API 的客户端发送 JWT 令牌来访问 API,否则没有人为交互。

您用来保护 Web 应用程序的AddOpenIdConnect,您可以在其中进行人工交互(登录/注销...),因为您通常将用户重定向到您的身份提供者。