Git Product home page Git Product logo

securityboot's Introduction

  1. 토큰기반 인증
    인증에 토큰을 사용하는 방식이다.
    토큰은 클라이언트를 구분하는데 사용하는 유일한 값이다.
    서버에서 생성해서 클라이언트에게 제공한 뒤, 클라이언트는 서버에 요청할 때마다 요청 내용과 함께 토큰을 정송한다.
    서버에서는 토큰으로 유효한 사용자인지 검증한다.
    JWT 통신과정 리프레시 토큰
  2. JWT
    JWT는 토큰 기반 인증에서 주로 사용하는 토큰이다.
    JSON 형식으로 사용자(클라이언트)의 정보를 저장한다.
    JWT는 Header, Payload, Signature 구조로 이루어져 있다.
JWT 구조 설명
Header 토큰 유형과 사용한 서명 알고리즘의 두 부분으로 구성 {
"alg": "HS256",
"typ": "JWT"
}
Payload 사용자 및 추가 데이터에 대한 설명인 Claim을 포함
Payload에는 사용자의 비밀번호와 같은 중요한 정보는 포함시키지 않음
{
"sub": "1234567890",
"name": "John Doe",
"admin": true
}
Signature 토큰이 전달되는 도중에 변경되지 않았는지 확인 HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret)
  1. 리프레스 토큰
    액세스 토큰과 별개의 토큰
    액세스 토큰이 만료되었을때 새로운 액세스 토큰을 발급받는 용도로 사용한다.

  2. 필터
    실제로 요청이 전달되기 전과 후에 URL 패턴에 맞는 요청을 처리하는 기능 제공.

  3. 시큐리티 콘텍스트
    인증 객체가 저장되는 보관소.
    인증정보가 필요할때 언제든지 인증 객체를 꺼내어 사용하도록 제공되는 클래스.
    이러한 시큐리티 컨텍스트 객체를 저장하는 객체가 시큐리티 컨텍스트 홀더이다.

securityboot's People

Contributors

edodo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.