스프링 시큐리티

rami·2023년 4월 9일
0

Today I Learned

목록 보기
6/34

스프링 시큐리티는 스프링 프레임워크에서 제공하는 보안 프레임워크로, 웹 애플리케이션의 인증과 권한 부여를 담당합니다.

  • 인증
    인증은 사용자가 누구인지 확인하는 과정으로, 사용자가 입력한 ID와 Password를 검증하거나 sns 계정을 통한 로그인, 인증서를 통한 로그인 등 다양한 방식으로 구현될 수 있습니다. 스프링 시큐리티는 여러가지 인증 방식을 제공하며, 필요에 따라 커스터마이징이 가능합니다.

  • 권한 부여
    권한부여는 인증된 사용자가 특정한 리소스에 접근할 권한이 있는지 여부를 결정하는 과정입니다. 권한 부여는 보통 권한을 가진 사용자에게만 특정한 기능을 제공하거나, 특정한 데이터에 대한 접근 권한을 부여하는 등의 용도로 사용됩니다. 스프링 시큐리티는 권한 부여를 위한 다양한 인터페이스와 기능을 제공합니다.

특징

  • 간단한 설정과 사용이 가능합니다

  • 다양한 인증 방식을 제공하며, 필요에 따라 커스터마이징이 가능합니다.

  • 스프링과 연동이 용이합니다.

  • 세션관리, CSRF 방어, XSS 방어 등 보안을 위한 다양한 기능을 제공합니다.

    • 세션 관리를 통해 인증된 사용자의 상태를 유지하며, 사용자 인증 정보를 암호화하여 보안성을 강화합니다. 스프링 시큐리티는 이와 같은 다양한 보안 기능을 제공하여 웹 어플리케이션의 보안성을 강화할 수 있습니다.
    • CSRF(Cross-site request forgery) 공격은 악의적인 공격자가 인증된 사용자의 권한을 도용하여 비정상적인 요청을 보내는 공격입니다. 이를 방어하기 위해 스프링 시큐리티는 CSRF 토큰을 생성하여 사용자가 요청을 보낼 때 함께 보내도록 합니다. 서버에서는 요청에 대해 해당 CSRF 토큰이 유효한지 검증하여 정상적인 요청인지 판단합니다.
    • XSS(Cross-site scripting) 공격은 악의적인 공격자가 웹 페이지에 악성 스크립트를 삽입하여 사용자 브라우저에서 실행되도록 하는 공격입니다. 이를 방어하기 위해 스프링 시큐리티는 HTML 인코딩 등의 방법으로 입력값에 대한 검증 및 필터링을 수행합니다.
profile
앞으로 나아가는 사람

0개의 댓글