我正在开发一个项目,我们为Azure Service Fabric中托管的后端提供了Vue.js前端和微服务架构。
我们不想使用IdentityServer4添加IdentityService进行身份验证。我们想要实现的是一个与stackoverflow提供的登录基本相同的登录:您可以使用嵌入式登录登录网站,也可以使用Google和Facebook等外部提供商。
我的问题只涉及嵌入式登录。我读过使用PKCE授权代码授权的文章是我方案中的最佳方式。此外,他们说,不应使用Ressource Owner Password Grant。但据我所知,通过此流程,无法将登录信息嵌入我们自己的网站。它始终是IdentityService的重定向。
Stack Overflow如何实现这一目标?他们是否使用资源所有者密码授予?
谢谢!
首先,我欢迎您检查Stackoverflow(SO)如何处理其用户注册过程。
SO允许您三种选择。通过Google,Facebook登录或直接注册到SO。当有人使用Google或Facebook时,SO会使用授权代码流。用户被重定向到相应的登录页面。一旦您登录,SO就会从这些身份提供商处收到用户个人资料详细信息,从而允许他们完成个人资料并登录用户。
但是当有人使用内置的注册页面时,它只是很好的旧注册页面。那里没有OAuth。因此,获取最终用户凭据,完成配置文件并将其保存在后端。
在您的方案中,您也可以省略OAuth并使用内置注册或登录页面。唯一关心的是最终用户凭证的维护负担。