В моем приложении загрузки Spring я использую google oauth2 для входа пользователей из своей учетной записи gmail. Я получил и установил идентификатор, секрет и область действия клиента, используя данные моей учетной записи и протестировал программу.
Но теперь мне нужно запустить это в отдельной среде, поэтому все жестко закодированные конфигурации должны исчезнуть.
Я добавил идентификатор клиента, seceret и объем в моем application.properties файла следующим образом,
Я установил свойства oauth2 в application.properties, как их использовать в коде?
security.oauth2.client.id= 5******-5**bd***a6.apps.googleusercontent.com
security.oauth2.client.client-secret=m******qb***H
security.oauth2.client.scope[0]=https://www.googleapis.com/auth/admin.directory.user.readonly
Теперь, как использовать эти свойства в моем Java классе. для например
public static String getToken() throws Exception {
String clientId = "5******-5**bd***a6.apps.googleusercontent.com";
String clientSecret = "m******qb***H";
String scope = "https://www.googleapis.com/auth/admin.directory.user.readonly ";
AuthorizationCodeFlow flow=
new AuthorizationCodeFlow.Builder(BearerToken.authorizationHeaderAccessMethod(),
new NetHttpTransport(),
new JacksonFactory(),
new GenericUrl(GoogleOAuthConstants.TOKEN_SERVER_URL),
new BasicAuthentication(clientId, clientSecret),
clientId,
GoogleOAuthConstants.AUTHORIZATION_SERVER_URL)
.setScopes(Collections.singleton(scope)).build();
Я хочу создать класс конфигурации и получить идентификатор, секрет, значение Scope из файла .properties, а затем использовать их здесь. Все это должно быть сделано с использованием Spring не по чтению файла пожалуйста.