Spring Boot-Spring SecurityOAuth2でユーザー承認画面をスキップする方法があるかどうかを知りたいだけです。カスタムユーザー承認ハンドラーについて聞いたのですが、それをオーバーライドしてユーザー承認プロセスを無効にし、直接リダイレクトする方法がよくわかりません。
ありがとう
承認をスキップするためにカスタムハンドラーは必要ありません(とにかく2.0以降)。クライアントの詳細のautoApprove
フラグを「true」(または自動承認するスコープパターンのリスト)に設定するだけです。
これは、JHipsterアプリケーションで変更した方法です。
@Override
public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
clients
.inMemory()
.withClient(jhipsterProperties.getSecurity().getAuthentication().getOauth().getClientid())
.autoApprove(true)
.scopes("read", "write")
.authorities(AuthoritiesConstants.ADMIN, AuthoritiesConstants.USER)
.authorizedGrantTypes("password", "refresh_token")
.secret(jhipsterProperties.getSecurity().getAuthentication().getOauth().getSecret())
.accessTokenValiditySeconds(jhipsterProperties.getSecurity().getAuthentication().getOauth().getTokenValidityInSeconds());
}
set propertyauto-approve-scopes: '。*'in application.yml
security:
oauth2:
client:
client-id: acme
client-secret: acmesecret
scope: read,write
auto-approve-scopes: '.*'
参照してください https://spring.io/guides/tutorials/spring-boot-oauth2/#_social_login_authserver