서비스 베어러 토큰
서비스 베어러 토큰 (Service bearer tokens)
일부 AWS 서비스는 그 리소스에 프로그래밍 방식으로 접근하려면 먼저 **AWS STS 서비스 베어러 토큰(service bearer token)**을 받을 수 있는 권한이 있어야 해요. 이런 서비스는 API 요청에 전통적인 AWS Signature Version 4 대신 베어러 토큰을 쓰는 프로토콜을 지원해요. AWS CLI 또는 AWS API에서 베어러 토큰이 필요한 작업을 수행하면, 해당 AWS 서비스가 우리를 대신해 베어러 토큰을 요청해요. 서비스가 토큰을 주면 그 토큰으로 그 서비스의 이후 작업을 수행할 수 있어요.
출처: 문서
본문
AWS STS 서비스 베어러 토큰에는 원래 프린시펄 인증에서 온 정보가 포함되는데, 이 정보가 권한에 영향을 줄 수 있어요. 여기에는 프린시펄 태그, 세션 태그, 세션 정책이 포함될 수 있어요. 토큰의 접근 키 ID는 ABIA 접두사로 시작해요. 이 접두사 덕분에 CloudTrail 로그에서 서비스 베어러 토큰으로 수행된 작업을 식별할 수 있어요.
중요
베어러 토큰은 그것을 생성한 서비스에 대한 호출과, 생성된 리전에서만 사용할 수 있어요. 다른 서비스나 다른 리전의 작업에는 베어러 토큰을 쓸 수 없어요.
베어러 토큰을 지원하는 서비스의 예로 AWS CodeArtifact가 있어요. NPM, Maven, PIP 같은 패키지 매니저로 CodeArtifact와 상호작용하려면 먼저 aws codeartifact get-authorization-token 작업을 호출해야 해요. 이 작업은 CodeArtifact 작업에 사용할 베어러 토큰을 반환해요. 또는 aws codeartifact login 명령을 쓰면 같은 작업을 수행하면서 클라이언트를 자동으로 구성해줘요.
우리를 위해 베어러 토큰을 생성하는 AWS 서비스에서 작업을 수행하려면 IAM 정책에 다음 권한이 있어야 해요.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowServiceBearerToken",
"Effect": "Allow",
"Action": "sts:GetServiceBearerToken",
"Resource": "*"
}
]
}
서비스 베어러 토큰 예시는 AWS CodeArtifact 사용자 가이드의 AWS CodeArtifact용 아이덴티티 기반 정책 사용을 참고하세요.
더 알아보기 (Learn more)
- 임시 보안 자격 증명 — AWS STS의 임시 자격 증명 개념을 확인해 보세요.
- AWS STS와 IAM 비교 — sts:GetServiceBearerToken 같은 STS 작업을 살펴보세요.
- 정책과 권한 — IAM 정책으로 권한을 정의하는 방법을 참고하세요.