본문 바로가기

스프링시큐리티4

[스프링 부트(SpringBoot) : 고급] 서드파티 서비스 통합 4. 서드파티 서비스 통합 서드파티 서비스 통합에서는 소셜 로그인, 지도 API 및 결제 시스템 통합, 그리고 외부 API 사용 방법을 다룹니다. 이를 통해 스프링 부트 애플리케이션을 다양한 서비스와 쉽게 연동하여 기능을 확장할 수 있습니다. 4.1. 소셜 로그인 통합 소셜 로그인은 사용자가 소셜 계정(Facebook, Google 등)을 사용하여 웹사이트에 로그인할 수 있게 하는 기능입니다. 스프링 부트에서는 스프링 시큐리티(Spring Security)와 OAuth2를 사용하여 소셜 로그인 기능을 구현할 수 있습니다. 예제 코드 // SecurityConfig.java @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigur.. 2023. 5. 6.
[스프링 부트(SpringBoot) : 중급] 스프링 시큐리티를 활용한 보안 강화 5. 스프링 시큐리티를 활용한 보안 강화 5.1. 비밀번호 저장 전략 비밀번호 저장 전략은 사용자의 비밀번호를 안전하게 저장하기 위한 방법입니다. 애플리케이션에 저장되는 비밀번호는 해싱(hash)과 솔트(salt)를 이용하여 암호화되어 저장됩니다. 해싱: 비밀번호를 일정한 길이의 문자열로 변환하는 알고리즘입니다. 해싱을 통해 원본 비밀번호를 유추하기 어렵게 만듭니다. SHA-256, BCrypt, SCrypt 등 다양한 해싱 알고리즘이 존재합니다. 솔트: 해싱 과정에서 사용되는 무작위 문자열로, 같은 비밀번호라도 솔트 값이 다르면 다른 해시 값이 생성됩니다. 이를 통해 무차별 대입 공격(brute force attack)을 방어합니다. 예제 코드 (비밀번호 저장 전략 설정) @Configuration p.. 2023. 5. 5.
[스프링 부트(SpringBoot)] 기본 배포 및 모니터링 9. 기본 배포 및 모니터링 9.1. 실행 가능한 JAR 파일 생성 및 배포 스프링 부트는 실행 가능한 JAR 파일을 생성하여 간단하게 배포할 수 있습니다. 실행 가능한 JAR 파일은 내장된 웹 서버와 함께 애플리케이션을 실행할 수 있는 파일입니다. 이를 통해 복잡한 서버 구성이나 WAR 파일 배포를 생략할 수 있습니다. JAR 파일 생성 프로젝트 루트 디렉토리에서 다음 명령어를 실행하여 실행 가능한 JAR 파일을 생성할 수 있습니다. ./gradlew build 빌드 과정에서는 소스코드의 컴파일, 의존성 라이브러리 관리, 테스트 실행 등 다양한 과정이 수행됩니다. 빌드가 완료되면, build/libs 디렉토리에 실행 가능한 JAR 파일이 생성됩니다. JAR 파일 실행 생성된 JAR 파일을 실행하려면 다.. 2023. 5. 3.
[스프링 부트(SpringBoot)] 간단한 보안 적용 7. 간단한 보안 적용 7.1. 스프링 시큐리티 소개 스프링 시큐리티는 자바 기반의 웹 애플리케이션에서 인증(Authentication)과 인가(Authorization) 기능을 쉽게 구현할 수 있는 프레임워크입니다. 스프링 부트와 함께 사용하면 기본 설정이 자동으로 적용되어 더욱 간편하게 사용할 수 있습니다. 인증은 사용자가 누구인지 확인하는 과정이며, 인가는 사용자가 특정 리소스에 대해 접근 권한이 있는지 확인하는 과정입니다. 7.2. 기본 인증 및 인가 설정 스프링 부트에서 스프링 시큐리티를 사용하려면 먼저 의존성을 추가해야 합니다. pom.xml 파일이나 build.gradle 파일에 다음과 같이 의존성을 추가합니다. org.springframework.boot spring-boot-starter.. 2023. 5. 3.