我使用Spring Security與OAuth2進行身份驗證/授權,使用以下項目。 http://projects.spring.io/spring-security-oauth/Spring Security OAuth2 - 將參數添加到授權URL
我有要求將參數添加到OAuth2授權網址。我不知道我應該如何將它添加到AuthorizationCodeResourceDetails bean?
問題是我想通過登錄或從客戶端網站註冊來啓動用戶旅程。客戶端將發送OAuth請求,並在授權服務器上顯示註冊表單或登錄表單,以供用戶繼續其旅程。
默認流只以下參數 /OAuth的/授權?CLIENT_ID = [] & REDIRECT_URI = [] & RESPONSE_TYPE =記號&範圍=的OpenID +輪廓&狀態= HZSMKb
欲追加「&的startPoint =寄存器」
public OAuth2ProtectedResourceDetails googleOAuth2Details() {
AuthorizationCodeResourceDetails googleOAuth2Details = new AuthorizationCodeResourceDetails();
googleOAuth2Details.setAuthenticationScheme(header);
googleOAuth2Details.setClientAuthenticationScheme(header);
googleOAuth2Details.setClientId(clientId);
googleOAuth2Details.setClientSecret(clientSecret);
googleOAuth2Details.setUserAuthorizationUri(authorizationUrl);
googleOAuth2Details.setAccessTokenUri(accessTokenUrl);
googleOAuth2Details.setScope(asList("openid","profile"));
return googleOAuth2Details;
}
@SuppressWarnings("SpringJavaAutowiringInspection") // Provided by Spring Boot
@Resource
private OAuth2ClientContext oAuth2ClientContext;
@Bean
@Scope(value = "session", proxyMode = ScopedProxyMode.INTERFACES)
public OAuth2RestOperations authCodeRestTemplate() {
return new OAuth2RestTemplate(googleOAuth2Details(), oAuth2ClientContext);
}
您嘗試對哪個OAuth提供程序進行身份驗證?並且請張貼一些相關的代碼或者人們會簡單地冷靜下來。 –
我使用spring-security-oauth2作爲提供者。 – itontips
不,你想我的觀點,你想讓你的用戶登錄Google,對嗎? –