外部提供程序登录ASP Core,Identity Server 4和Angular 2

时间:2017-08-15 06:29:57

标签: asp.net angular oauth-2.0 .net-core identityserver4

我在Identity Server 4上安装了ASP核心应用程序,为Angular 2 SPA提供基于令牌的身份验证。

要登录,用户名和密码将通过Http Post发送到身份服务器的“/ connect”端点。

我想扩展登录流程以包括外部提供商(谷歌,Facebook和所有),但我可以在网上找到的所有资源都说“帐户控制器”,它位于MVC应用程序内部,我没有。

我已经能够设置此过程的客户端(从Angular SPA上的Google检索用户的id_token),但我不知道如何继续。

我在哪里发送Oauth id_token?我是否使用Extension Grants?怎么样?

请注意,我没有“帐户控制器”类,登录流程由Identity Server完成,JWT将返回到角度应用程序。我需要有关如何获取Oauth id_token的指导或建议,从Google等外部提供商处获取,将其发送到ASP核心后端并为该id_token创建用户,因此当用户从Google登录应用程序时,User对象(Apllication User)是为他取的。

我的设置可以在此代表处找到:https://github.com/robisim74/AngularSPAWebAPI

1 个答案:

答案 0 :(得分:0)

对于外部提供商,您需要所谓的"隐含流" - 那是怎么回事。检查快速入门:

https://identityserver4.readthedocs.io/en/release/quickstarts/4_external_authentication.html