我目前正在构建一个.NET 6 Web API,我想将IdentityServer4添加到项目中,并将其迁移到我的数据库中。我已经检查了他们的文档和大量教程,但似乎没有一个显示如何将IdentityServer4添加到已经存在的Web API和数据库中。
b09cbbtk1#
您应该始终将IdentityService部署在单独的“服务”中,不要将其与API或客户端项目混合在一起。否则,很难对系统进行推理。然后在API中,您只需使用AddJwtBearer处理程序与IdentityServer通信。AddJwtBearer将验证接收到的访问令牌并从中创建ClaimsPrincipal用户对象。然后可以使用该用户来授权用户。IdentityServer包含一个包,该包可以与基于ASP.NET Identity的数据库进行通信,您可以使用ASP.NET Identity来管理该数据库。请参见https://docs.duendesoftware.com/identityserver/v6/aspnet_identity/
1条答案
按热度按时间b09cbbtk1#
您应该始终将IdentityService部署在单独的“服务”中,不要将其与API或客户端项目混合在一起。否则,很难对系统进行推理。
然后在API中,您只需使用AddJwtBearer处理程序与IdentityServer通信。AddJwtBearer将验证接收到的访问令牌并从中创建ClaimsPrincipal用户对象。然后可以使用该用户来授权用户。
IdentityServer包含一个包,该包可以与基于ASP.NET Identity的数据库进行通信,您可以使用ASP.NET Identity来管理该数据库。请参见https://docs.duendesoftware.com/identityserver/v6/aspnet_identity/