使用Auth0和PHP创建后记录用户

时间:2016-01-19 00:42:56

标签: php symfony hwioauthbundle auth0

我正在使用Auth0进行Symfony2和HWIOAuthBundle的身份验证。

我们的应用程序执行以下操作:

  1. 向新用户发送邀请链接
  2. 用户点击链接并在表格中找到新填写的电子邮件和密码
  3. 提交并验证表单后,我们在Auth0中创建具有所有必要元数据的用户
  4. 用户被重定向到入门游览
  5. 问题在于#4。如何让用户立即登录Symfony应用程序?使用Auth0,我可以调用https://muapp.auth0.com/oauth/ro API端点,它将返回access_token和id_token,但是如何使用它们来触发OAuth流,这样我就可以使用Auth0和我的应用程序对该用户进行适当的身份验证。

1 个答案:

答案 0 :(得分:1)

在重定向网址查询中,oauth服务器应添加AUTHORIZATION_CODE

https://your-oauth-client/callback?code=AUTHORIZATION_CODE

此授权代码证明您的客户端应用程序可能代表用户行事。使用此代码,您的客户端应用程序应该能够从服务器请求ACCESS_TOKEN,其到期和REFRESH TOKEN(使用cURL或类似的东西)。

此请求应如下所示:

https://your-oauth-server/oauth/token?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=CALLBACK_URL

现在客户端应用程序存储ACCESS_TOKEN并将其添加到以下请求的请求标头中。

Authorization:Bearer ACCESS_TOKEN

如果ACCESS_TOKEN已过期,则客户端应用程序应使用REFRESH_TOKEN请求新的。