티스토리 뷰
반응형
import boto3
from botocore.exceptions import ClientError
def attach_policy_to_role(profile_name, role_name, policy_arn):
"""
IAM 역할에 정책을 연결합니다.
:param profile_name: AWS CLI 프로파일 이름
:param role_name: 정책을 연결할 IAM 역할의 이름
:param policy_arn: 연결할 IAM 정책의 ARN
"""
# 지정된 프로파일을 사용하는 세션 생성
session = boto3.Session(profile_name=profile_name)
# 세션에서 IAM 클라이언트 생성
iam_client = session.client('iam')
try:
# IAM 역할에 정책 연결
iam_client.attach_role_policy(
RoleName=role_name,
PolicyArn=policy_arn
)
print(f"Successfully attached policy {policy_arn} to role {role_name} in profile {profile_name}")
except ClientError as e:
print(f"Error attaching policy in profile {profile_name}: {e}")
if __name__ == "__main__":
# 프로파일과 계정 ID의 리스트 정의
account_profiles = [
{"profile_name": "fendys-prod", "role_name": saml_fendys_role", "account_id": "123456789012"}
{"profile_name": "fendys-dev", "role_name": "saml_fendys_role", "account_id": "123456789013"}
# 더 많은 계정을 추가할 수 있습니다
]
# 각 프로파일에 대해 루프 실행
for account in account_profiles:
profile_name = account["profile_name"]
role_name = account["role_name"]
account_id = account["account_id"]
# 연결할 정책의 ARN 동적으로 생성
policy_arn = f"arn:aws:iam::{account_id}:policy/fendys_policy"
print(f"Processing account: {account_id} with profile: {profile_name}")
# 역할에 정책 연결 함수 호출
attach_policy_to_role(profile_name, role_name, policy_arn)
반응형
'AWS' 카테고리의 다른 글
aws update iam policy python (boto3) (0) | 2024.09.02 |
---|---|
aws multi account create iam policy python (boto3) (0) | 2024.09.02 |
aws multi account create iam role python (boto3) (0) | 2024.09.02 |
aws s3 bucket lifecycle set (0) | 2023.07.12 |
install on centos7 + docker +awx 17.1.0 (0) | 2022.06.02 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- cisco ansible
- 특정 문구 치환
- linux command log
- ISCSI 볼륨 RAC
- cmd로 윈도우 계정 관리
- nxos ansible
- ansible ios
- dl20 g9 centos7 설치
- 윈도우 cmd 계정 관리
- nutanix rac
- oracle linux8 kernel
- shell connmad log
- vm rac
- 윈도우서버 계정 관려
- dl20
- cmd로 계정 생성
- dl20 centos7
- ansible network
- chrony
- DL20 GEN9 장비에 CentOS 7
- kernel 변경
- ILO
- ipmi
- cgroup
- CentOS 7 GUI
- centos7 ntp
- 리눅스 커맨드 로그남기기
- 특정 라인삭제
- windows.old 강제삭제
- ios ansible
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함