728x90
반응형
EKS에 띄운 Pod 내에서 여러 role을 ~/.aws/config 파일에 설정하고 profile을 변경하며 작업을 하고 싶어 설정을 해봤습니다.
1. IAM role 생성
- role-service-account
- role-assumed (타 계정)
2. Trust Policy 설정
2-1. role-service-account : OIDC Provider Trust Policy 설정 추가
참고 : https://aws.amazon.com/ko/premiumsupport/knowledge-center/eks-pods-iam-role-service-accounts/
2-2. role-assumed : role-service-account role Trust Policy 설정 추가
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111111111111:role/role-service-account"
},
"Action": "sts:AssumeRole"
}
]
}
3. Service Account 생성
apiVersion: v1
kind: ServiceAccount
metadata:
name: sample-service-account
namespace: sample
annotations:
eks.amazonaws.com/role-arn: arn:aws:iam::111111111111:role/role-service-account
4. Pod 내 ~./aws/config 파일 생성
[default]
role_arn = arn:aws:iam::111111111111:role/role-service-account
web_identity_token_file = /var/run/secrets/eks.amazonaws.com/serviceaccount/token
[profile account02]
role_arn = arn:aws:iam::222222222222:role/role-assumed
source_profile = default
* 영구 사용을 위해서는 Docker Image 빌드 후 Pod를 배포하거나 ConfigMap을 해당 경로(mountPath, subPath)에 마운트하면 됩니다.
5. aws cli 테스트
aws s3 ls --profile account02
728x90
'Cloud & DevOps > AWS' 카테고리의 다른 글
[1주차] S3 취약점 및 보안 (0) | 2023.08.27 |
---|---|
Route53 도메인 구입하기 (0) | 2023.04.21 |
[AWS] S3에 대한 권한은 어떻게 얻을까? (0) | 2022.10.26 |
AWS Site-to-Site VPN 설정 순서 (0) | 2022.06.27 |
Libreswan으로 AWS site-to-site VPN 연결하기 (0) | 2022.05.17 |