Keycloak:如何使用Google验证用户身份

时间:2019-03-30 21:16:20

标签: oauth-2.0 google-oauth openid-connect keycloak

我正在创建iOS应用程序,希望用户能够使用用户名/密码,Google和Facebook登录。

我成功使用OAuth2帮助程序实现了用户名和密码流的身份验证。但是当我开始实施Google / Facebook身份验证流程时,我遇到了一个问题。

问题是我不知道如何设计该流程并在Keycloak中实现它。

我希望它像这样:

  
      
  1. 用户按下按钮即可登录Google
  2.   
  3. 请求进入Keycloak
  4.   
  5. Keycloak将其重定向到Google
  6.   
  7. 用户在Google的提示页面上确认访问权限
  8.   
  9. Google的回复返回给Keycloak
  10.   
  11. Keycloak解析令牌,获取用户信息,并将其与Keycloak自己的数据库中的现有用户进行匹配。
  12.   
  13. Keycloak返回它自己的令牌(不是Google的令牌)
  14.   

我认为,可以通过某种方式使用Open-ID Connect协议来实现,但是没有意识到。

我已经知道,将用户重定向到Keycloak页面(http://localhost:18080/auth/realms/master/protocol/openid-connect/auth?client_id=<some client id>)可以很容易地做到这一点,他可以像上面提到的那样输入其凭据或使用Google登录。但这不能满足我的需求,因为我想以iOS风格(swift,对用户透明)进行操作,而无需重定向到Keycloak。

我想找到一些实现此目的的RESTful方法。请提出一些实现此目标的良好做法。

谢谢

0 个答案:

没有答案