View a markdown version of this page

OAuth 2.0으로 로그인 - AWS 로그인

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

OAuth 2.0으로 로그인

OAuth 개요

AWS Sign-In 업계 표준 OAuth 2.0 지원을 통해 에이전트와 애플리케이션은 OAuth 권한 부여를 사용하여 지원되는 AWS 서비스에 액세스할 수 있습니다.

OAuth는 기존 AWS ID 및 권한 부여 모델과 통합됩니다. 애플리케이션은 AWS 로그인을 통해 수명이 짧은 OAuth 토큰을 얻습니다. OAuth 토큰은 기존 IAM 자격 증명, 정책, 서비스 제어 정책(SCPs), 리소스 제어 정책(RCPs) 및 기타 AWS 권한 부여 제어와 함께 작동합니다. OAuth는 리소스에 대한 AWS 액세스 관리 방식을 변경하지 않고 표준 기반 권한 부여 모델을 도입합니다.

AWS 로그인을 사용하면 브라우저를 통해 애플리케이션을 승인하거나(대화형) 기존 AWS 자격 증명이 있는 애플리케이션이 프로그래밍 방식으로(비대화형) OAuth 액세스 토큰을 얻을 수 있습니다.

지원되는 기능

AWS 로그인은 다음과 같은 OAuth 기능을 제공합니다.

기능 설명
대화형 권한 부여 사용자를 위한 브라우저 기반 OAuth 권한 부여.
비대화형 권한 부여 브라우저 없이 기존 AWS 자격 증명을 사용하는 에이전트 및 애플리케이션에 대한 OAuth 권한 부여.
토큰 관리 액세스 및 새로 고침 토큰을 발급 및 내부 검사하고 새로 고침 토큰을 취소합니다.
동적 클라이언트 등록 AWS Sign-In을 사용하여 승인된 OAuth 호환 애플리케이션을 등록합니다.
IAM 통합 IAM 권한, 리소스 및 조건 키를 사용하여 OAuth 권한 부여를 관리합니다.
CloudTrail 통합 를 사용하여 OAuth 권한 부여 및 토큰 수명 주기 이벤트를 감사합니다 AWS CloudTrail.

OAuth 작동 방식

AWS 로그인 시 OAuth 권한 부여는 OAuth 2.0 표준을 따릅니다.

  1. 에이전트 또는 애플리케이션이 지원되는 AWS 서비스에 액세스하기 위한 권한 부여를 요청합니다.

  2. AWS 로그인은 사용자를 인증합니다.

  3. AWS 로그인은 애플리케이션이 사용자를 대신하여 요청된 AWS 서비스에 액세스하도록 승인하는 OAuth 토큰을 발급합니다.

  4. AWS 서비스는 IAM 정책, 서비스 제어 정책(SCPs), 리소스 제어 정책(RCPs), 권한 경계 및 기타 적용 가능한 제어를 포함하여 기존 AWS 권한 부여 모델을 사용하여 모든 요청을 평가합니다.

OAuth 토큰은 애플리케이션이 지원되는 AWS 서비스에 액세스하도록 승인합니다. 추가 AWS 권한을 부여하지 않습니다. 애플리케이션은 인증된 IAM 자격 증명에서 이미 허용된 작업만 수행할 수 있습니다.

권한 부여 모델

AWS 로그인은 두 가지 OAuth 권한 부여 모델을 지원합니다.

대화형 권한 부여

대화형 권한 부여는 브라우저 기반 인증을 사용하는 개발자를 위한 것입니다.

AWS Sign-In은 코드 교환용 증명 키(PKCE)를 사용하여 OAuth 2.1 권한 부여 코드 부여를 적용합니다. 애플리케이션에 인증이 필요한 경우 사용자를 AWS 로그인으로 리디렉션합니다. 여기서 사용자는 인증하고, 권한 부여 요청을 검토하고, 동의를 제공합니다.

권한 부여에 성공하면 AWS 로그인 문제가 발생합니다.

  • 액세스 토큰 - 애플리케이션이 지원되는 AWS 서비스에 액세스할 수 있도록 권한을 부여하는 수명이 짧은 OAuth 토큰(최대 1시간).

  • 새로 고침 토큰 - 사용자가 다시 인증할 필요 없이 새 액세스 토큰을 가져오는 데 사용됩니다. AWS 로그인은 승인된 애플리케이션의 토큰 새로 고침을 자동으로 관리합니다.

대화형 권한 부여는 다음을 지원합니다.

  • IAM 사용자

  • AWS 계정 루트 사용자

  • IAM Identity Center 사용자

  • SAML 및 사용자 지정 자격 증명 브로커 사용자

대화형 권한 부여를 사용하여 에이전트를 연결하는 방법에 대한 연습은 섹션을 참조하세요AWS MCP 서버.

비대화형 권한 부여

비대화형 권한 부여는 이미 AWS 자격 증명을 보유하고 있으며 브라우저 기반 인증을 수행할 수 없는 에이전트 및 애플리케이션을 위한 것입니다.

AWS 로그인은 정적 OAuth 클라이언트 보안 암호 대신 서명 버전 4(SigV4) 보안 인증을 사용하여 AWS OAuth 2.0 클라이언트 보안 인증 권한 부여를 구현합니다. 애플리케이션은 기존 AWS 자격 증명을 사용하여 AWS 로그인 토큰 엔드포인트에 인증하고 지원되는 AWS 서비스에 액세스하는 데 사용할 수 있는 수명이 짧은 OAuth 액세스 토큰을 받습니다.

클라이언트 자격 증명은 액세스 토큰만 발급합니다(새로 고침 토큰 없음). 현재 토큰이 만료되면 새 액세스 토큰을 요청합니다.

비대화형 권한 부여를 사용하여 애플리케이션을 연결하는 방법에 대한 연습은 섹션을 참조하세요AWS MCP 서버.

보안 모델

OAuth 권한 부여는 기존 AWS 보안 모델과 통합됩니다. AWS Sign-In은 다음을 포함한 OAuth별 기능으로이 권한 부여 모델을 확장합니다.

이러한 기능을 통해 관리자는 이미 사용하는 것과 동일한 IAM 권한 부여 모델을 사용하여 OAuth 권한 부여를 관리할 수 있습니다 AWS.

OAuth 엔드포인트

AWS 로그인은 다음과 같은 OAuth 엔드포인트를 제공합니다.

엔드포인트 경로 설명
권한 부여 /v1/authorize 대화형 권한 부여 흐름을 시작합니다.
토큰 /v1/token OAuth 토큰에 대한 권한 부여 코드, 새로 고침 토큰 또는 클라이언트 자격 증명을 교환합니다.
내부 검사 /v1/introspect OAuth 토큰에 대한 메타데이터를 반환합니다.
해지 /v1/revoke 새로 고침 토큰을 취소합니다.
동적 클라이언트 등록 /v1/register AWS Sign-In에 승인된 OAuth 클라이언트를 등록합니다. 허용 목록에 있는 리디렉션 URIs만 허용됩니다.

의 OAuth 흐름에이 리전 엔드포인트를 사용합니다https://{region}.oauth.signin.aws. 가능한 리전 값 목록은 AWS 로그인 엔드포인트의 리전 열을 참조하세요.