토큰과 관련된 용어들

2024. 10. 8. 15:16·Category/정보처리기사
728x90
  1. Access Token (액세스 토큰):
    • OAuth 2.0에서 사용되며, 인증 후 발급된 토큰입니다. 리소스 서버에 요청할 때 리소스 접근 권한을 증명하는 데 사용됩니다. 이 토큰을 통해 클라이언트는 사용자의 자격 증명 없이 리소스에 안전하게 접근할 수 있습니다.
  2. Refresh Token (리프레시 토큰):
    • Access Token이 만료되었을 때, 새로운 Access Token을 발급받기 위해 사용되는 토큰입니다. 리프레시 토큰은 장기적으로 유효하며, 클라이언트가 다시 로그인하지 않고도 새로운 액세스 토큰을 얻을 수 있게 해줍니다. 주로 OAuth 2.0에서 사용됩니다.
  3. OAuth:
    • Access Token과 Refresh Token 개념을 사용하는 개방형 표준 프로토콜입니다. 사용자 자격 증명 없이 액세스 토큰을 통해 타사 애플리케이션이 사용자 데이터를 안전하게 접근할 수 있게 해줍니다. Facebook, Google 등에서 소셜 로그인 시 액세스 토큰을 사용하여 권한을 부여합니다.
  4. OIDC (OpenID Connect):
    • OAuth 2.0을 기반으로 하여, 사용자 인증을 위한 ID 토큰을 제공하는 프로토콜입니다. ID 토큰을 통해 사용자 정보를 제공하며, 소셜 로그인 등에서 사용자의 신원을 확인하는 데 사용됩니다. 이때 액세스 토큰과 함께 사용됩니다.
  5. JWT (JSON Web Token):
    • 액세스 토큰으로 사용될 수 있는 JSON 기반의 웹 토큰입니다. 클라이언트와 서버 간에 정보를 안전하게 전송하는 데 사용되며, 서명된 형태로 제공되어 위변조를 방지할 수 있습니다. OAuth 2.0 및 OIDC에서 사용될 수 있습니다.

토큰 관련 용어들의 관계

  • OAuth: 권한 부여 프로토콜로, Access Token과 Refresh Token을 통해 안전하게 리소스에 접근할 수 있도록 합니다.
  • OIDC (OpenID Connect): OAuth 2.0을 기반으로 하여, ID 토큰을 추가로 발급하여 사용자 인증을 제공하는 프로토콜입니다.
  • Access Token: 리소스 서버에 접근할 수 있도록 권한을 부여하는 토큰입니다.
  • Refresh Token: Access Token이 만료되었을 때, 새로운 Access Token을 발급받기 위한 토큰입니다.
  • JWT: Access Token과 같은 역할을 할 수 있는 토큰 형식으로, 보안과 무결성을 제공하며, 주로 OAuth에서 사용됩니다.

요약

  • Access Token, Refresh Token, JWT, OIDC, 그리고 OAuth는 모두 토큰을 활용하여 인증과 권한 부여를 처리하는 데 관련된 개념들입니다.
  • OAuth는 Access Token을 사용하여 권한 부여를 처리하고, 필요할 경우 Refresh Token을 통해 새로운 액세스 토큰을 발급받습니다.
  • JWT는 이러한 토큰을 JSON 기반으로 구현한 형식이며, OIDC는 OAuth에 ID 토큰을 추가하여 사용자 인증까지 처리합니다.
728x90

'Category > 정보처리기사' 카테고리의 다른 글

완전수(Perfect Number)란? 6, 28, 496, 8128, ...  (0) 2024.10.08
리눅스(Linux)에서 파일에 권한 부여하는 방법  (0) 2024.10.08
동적 바인딩(Dynamic Binding)이란?  (0) 2024.10.08
포인터(Pointer)란?  (0) 2024.10.08
비트 이동(Shift) 연산이란?  (0) 2024.10.08
'Category/정보처리기사' 카테고리의 다른 글
  • 완전수(Perfect Number)란? 6, 28, 496, 8128, ...
  • 리눅스(Linux)에서 파일에 권한 부여하는 방법
  • 동적 바인딩(Dynamic Binding)이란?
  • 포인터(Pointer)란?
Corinee
Corinee
  • Corinee
    Coding Note
    Corinee
  • 전체
    오늘
    어제
    • 분류 전체보기 (361) N
      • Category (354)
        • Algorithm (7)
        • SQL (2)
        • Java (4)
        • C (9)
        • React (7)
        • JavaScript (9)
        • CSS (2)
        • Node (1)
        • SpringBoot (26)
        • Database (3)
        • Network (1)
        • Django (6)
        • Python (22)
        • Flask (4)
        • iOS (25)
        • Swift (4)
        • Flutter (11)
        • Dart (3)
        • Git (1)
        • Firebase (1)
        • Gof (1)
        • 정보처리기사 (112)
        • AI (5)
        • NestJs (4)
        • Docker (1)
        • 사이드 프로젝트 (1)
        • Note (80)
        • Socket (1)
        • 개인 정보 처리 방침 (1)
        • 면접 (0)
        • Vue.js (0)
      • Archive (2) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    math.h
    mermaid-cli
    소프트웨어 버전 관리
    intellij 콘솔 한글 깨짐
    stdlib.h
    core web vitals
    useEffect
    x.y.z (메이저.마이너.패치)
    json.parse(json.stringify())
    ajax (asynchronous javascript and xml)
    counter
    시맨틱 버전(semantic versioning
    react router
    inp
    named export vs default export
    react
    쉽게 풀어쓴 C언어 Express
    jackson 라이브러리
    chrome extension 자동 배포
    public vs assets
    Collections
    defaultdict
    Jest
    프로세스 강제 종료
    mcp server
    원시값(primitive)
    styled-components
    semver)
    중첩 함수(nested function)
    structuredclone()
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Corinee
토큰과 관련된 용어들
상단으로

티스토리툴바