繁体   English   中英

.NET 核心 Web API 身份验证和 .NET 身份

[英].NET Core Web API Authentication and .NET Identity

我最近接手了一个 .NET 核心 MVC 项目,并且必须使用 API 对其进行扩展。 对于身份验证,使用 .NET 核心身份。 来自 swift iOS/Mac 开发,我开始了一个演示项目,进入其中并进行一些基本的身份验证。

在阅读Microsoft 文档上的身份时,他们专注于 WebApps。 所以我的问题是:

  • 我应该使用身份进行 API 身份验证还是仅用于内部身份管理和 WebApp 的东西?
  • 身份/.NET 核心是否已经为我提供了 jwt 和例如基本身份验证以最初获得 jwt 还是我必须自己创建很多?

我的目标是创建受 jwt-auth 保护的路由,并能够获得带有用户名和密码的 jwt。

ASP.NET 核心身份不适合保护 API,其他身份提供者的使用由文档指导:

ASP.NET Core Identity 向 ASP.NET Core web 应用程序添加了用户界面 (UI) 登录功能。 要保护 web API 和 SPA,请使用以下方法之一:

  • Azure 活动目录
  • Azure Active Directory B2C (Azure AD B2C)
  • 身份服务器4

并根据上一个链接:

IdentityServer4 是用于 ASP.NET 核心的 OpenID Connect 和 OAuth 2.0 框架。 IdentityServer4 启用以下安全功能:

  • 身份验证即服务 (AaaS)
  • 多种应用程序类型的单点登录/注销 (SSO)
  • API 的访问控制
  • 联合网关

所以你需要 go 和IdentityServer4

为此,您应该使用身份 server4。

请参考身份服务器 4 的简单示例,以使用令牌保护客户端。

identity-server4 简单示例

您还需要了解更多内容,请参阅身份服务器 4 官方文档

此外,您还可以按照分步身份服务器设置视频教程进行操作。

暂无
暂无

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

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