Cấp quyền theo từng bucket cho SubUser
Bucket Policy giúp mỗi SubUser chỉ truy cập được đúng các bucket cần thiết. Cần dùng Bucket Policy vì vai trò của SubUser áp dụng cho mọi bucket trong tài khoản: SubUser có vai trò Read đọc được tất cả bucket.
Ví dụ: bạn có ba bucket bucket-1, bucket-2, bucket-3, và muốn mỗi SubUser trong ba SubUser chỉ truy cập được một bucket.
Yêu cầu trước khi bắt đầu
- Tài khoản FPT Cloud đã bật Object Storage, trên cluster khác HCM-04. Trên HCM-04, dùng IAM User.
- Các bucket đã được tạo trong cùng một Region.
Cấp quyền
-
Tạo từng SubUser với vai trò None, để mặc định SubUser không truy cập được bucket nào. Xem Quản lý SubUser.
-
Với mỗi bucket, thêm Bucket Policy cho phép SubUser sử dụng bucket đó. Xem Cấu hình Bucket Policy.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws:iam::SUBUSER_ACCOUNT_ID:user/SUBUSER_NAME"]
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::YOUR_BUCKET_NAME",
"arn:aws:s3:::YOUR_BUCKET_NAME/*"
]
}
]
}Trường Ý nghĩa VersionPhiên bản ngôn ngữ policy, thường là 2012-10-17.EffectAllowhoặcDeny.PrincipalSubUser được cấp quyền. Thay SUBUSER_ACCOUNT_IDvàSUBUSER_NAMEbằng thông tin của SubUser.ActionCác action được phép. s3:*cho phép mọi action; liệt kê action cụ thể nhưs3:GetObjectđể cấp ít quyền hơn.ResourceBucket và toàn bộ object trong bucket. -
Tạo Access Key cho từng SubUser và cung cấp cho người hoặc ứng dụng sử dụng.
Giờ đây, mỗi SubUser chỉ truy cập được bucket có policy khai báo SubUser đó.