2014-07-27 51 views
2

我正在使用jasig cas4.0服務器。我已經在我的cas服務器上實現了Facebook oAuth2.0支持,並且它可以正常工作。現在,我想在同一個CAS服務器中添加Google oauth支持(Google2Client)。如何在我的CAS服務器中添加Google OAuth2.0支持

1)I在console.developers.google.com創建了一個新項目時,OAuth的下創建新的客戶端ID與重定向URI來https://rajan.com:1443/cas/login(其實際上指向本地主機)

2)I添加到了我的applicationContext.xml

<bean id="google1" class="org.pac4j.oauth.client.Google2Client"> 
    <property name="key" value="<<CLIENT_ID>>" /> 
    <property name="secret" value="<CLIENT_SECRET" /> 
    <property name="scope" value="email" /> 
    <property name="fields" value="id,name,first_name,middle_name,last_name,gender,email" /> 
</bean> 

我也註冊了這個bean的客戶

<bean id="clients" class="org.pac4j.core.client.Clients"> 
    <property name="callbackUrl" value="https://rajan.com:1443/cas/login" /> 
    <property name="clients"> 
    <list> 
     <ref bean="facebook1" /> 
     <ref bean="google1" /> 

    </list> 
    </property> 
</bean> 

3)最後,我說這casLoginView.jsp

<a href="${FacebookClientUrl}">Authenticate with Facebook</a> <br /> 
<a href="${Google2ClientUrl}">Authenticate with Google</a> <br /> 

但是,當我在瀏覽器中打開CAS登錄查看,對於谷歌在href包含「https://rajan.com:1443/cas/login?service=https%3A%2F%2Frajan.com%3A2443%2FCasClientSimple%2F」,而不是谷歌的Oauth網址。臉書鏈接工作正常。

有人可以幫助我,我在這裏失蹤。 謝謝。

回答

0

我檢查了Google2OauthClient。沒有字段屬性。

所以,只要刪除上面的bean中的字段屬性工作。 我也更改了字段電子郵件EMAIL_AND_PROFILE

相關問題