Java源码示例:org.springframework.security.oauth2.client.registration.InMemoryReactiveClientRegistrationRepository
示例1
@Bean
@ConditionalOnProperty(name = AM_TYPE, havingValue = "OAUTH2")
public ReactiveClientRegistrationRepository oauth2ClientRegistrationRepository() {
return new InMemoryReactiveClientRegistrationRepository(
ClientRegistration.withRegistrationId("OAUTH2").
redirectUriTemplate("{baseUrl}/{action}/oauth2/code/{registrationId}").
tokenUri(env.getProperty("am.oauth2.tokenUri")).
authorizationUri(env.getProperty("am.oauth2.authorizationUri")).
userInfoUri(env.getProperty("am.oauth2.userInfoUri")).
userNameAttributeName(env.getProperty("am.oauth2.userNameAttributeName")).
clientId(env.getProperty("am.oauth2.client.id")).
clientSecret(env.getProperty("am.oauth2.client.secret")).
scope(env.getProperty("am.oauth2.scopes", String[].class)).
authorizationGrantType(new AuthorizationGrantType(env.getProperty("am.oauth2.grantType"))).
build());
}
示例2
/**
* Create a {@code ReactiveClientRegistrationRepository} bean for use with an
* OAuth2-enabled {@code ReactiveCredHubTemplate}, in case
* {@link ReactiveOAuth2ClientAutoConfiguration} doesn't configure one.
* @return the {@code ReactiveClientRegistrationRepository}
*/
@Bean
@ConditionalOnMissingBean
@ConditionalOnClass(name = "org.springframework.web.reactive.function.client.WebClient")
public ReactiveClientRegistrationRepository credHubReactiveClientRegistrationRepository() {
List<ClientRegistration> registrations = new ArrayList<>(
OAuth2ClientPropertiesRegistrationAdapter.getClientRegistrations(this.properties).values());
return new InMemoryReactiveClientRegistrationRepository(registrations);
}
示例3
@Bean
AuthorizedClientServiceReactiveOAuth2AuthorizedClientManager reactiveClientManager(
OAuth2ClientProperties properties) {
List<ClientRegistration> registrations = new ArrayList<>(
OAuth2ClientPropertiesRegistrationAdapter.getClientRegistrations(properties).values());
ReactiveClientRegistrationRepository clientRegistrationRepository = new InMemoryReactiveClientRegistrationRepository(
registrations);
ReactiveOAuth2AuthorizedClientService authorizedClientService = new InMemoryReactiveOAuth2AuthorizedClientService(
clientRegistrationRepository);
return new AuthorizedClientServiceReactiveOAuth2AuthorizedClientManager(clientRegistrationRepository,
authorizedClientService);
}
示例4
@Bean
@ConditionalOnMissingBean
@Conditional(ClientsConfiguredCondition.class)
public ReactiveClientRegistrationRepository clientRegistrationRepository(OAuth2ClientProperties properties) {
List<ClientRegistration> registrations = new ArrayList<>(
OAuth2ClientPropertiesRegistrationAdapter
.getClientRegistrations(properties).values());
return new InMemoryReactiveClientRegistrationRepository(registrations);
}
示例5
@Bean
@ConditionalOnProperty(name = AM_TYPE, havingValue = "OIDC")
public ReactiveClientRegistrationRepository oidcClientRegistrationRepository() {
return new InMemoryReactiveClientRegistrationRepository(
ClientRegistrations.fromOidcIssuerLocation(env.getProperty("am.oidc.configuration")).
registrationId("OIDC").
clientId(env.getProperty("am.oidc.client.id")).
clientSecret(env.getProperty("am.oidc.client.secret")).
build());
}