Springに関するチュートリアルを見つけましたREST Service OAuth on https://github.com/royclarkson/spring-rest -service-oauth
しかし、データベースに保存されているクライアントをどのように構成すれば、簡単に管理できるのでしょうか。チュートリアルのクライアント構成では、クラスOAuth2ServerConfiguration.JavaでinMemoryを保存します
@Override
public void configure(ClientDetailsServiceConfigurer clients)
throws Exception {
// @formatter:off
clients.inMemory().withClient("clientapp")
.authorizedGrantTypes("password", "refresh_token")
.authorities("USER").scopes("read", "write")
.resourceIds(RESOURCE_ID).secret("123456");
// @formatter:on
}
私はこれがあなたが探している答えだと信じています:
これは、JDBC用のSpring-oAuthImplクラスです。
HTH
@OhadRご回答ありがとうございます。本当に感謝しています!
私は実際にこのスレッドを通して答えを見つけました: JdbcデータストアをClientDetailsServiceに割り当てるときのSpringAuthorizationServerConfigurerAdapterのエラー
これを行うには、2つのステップだけが必要です。
CREATE TABLE oauth_client_details (
client_id VARCHAR(256) PRIMARY KEY,
resource_ids VARCHAR(256),
client_secret VARCHAR(256),
scope VARCHAR(256),
authorized_grant_types VARCHAR(256),
web_server_redirect_uri VARCHAR(256),
authorities VARCHAR(256),
access_token_validity INTEGER,
refresh_token_validity INTEGER,
additional_information VARCHAR(4096),
autoapprove VARCHAR(256)
);
DataSource dataSource = DataSourceBuilder.create()
.driverClassName("com.mysql.jdbc.Driver")
.url("jdbc:mysql://localhost:3306/gsrestdb").username("***").password("***").build();
clients.jdbc(dataSource);