[ IAM Conditions ]
명시한 두 아이피 대역을 제외한 모든 클라이언트 호출을 제한함
Deny everything(*)
aws:SourceIP: restrict the client IP from which the API calls are being made
명시한 두개의 region 에게 ec2/rds/dynamodb 의 모든 액션을 허용
aws:RequestedRegion: restrict the region The API calls are made to
restrict based on tags
force MFA
[ IAM for S3 ]
ListBucket permission applies to
arn:aws:s3:::test
=> bucket level permission
GetObject, PutObject, DeleteObject applies to
arn:aws:s3:::test/*
[ IAM Roles vs Resource Based Policies ]
Attach a policy to a resource (ex: S3 bucket policy) vs attaching of a using a role as a proxy
way1. Account A 가 Account B 의 S3 를 사용하려면 STS 를 사용하여 role assume 후 Account B 의 S3 접근
=> When you assume a role (user, application or service), you give up your original permissions and take the permissions assigned to the role
way2. S3 bucket policy 생성 후 Account A 의 액세스를 허용.
=> When using a resource based policy, the principal doesn't have to give up his permissions
way1의 role assume 을 사용할 때의 문제점 :
Account A 의 DynamoDB 테이블 스캔 후 타계정의 S3 bucket 에 저장할 때 Account B의 권한만 갖게 되므로 Account A 의 권한이 없어짐. 이와 같은 경우 Resource Based policy 를 사용해야함.
ex: User in account A needs to scan a DynamoDB table in Account A and dump it in an S3 bucket in AccountB
Resource Based policy Supported by : Amazon S3 buckets, SNS topics, SQS queues
[ IAM Permission Boundaries ]
IAM Permission Boundaries are supported for users, groups and roles
Advanced feature to use a managed policy to set the maximum permissions and IAM entity can get
IAM Policy 로 유저생성 권한을 주었지만 IAM Permission Boundary 로 S3, cloudwatch, ec2 에 대한 권한만 주었기 때문에 실제론 아무 권한이 없음.
=> IAM Policy 로 권한을 부여해도 IAM Permission Boundary 가 우선적으로 권한을 제어
[ IAM Permission Boundaries ]
Can be used in combinations of AWS Organizations SCP
Organizagions SCP , Permissions boundary, Identity-based policy 를 조합하여 효율적인 권한제어 가능
특정 유저에게만 권한 제어 가능, 개발자들이 스스로 admin 권한을 주는 것을 막을 수 있음.. 등등
1. Delegate responsibilities to non administrators within their permission boundaries, for example create new IAM users
2. Allow developers to self-assign policies and manage their own permissions, while making sure they can't escalate their privileges (make themselves admin)
3. Useful to restrict one specific user (instead of a whole account using Organizations & SCP)
[ IAM Policy Evaluation Logic ]
[ Example IAM Policy ]
1.sqs:CreateQueue 권한 없음 : sqs:* 가 Deny
2.sqs:DeleteQueue 권한 없음 : Deny on sqs:* 이로 다른블럭에 allow 로 명시되어 있어도 Deny.
3.ec2:DescribeInstance 권한 없음 : EC2에 대해 Allow 명시되어 있지 않으므로 (no explicit Allow) EC2 에 대한 권한 없음.
'infra & cloud > AWS' 카테고리의 다른 글
[AWS] SSO : Single Sign-On (0) | 2022.05.26 |
---|---|
[AWS] 20-4. Resource Access Manager (0) | 2022.05.26 |
[AWS] 20-2. AWS AD (Active Directory), Organizations, OU (0) | 2022.05.24 |
[AWS] 20-1. AWS STS, Identity Federation (0) | 2022.05.24 |
AWS saml (0) | 2022.05.19 |