.net core 如何使用Identity Server 4授权码授予类型流获取授权码
我正在使用带有IdentityServer4包的dotnet core(.NET core)3.1。我有一个SPA,我希望与Identity Server 4集成,因此我将使用PKCE使用授权代码授权类型。我了解这种授权类型的基本思想,但是我不知道如何将用户名/密码交换为授权码。以下是我对它的理解.net core 如何使用Identity Server 4授权码授予类型流获取授权码,.net-core,oauth-2.0,identityserver4,openid-connect,.net Core,Oauth 2.0,Identityserver4,Openid Connect,我正在使用带有IdentityServer4包的dotnet core(.NET core)3.1。我有一个SPA,我希望与Identity Server 4集成,因此我将使用PKCE使用授权代码授权类型。我了解这种授权类型的基本思想,但是我不知道如何将用户名/密码交换为授权码。以下是我对它的理解 SPA向端点发出GET请求/授权端点,看起来像http://localhost:5000/connect/authorize?client_id=js&redirect_uri=http://loca
http://localhost:5000/connect/authorize?client_id=js&redirect_uri=http://localhost:5003/callback.html&response_type=code&scope=openid 轮廓api1&状态=8636d5233f77413584799be6cafe03a7&代码挑战=FbNm1tMkaRMzcSBv4\u D5RPQ4VNAQYINVKCACHSKKV0&代码挑战方法=S256&响应模式=查询
services.AddIdentityServer()
.AddDeveloperSigningCredential()
.AddInMemoryApiResources(Config.GetAllApiResources())
.AddInMemoryClients(Config.GetClients())
.AddTestUsers(Config.GetUsers());
感谢您提供的任何帮助,至少可以将我推向正确的方向。看看这个。特别是验证凭据的帐户内控制器
有两个重要步骤:
对于步骤3,您确实需要为用户登录提供ui/endpoint IdentityServer4团队通过创建一个只需导入的模板来简化这一过程 以下是模板的链接-
在您的情况下,我认为您需要is4ui模板我没有考虑使用这些模板,而是参考了文档和示例。我将浏览其中一些,了解它们是如何实现的。从我在上一个答案中的评论来看,我没有考虑使用模板。我会看看这些,看看哪里出了问题。