| name | aws-iam |
| description | Manage AWS IAM users, roles, groups, and policies without MCP. Use when the user asks to list users, create roles, attach policies, manage access keys, or check IAM permissions. |
AWS IAM Management / AWS IAM ๊ด๋ฆฌ
MCP ์์ด boto3/CLI๋ก ์ง์ IAM์ ๊ด๋ฆฌํฉ๋๋ค.
When to Use / ์ฌ์ฉ ์์
- "IAM ์ฌ์ฉ์ ๋ชฉ๋ก ๋ณด์ฌ์ค" / "Show IAM users"
- "์ญํ ๋ง๋ค์ด์ค" / "Create a role"
- "์ ์ฑ
์ฐ๊ฒฐํด์ค" / "Attach a policy"
- "์ก์ธ์ค ํค ๊ด๋ฆฌ" / "Manage access keys"
Available Operations / ์ฌ์ฉ ๊ฐ๋ฅํ ์์
Users / ์ฌ์ฉ์
aws iam list-users
aws iam get-user --user-name <USERNAME>
aws iam create-user --user-name <USERNAME>
aws iam delete-user --user-name <USERNAME>
import boto3
iam = boto3.client('iam')
iam.list_users()
iam.get_user(UserName='username')
iam.create_user(UserName='username')
Roles / ์ญํ
aws iam list-roles
aws iam create-role --role-name <ROLE_NAME> \
--assume-role-policy-document file://trust-policy.json
import json
trust_policy = {
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Principal": {"Service": "lambda.amazonaws.com"},
"Action": "sts:AssumeRole"
}]
}
iam.create_role(
RoleName='my-role',
AssumeRolePolicyDocument=json.dumps(trust_policy)
)
Policies / ์ ์ฑ
aws iam list-policies --scope Local
aws iam get-policy-version --policy-arn <ARN> --version-id v1
aws iam attach-user-policy --user-name <USER> --policy-arn <ARN>
aws iam attach-role-policy --role-name <ROLE> --policy-arn <ARN>
iam.attach_user_policy(UserName='user', PolicyArn='arn:aws:iam::aws:policy/ReadOnlyAccess')
iam.attach_role_policy(RoleName='role', PolicyArn='arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess')
iam.put_user_policy(UserName='user', PolicyName='my-policy', PolicyDocument=json.dumps(policy_doc))
Groups / ๊ทธ๋ฃน
aws iam list-groups
aws iam create-group --group-name <GROUP>
aws iam add-user-to-group --group-name <GROUP> --user-name <USER>
aws iam attach-group-policy --group-name <GROUP> --policy-arn <ARN>
Access Keys / ์ก์ธ์ค ํค
aws iam create-access-key --user-name <USER>
aws iam delete-access-key --user-name <USER> --access-key-id <KEY_ID>
Policy Simulation / ์ ์ฑ
์๋ฎฌ๋ ์ด์
iam.simulate_principal_policy(
PolicySourceArn='arn:aws:iam::123456789012:user/testuser',
ActionNames=['s3:GetObject', 's3:PutObject'],
ResourceArns=['arn:aws:s3:::my-bucket/*']
)
Notes / ์ฐธ๊ณ
- All commands use the current AWS credentials / ๋ชจ๋ ๋ช
๋ น์ ํ์ฌ AWS ์๊ฒฉ ์ฆ๋ช
์ ์ฌ์ฉํฉ๋๋ค
- IAM is a global service (no region needed) / IAM์ ๊ธ๋ก๋ฒ ์๋น์ค์
๋๋ค (๋ฆฌ์ ๋ถํ์)
- Use
--query with CLI for filtered output / CLI์์ --query๋ก ํํฐ๋ง๋ ์ถ๋ ฅ ์ฌ์ฉ