我正在开发一个带有 Angular 的前端应用程序和一个带有 Asp.Net Core 的后端,其中包含用于身份验证的 IdentityServer4 (基于此github项目 https://github.com/IdentityServer/IdentityServer4.Samples/tree/release/Quickstarts/Combined_AspNetIdentity_and_EntityFrameworkStorage).
目前我正在登录IdentityServer的登录页面,但我想使用Angular开发的自定义登录页面而不是使用IdentityServer的登录页面,而是使用AccountController的登录服务。
我可以通过 Angular 应用程序的 http 请求调用此服务,但无法获取由 Angular 应用程序生成的访问 jwt 令牌_signInManager.PasswordSignInAsync功能。这可能吗?我一直在寻找,但没有找到明确的解决方案。
你必须问自己一些事情。你真的需要 IdentityServer 吗?您需要单独的登录申请吗?
一个有效的答案是如果您需要它进行 SSO。因为您可以完美地将整个快速入门模板从 ASP.Net MVC 更改为 Angular 前端和 webapi。
但我有一种感觉,您希望将登录页面与应用程序前端集成。从 OAuth 的角度来看,这没有多大意义。因为 idsrv 被构建为一个单独的应用程序。
例如,Google 登录页面位于一个单独的域中,因此其他应用程序(例如 Stackoverflow)使用该页面来检查您是否已通过身份验证。如果您再次将此功能移至应用程序(在本例中为 Stackoverflow),您将一无所获。
您当然可以使用PasswordCredential 流程。但是,如果您只有一个应用程序,那么您可能只使用身份服务器来生成 JWT。而且您可以更简单地做到这一点。
那么您能否提供有关您的架构的更多信息?
(这应该是一个问题而不是答案,但太长了......)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)