2014-07-27 46 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

相关问题