반응형
250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- JS
- elasticsearch
- mariadb
- Kibana
- Linux
- logstash
- 엘라스틱서치
- build
- nodejs
- MySQL
- ssh
- 구글
- sample
- MSSQL
- 유니티
- Windows
- Ai
- JavaScript
- error
- Git
- docker
- ChatGPT
- Python
- 설정
- unity
- AWS
- 영어
- API
- s3
Archives
- Today
- Total
가끔 보자, 하늘.
AWS AssumeRole 설정 안될 때.. 본문
An error occurred (AccessDenied) when calling the AssumeRole operation : User: arn:aws:iam::**************:user/ar_user is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::**************:role/test_role
위와 같은 에러는 두 가지 경우에서 발생할 수 있다.
첫 번째는 할당하고자 하는 role 이 없을 때.
에러 메세지가 권한이 없다고 나와서 애매한데 오타 등으로 이름을 잘못 지정하거나 삭제된 role을 할당하려고 할 때 위와 같은 에러를 볼 수 있다.
두 번째는 "신뢰 관계" 설정이 안되어 있을 때.
해당 role 속성 중 "신뢰 관계" 설정이 있는데 간혹 자동 설정된 role을 복사해서 수정/사용하거나 다른 용도로 생성된 role을 할당하려고 할 때 위 에러가 발생할 수 있다. 이렇게 쓰는건 정상적이지 않지만 간혹 생각없이 사용하다가 봉변을 당하기도 한다. 근본적으로는 필요한 권한은 tag를 이용해 철저히 분리/사용하는게 올바른 방법이다.
"신뢰 관계"를 확인해서 아래와 같이 사용하는 계정에 AssumeRole 권한이 허용되어 있는지 확인해보자.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::**********:root"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
없다면 추가/변경하여 사용해보면 됩니다.
아래는 python으로 AssumeRole을 할당을 시도해보는 간단한 예제이다.
import boto3
aws_access_key_id = '**********'
aws_secret_access_key = '************'
client = boto3.client('sts', aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
response = client.assume_role(RoleArn='arn:aws:iam::***********:role/ar-test-role', RoleSessionName='test-role')
print(response['Credentials']['AccessKeyId'], response['Credentials']['SecretAccessKey'])
문제가 있다면 위와 같은 에러가 발생할 것이고, 정상적으로 할당되었다면 임의로 생성된 계정의 AccessKeyId와 SecretAccessKey 값을 확인할 수 있다.
반응형
'개발 이야기 > 인프라 구축 및 운영' 카테고리의 다른 글
systemd 에 서비스 등록 Tip (0) | 2022.03.25 |
---|---|
AWS로 서비스 구축하기 #01 - Jenkins + AWS ECS 로 CD 구축하기 (0) | 2022.03.24 |
Windows에서 jenkins + docker를 이용한 개발용 인프라 자동 구축 (0) | 2022.03.04 |
EC2 인스턴스 관리를 위해 사전 작업들 (0) | 2021.09.08 |
Elasticsearch snapshot - AWS S3 에러 (0) | 2021.06.17 |