summaryrefslogtreecommitdiff
path: root/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config
diff options
context:
space:
mode:
authorKamal Wickramanayake <kamal@inbox.lk>2026-07-03 19:02:36 +0530
committerKamal Wickramanayake <kamal@inbox.lk>2026-07-03 19:02:36 +0530
commitaa122113ade36f02dc8fdbebdf1232b5c4b8742c (patch)
treec345b83db6c769bf5e72a09e3f19d43431961695 /microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config
parentb221a83ecef1dd7f9583d5107017d24e668205a6 (diff)
Microservice sample projects
Diffstat (limited to 'microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config')
-rw-r--r--microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/AppConfig.java16
-rw-r--r--microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/SecurityConfig.java27
-rw-r--r--microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/UserProperties.java19
3 files changed, 62 insertions, 0 deletions
diff --git a/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/AppConfig.java b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/AppConfig.java
new file mode 100644
index 0000000..d841104
--- /dev/null
+++ b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/AppConfig.java
@@ -0,0 +1,16 @@
+package com.example.oauth2server.config;
+
+import java.util.List;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+@Component
+@ConfigurationProperties(prefix = "app")
+public class AppConfig {
+ private List<UserProperties> users;
+
+ // Getters and Setters are required
+ public List<UserProperties> getUsers() { return users; }
+ public void setUsers(List<UserProperties> users) { this.users = users; }
+}
diff --git a/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/SecurityConfig.java b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/SecurityConfig.java
new file mode 100644
index 0000000..205ad71
--- /dev/null
+++ b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/SecurityConfig.java
@@ -0,0 +1,27 @@
+package com.example.oauth2server.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.core.userdetails.User;
+import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.provisioning.InMemoryUserDetailsManager;
+
+@Configuration
+public class SecurityConfig {
+ private AppConfig appConfig;
+
+ public SecurityConfig(AppConfig appConfig) {
+ this.appConfig = appConfig;
+ }
+
+ @Bean
+ public UserDetailsService userDetailsService() {
+ InMemoryUserDetailsManager manager = new InMemoryUserDetailsManager();
+
+ appConfig.getUsers().forEach(user -> manager.createUser(User.withUsername(user.getUsername())
+ .password(user.getPassword())
+ .build()));
+
+ return manager;
+ }
+}
diff --git a/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/UserProperties.java b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/UserProperties.java
new file mode 100644
index 0000000..c81a52a
--- /dev/null
+++ b/microservices/01-oauth2-server/src/main/java/com/example/oauth2server/config/UserProperties.java
@@ -0,0 +1,19 @@
+package com.example.oauth2server.config;
+
+public class UserProperties {
+ private String username;
+ private String password;
+
+ public String getUsername() {
+ return username;
+ }
+ public void setUsername(String username) {
+ this.username = username;
+ }
+ public String getPassword() {
+ return password;
+ }
+ public void setPassword(String password) {
+ this.password = password;
+ }
+}