반응형
역할 전환(Assume Role) 조건
역할 전환(AssumeRole)은 두 가지 조건이 동시에 충족해야 합니다.
1. 사용자의 정책(User Policy) : 내가 특정 역할로 전환할 수 있는 권한이 있어야 함
2. 역할 신뢰 정책(Trust Policy) : 그 역할이 나를 신뢰하고 있어야 함
# 사용자 정책 (User Policy) - 739275444311 계정에 속한 cg-bilbo 사용자
{
"UserName": "cg-bilbo",
"PolicyName": "cg-bilbo-standard-user-assumer",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Resource": "arn:aws:iam::940877411605:role/cg-lambda-invoker*",
"Sid": ""
}
]
}
}
# 역할 신뢰 정책 (Trust Policy) - 940877411605 계정에 속한 cg-lambda-invoker 역할
{
"Role": {
"Path": "/",
"RoleName": "cg-lambda-invoker",
"Arn": "arn:aws:iam::940877411605:role/cg-lambda-invoker",
"CreateDate": "2025-04-11T00:42:13Z",
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::739275444311:user/cg-bilbo"
},
"Action": "sts:AssumeRole"
}
]
}
}
}
예외 사항
역할 전환에 딱 한가지 예외가 있습니다.
아래와 같이 역할과 사용자가 같은 Account에 속해 있는 경우 Trust Policy가 명시적으로 사용자를 신뢰하면
사용자는 sts:AssumeRole 권한이 없어도 역할 전환을 할 수 있습니다.
[역할&사용자가 - 같은 계정( 739275444311 )에 속한 경우]
역할 arn : arn:aws:iam::739275444311:role/cg-lambda-invoker
사용자 arn : arn:aws:iam::739275444311:user/cg-bilbo
예시 - 아래의 조건의 경우에 사용자 정책(User Policy)에 Assume Role 권한이 없어도 역할 전환은 성립됨 (O)
### cg-lambda-invoker 역할은 cg-bilbo 사용자를 명시적(Principal)으로 신뢰하고 있음
{
"RoleName": "cg-lambda-invoker"
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::739275444311:user/cg-bilbo"
},
"Action": "sts:AssumeRole"
}
]
}
}
### cg-bilbo 사용자에게 적용된 User Policy에는 sts:AssumeRole에 대한 권한이 없음
{
"UserName": "cg-bilbo",
"PolicyName": "cg-bilbo-standard-user-assumer",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"iam:Get*",
"iam:List*",
"iam:SimulateCustomPolicy",
"iam:SimulatePrincipalPolicy"
],
"Effect": "Allow",
"Resource": "*",
"Sid": ""
}
]
}
}
내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!
caul334@gmail.com
반응형
'IT > Cloud' 카테고리의 다른 글
[CloudGoat] beanstalk_secrets 문제풀이 Write-up (0) | 2025.04.15 |
---|---|
[CloudGoat] vulnerable_lambda 문제풀이 Write-up (0) | 2025.04.11 |
[CloudGoat] cloud_breach_s3 문제풀이 Write-up (0) | 2025.04.10 |
[CloudGoat] sqs_flag_shop 문제풀이 Write-up (1) | 2025.04.09 |
[CloudGoat] iam_privesc_by_rollback 문제풀이 Write-up (0) | 2025.04.08 |