IT/Spring Boot 9

SAML vs OIDC 차이점

SAML과 OIDC는 모두 싱글 사인온(SSO)을 지원하는 인증 프로토콜이지만, 기술 스택과 사용 목적에 차이가 있음출시 시기2005년2014년기반 기술XMLOAuth 2.0, JSON주 사용 환경전통적인 기업 내부 시스템, 웹 기반 SSO모바일 앱, 웹 애플리케이션, API 인증전송 형식XML (SAML Assertion)JSON (ID Token)복잡성상대적으로 복잡상대적으로 간결보안 토큰SAML AssertionJWT (JSON Web Token)표준 포트주로 브라우저 리다이렉션 사용REST API, OAuth 2.0 기반 요청대표 사례기업용 포털, 온프레미스 시스템구글 로그인, 소셜 로그인, 모바일 앱 인증 기업 내부 시스템 → SAML 선호모바일, API, 소셜 로그인 연동 → OIDC 선호 ..

IT/Spring Boot 2025.06.23

Okta 연동

Okta 기본개념Okta는 클라우드 기반의 아이덴티티 및 액세스 관리(IAM - Identity Access Management) 플랫폼으로, 기업과 조직이 사용자 인증 및 권한 관리를 효율적으로 수행할 수 있도록 지원합니다. Okta는 다양한 기능을 제공하여 기업이 보안과 생산성을 높일 수 있도록 돕습니다. SSO, MFA, LDAP, Active Directory 기능 등을 제공하며, Salesforce, Box 등 많은 기업들에서 Okta SSO 인증 등을 도입하여 사용하고 있습니다. 용어SP (Service Provider): 접속하고자 하는 사이트 (ex. Google). 사용자가 SP에 접근하려고 하면, "인증된" 사용자인지를 확인하기 위해, Idp에 요청을 전송함IdP (Identitiy P..

IT/Spring Boot 2024.08.17

java.lang.ClassCastException: class org.opensaml.xml.schema.impl.XSAnyBuilder cannot be cast to class org.opensaml.core.xml.XMLObjectBuilder (org.opensaml.xml.schema.impl.XSAnyBuilder and org.opensaml.core.xml.XMLObjectBuilder are in unnamed module of loa

Intellij에서 Okta 연동해야되는 부분을 개발하게 되었다. 아래 버전처럼 Spring Boot는 2.5.5버전이고, 이에 맞는 Okta 버전을 연동할 필요가 생겼다.org.springframework.bootspring-boot-starter-parent2.5.5    아래 이미지에서 보는 것처럼, xmtooling과 openws 는 OpenSAML2에 해당되고, OpenSAML3와는 호환되지 않는다는 것을 확인할 수 있다.http://shibboleth.net/pipermail/dev/2019-August/010472.html  먼저 opensaml 2.6.6버전을 삭제해준다.rm -rf ~/.m2/repository/org/opensaml/opensaml/2.6.6    그리고 아래 2개의 라..

IT/Spring Boot 2024.06.04

Server 와 애플리케이션(Application) 시간대 불일치 현상

현상 DB에는 CreatedDt: 2024-01-17로 저장되어 있었으나, 웹서버에서는 CreatedDt: 2024-01-18로 표시되어 시간대 불일치 현상 발생 Frontend 단에서도 아래와 같이 DB에 있는 내용을 그대로 보여주고 있었음 해결책 Server에는 JST application.properties에는 아래와 같이 UTC로 명시되어 있었음 spring.datasource.url=jdbc:mysql://~~~~~~&serverTimezone=UTC 결국 서버시간과 DB시간을 동기화해줌으로써, 문제 해결 완료

IT/Spring Boot 2024.01.18

Intellij Maven 버전 변경하는 방법 (macOS)

Intellij Setting 에서 Maven Home Path에서 직접 경로를 수정해주었음에도, 변경된 버전으로 적용안되는 케이스가 있었다. terminal에서 ./mvnw --version 으로 보면, 새롭게 변경하고자하는 버전이 나오나, mvn -version으로 보면 사용하고자 하지 않는 버전이 출력됐다. 결론은 M2_HOME 경로를 설정해주고, 프로파일에 업데이트해주면된다. vi ~/.zshrc 기존에 위의 사진과 같이 /opt/home/brew/bin 경로에 있는 maven version을 사용하고 있었으나, 새롭게 다운로드 받아준 maven 3.5.4로 경로를 수정하였다. 그리고, Intellij > File > Invalidate Caches로 restart해주면 새롭게 적용하고자 하는 m..

IT/Spring Boot 2024.01.10

dependency 'org.springframework.boot:spring-boot-devtools:' not found

maven - pom.xml에 library를 추가하면, 라이브러리를 별도 다운받지 않고, 사용가능하나, 보통 빨간색으로 highlight 되어 참조못하는 library들이 있다. org.mybatis mybatis 3.2.8 org.springframework.boot spring-boot-devtools 3.1.0 spring-boot-devtools, mybatis등 import시, 빨간색으로 highlighted 되어 참조를 못했는데, 결국 maven을 재설치하고 업데이트하여 해결하였다 아래와 같이 방법을 공유한다. 1. intellij - terminal 접속 brew install mvn 입력하여 mvn 다운로드 2. mvn --version 버전확인 mvn -U clean install 참고..

IT/Spring Boot 2023.11.14