【发布时间】:2021-09-08 16:08:40
【问题描述】:
所以基本上我在 Angular 中有一个客户端应用程序,它目前使用 OIDC 与 IdentityServer4 通信。未登录的用户被重定向到他们输入用户名/密码的 IdentityServer4 视图,并使用令牌将他们重定向到我的应用程序。这很好用。 然而,除了授权之外的所有客户端应用程序都使用另一个 API,我们称之为 MainAPI。 现在我的客户(人)想要摆脱用户/密码并将其交换为应该由 MainAPI 处理的自定义令牌登录。但是,他不希望我剥离身份服务器的逻辑,并希望 Angular 应用程序继续使用 OIDC,但在没有 IdentityServer4 视图的情况下处理所有事情。
所以我需要的是,一旦我在 MainAPI 上成功验证了自定义令牌,调用 IdentityServer4 以生成令牌/授权代码,就像我登录一样。 如何手动生成授权码?获得该代码后,我应该可以调用:
{
Address = IdentityServerPipeline.TokenEndpoint,
ClientId = "client",
ClientSecret = "secret",
Code = code, => how to get code
RedirectUri = "https://app.com/callback",
// optional PKCE parameter
CodeVerifier = "xyz"
});```
【问题讨论】:
标签: c# angular identityserver4 openid-connect