IDENTITY-based policy gán cho user
, group
, hoặc role
(gọi chung là identity
). Chỉ định những quyền gì mà identity có thể làm
RESOURCE-based policy gán cho resource, ví dụ như S3 bucket, SQS queue, VPC endpooint
Trong tình huống user
không được cấp quyền trên S3 bucket A (không được cấp không đồng nghĩa với việc bị cấm), nhưng resource policy đang gán cho bucket A cho phép mọi user upload vào bucket này, thì user
vẫn có thể upload
Ví dụ, có identity policy
- User A: List, Read trên resource A
- User B: List, Read trên resource B, C
- User C: List, Read, Write trên Resource A,B,C
- User D: Không có policy nào cả
Tiếp đó chúng ta có resource policy
- Resource A: User A = (List, Read), User C = (List, Read)
- Resource B: User B = (List, Write), User D = (List, Read)
- Resouce C: User B = Denied Access, User D: Full Access
Thì kết quả từ 2 policy khi áp dụng sẽ là
LIST | READ | WRITE | DENIED | FULL ACCCESS | |
---|---|---|---|---|---|
User A | RES A | RES A | 🚫 | 🚫 | 🚫 |
User B | RES B | RES B | RES B | RES C | 🚫 |
User C | RES A,B,C | RES A,B,C | RES A,B,C | 🚫 | 🚫 |
User D | RES B | RES B | 🚫 | 🚫 | RES C |
Khi identity-based policy kết hợp với Permission Boundary, lấy phần chung giữa hai tập
Khi Resource-based policy kết hợp với identity-based policy và permission boundary, nó hơi ngoài lề một chút, lấy tất cả những phần chung giữa ba tập hợp cộng với tất cả những gì có trong resource-base policy
Khi kết hợp giữa tập Service Control Policy, Permission boundary và identity-base policy, chúng ta chỉ lấy phần tử chung của cả 3
Tham khảo thêm # Permissions boundaries for IAM entities
Initializing...