Skip to content

Spring Security ‐ Spring Security OAuth 2.0

Woo Jin Jang edited this page Aug 30, 2025 · 6 revisions

📚 OAuth 2.0

  • OAuth = Open + Authorization
  • The OAuth 2.0 Authorization Framework (RFC 6749 : https://ko.wikipedia.org/wiki/RFC)
  • OAuth 2.0 인가 프레임워크는 애플리케이션이 사용자 대신하여 사용자의 자원에 대한 제한된 액세스를 얻기 위해 승인 상호 작용을 함으로써 애플리케이션이 자체적으로 액세스 권한을 얻도록 한다.
  • 즉 사용자가 속한 사이트의 보호된 자원에 대해 애플리케이션의 접근을 허용하도록 승인하는 것을 의미한다.
  • Delegated Authorization Framework : 애플리케이션이 사용자의 데이터에 접근하도록 권한을 부여한다.
스크린샷 2025-08-30 오후 3 12 34

📚 OAuth 2.0 Open Source - KeyCloak

  • ID 및 접근 관리를 지원하는 인가 서버 오픈 소스로 사용자 연합, 강력한 인증, 사용자 관리, 세분화된 권한 부여 등을 제공한다.
  • KeyCloak Download
$ jwj@MacBook-Pro-von-jang-ujin bin % ./kc.sh start-dev
Updating the configuration and installing your custom providers, if any. Please wait.
2025-08-30 15:28:33,822 INFO  [io.quarkus.deployment.QuarkusAugmentor] (main) Quarkus augmentation completed in 2548ms
Running the server in development mode. DO NOT use this configuration in production.
2025-08-30 15:28:35,959 INFO  [org.keycloak.quarkus.runtime.storage.database.liquibase.QuarkusJpaUpdaterProvider] (main) Initializing database schema. Using changelog META-INF/jpa-changelog-master.xml
2025-08-30 15:28:37,313 INFO  [org.keycloak.spi.infinispan.impl.embedded.JGroupsConfigurator] (main) JGroups JDBC_PING discovery enabled.
2025-08-30 15:28:37,445 INFO  [org.infinispan.CONTAINER] (main) ISPN000556: Starting user marshaller 'org.infinispan.commons.marshall.ImmutableProtoStreamMarshaller'
2025-08-30 15:28:37,609 INFO  [org.keycloak.connections.infinispan.DefaultInfinispanConnectionProviderFactory] (main) Node name: node_918170, Site name: null
2025-08-30 15:28:37,691 INFO  [org.keycloak.services] (main) KC-SERVICES0050: Initializing master realm
2025-08-30 15:28:38,687 INFO  [io.quarkus] (main) Keycloak 26.3.3 on JVM (powered by Quarkus 3.20.2.1) started in 4.791s. Listening on: http://0.0.0.0:8080
2025-08-30 15:28:38,687 INFO  [io.quarkus] (main) Profile dev activated. 
2025-08-30 15:28:38,688 INFO  [io.quarkus] (main) Installed features: [agroal, cdi, hibernate-orm, jdbc-h2, keycloak, narayana-jta, opentelemetry, reactive-routes, rest, rest-jackson, smallrye-context-propagation, vertx]

📚 OAuth 2.0 Roles

📚 OAuth 2.0 Client Types

📚 OAuth 2.0 Token Types

📖 Java

📖 Kotlin

📖 Coroutine

📖 Spring

📖 Spring Security

📖 Spring Batch

📖 Reactive Programming

📖 Database

📖 MySQL

📖 Redis

📖 JPA

📖 QueryDsl

📖 MSA

📖 Kafka

📖 Apache Flink

  • [Apache Flink - Apache Flink Architecture]
  • [Apache Flink - Stream Processing]
  • [Apache Flink - Data Stream API & Window]
  • [Apache Flink - State Management]

📖 HTTP

📖 AWS

📖 Docker

📖 Kubernetes

📖 CI/CD

📖 Nginx

📖 Monitoring🥈

  • [Monitoring - Log Concept]
  • [Monitoring - Log Level & Filter]
  • [Monitoring - Logback]
  • [Monitoring - Log Collection with ELK Stack]
  • [Monitoring - Log Monitoring with Kibana]
  • [Monitoring - Building a Monitoring System with Spring Boot Actuator]
  • [Monitoring - Server Monitoring with Prometheus and Grafana with Discord Alerts]

📖 Test

📖 Effective Java 3/E

📖 Kotlin Academy - Effective Kotlin

📖 Kotlin Academy - 핵심편

📖 스프링으로 시작하는 리액티브 프로그래밍

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 1

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 2

📖 Clean Code

📖 리팩토링 2판

📖 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식

📖 GraphQL

Clone this wiki locally