Symfony2 - 允许用户使用自己的Google帐户登录

问题描述:

What is the best way to allow user to log in with their own Google account in Symfony2? I know how google API works. But how to implement a custom authentification provider ?

I already read this documention but i don't understand why I have to create a custom user class. I want to fetch user credentials with Google API, test if user email exists in my bdd and then log the user.

Anyone has an idea ?

Thanks a lot

允许用户在Symfony2中使用自己的Google帐户登录的最佳方法是什么? 我知道如何使用Google API有效。 但是如何实现自定义身份验证提供程序? p>

我已经读过这个文档但我不明白为什么我必须创建自定义用户类。 我想使用Google API获取用户凭据,测试我的bdd中是否存在用户电子邮件,然后记录用户。 p>

任何人都有想法? p>

非常感谢 p> div>

I recommend the HWIOAuthBundle - it supports authenication via lots of OAuth providers, including goodle.

A quick example config for google using this bundle would be :

hwi_oauth:
    resource_owners:
        any_name:
            type:                google
            client_id:           <client_id>
            client_secret:       <client_secret>
            scope:               "https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile"

Where <client_id> and <client_secret> are your details.