AWS IAM 역할과 함께 신뢰 정책을 사용하는 방법 | Amazon Web Services
Truested Relationship을 설정하여, 생성하거나, 생성한 IAM Role이 맡을 수 있는(사용할 수 있는) 주체(Principal)을 정의할 수 있습니다.Truested Relationship 설정 시 Trust Policy에 의해 역할을 맡을 수 있는 서비스를 정의하고, 정의한 내용을 바탕으로 주체가 Assume Role을 맡아 권한을 수행할 수 있습니다.ec2.amazonaws.com 가 등록되어 있어야 합니다.그렇지 않으면 생성한 IAM Role을 EC2 인스턴스에 연결할 수 없습니다.Principal 객체를 설정하여, 사용하여 해당 역할을 맡을 주체를 지정할 수 있습니다.Condition 객체를 설정하여, sts:AssumeRole 작업을 수행할 수 있는 주체의 조건을 지정할 수 있습니다.1. Trust Policy로 등록한 JSON 문서를 작성
tee trust_policy.json << EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
EOF
2. IAM Role을 생성
aws iam create-role \
--role-name lambda-role \
--assume-role-policy-document file://trust_policy.json
3. 생성한 IAM Role을 확인
aws iam list-roles \
| jq -r '.Roles[] | select(.RoleName == "lambda-role" )| {RoleName, AssumeRolePolicyDocument}'
출력{
"RoleName": "ec2-role",
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
}