Tông chủ là kẻ nắm Root User (Khởi Nguyên Chân Khí) tuyệt đối. Nhưng khi tông môn lớn lên, nếu giao Khởi Nguyên Chân Khí cho đệ tử, ngày mai tông môn có thể bị bán cho Ma Tộc đào Bitcoin.
Khi tông môn (AWS Account) mới khai sinh, Tông chủ nắm giữ Root User có quyền lực vô song. Tuy nhiên, đệ tử gia nhập ngày càng nhiều để san sẻ công việc.
Nếu đưa chiếc chìa khóa tối cao cho đệ tử quét dọn hay bảo vệ, nguy cơ bị cướp đoạt hoặc phá hoại là cực lớn. Lúc này, Tông chủ phải mở cuốn pháp điển mang tên IAM (Identity and Access Management - Quản Lý Định Danh và Quyền Truy Cập) ra để định đoạt cương giới.
Để thiết lập trật tự không một kẽ hở, IAM cung cấp 4 đại pháp cụ:
- 🧑💻 1. Đệ Tử (IAM User): Danh tính thực sống cố định, được cấp ấn chú riêng (Password/Access Keys) để gõ cửa tông môn hàng ngày.
- 👥 2. Phân Đường (IAM Group): Quản lý tập thể. Lập ra phân đường (ví dụ: Đường quét rác), đưa 100 đệ tử vào và cấp quyền chung. Một đệ tử rời nhóm, quyền tự thu hồi.
- 📜 3. Thánh Chỉ (IAM Policy): Những tờ sớ ghi rõ phán quyết sinh tử: Ai? Được làm gì? Với pháp bảo nào? Viết bằng JSON.
- 🎭 4. Mặt Nạ Tiên Nhân (IAM Role): Pháp cụ vi diệu nhất. Không có mật khẩu cố định. Khi người hoặc linh thú EC2 được phép đeo mặt nạ, họ mượn sức mạnh tạm thời rồi cởi trả lại sau khi hoàn thành.
Để ban quyền, Tông chủ phải dùng bùa chú JSON để viết Thánh Chỉ (Policy). Một tờ bùa chú luôn có 3 phần máu thịt:
- Effect (Phán Quyết): Hoặc
Allow(Cho phép) hoặcDeny(Cấm đoán). - Action (Hành Động): Cho phép xuất chiêu thức gì? Ví dụ:
s3:GetObject(Lấy đồ). - Resource (Mục Tiêu): Chiêu thức được đánh vào đâu? Ví dụ:
arn:aws:s3:::kho-chua-bi-kip-vo-cong/*.
Ý nghĩa tờ sớ: "Cho phép lấy đồ trong Kho Bí Kíp. Cấm bỏ thêm đồ vào, cấm đốt kho."
Tình huống: Một con linh thú EC2 (nơi chạy App) cần vào Tàng Kinh Các (S3) để lấy ảnh của khách nhân.
❌ Kẻ ngu muội (Bad Practice): Viết tên và mật khẩu (Access Key) của một Đệ Tử dán thẳng lên trán con linh thú (Hardcode in Source Code). Nếu linh thú bị giặc bắt, mật khẩu lộ, tông môn toang!
✔️ Đại Năng IAM (Best Practice): Tạo ra một chiếc Mặt Nạ (IAM Role) có quyền vào S3. Giao mặt nạ đó cho con linh thú đeo. Khi linh thú chạy, nó "nhập hồn" vào mặt nạ, mượn sức mạnh để vào S3. Lấy ảnh xong, không có mật khẩu nào được lưu lại trên linh thú. Giặc bắt được linh thú cũng chỉ thu được cái xác không hồn.
| Tiêu chí | 🧑💻 Đệ Tử (IAM User) | 🎭 Mặt Nạ (IAM Role) |
|---|---|---|
| Bản chất | Một thực thể sống lâu dài | Một lớp vỏ bọc tạm thời |
| Bảo mật | Dùng Password / Access Key cố định | Không mật khẩu, sinh Token sống vài giờ |
| Đối tượng sử dụng | Người thật (Dev, Admin, Operator) | Hệ thống (EC2, Lambda) hoặc Người ngoại bang |
| Tính chia sẻ | Tuyệt đối không chia sẻ mật khẩu | Ai được phép đều có thể mượn mặc lên người |
- 1. Quy Tắc Giấu Nghề (Principle of Least Privilege): Đệ tử cần quét rác thì chỉ phát cho cái chổi. Tuyệt đối không phát thêm cây đao đề phòng khi nó rảnh. Chỉ cấp quyền vừa đủ để hoàn thành công việc.
- 2. Đa Trùng Phong Ấn (MFA - Multi-Factor Authentication): Tên và mật khẩu có thể bị nhìn trộm. Muốn vào Cấm Địa, ngoài việc đọc mật khẩu, còn phải lấy Điện Thoại Phàm Nhân ra bấm 6 con số sinh ra thay đổi mỗi 30 giây.
- 3. Ngủ Đông Khởi Nguyên (Khóa Chặt Root User): Tài khoản Root sinh ra để tạo Tông môn. Tạo xong, thiết lập MFA cho Root, vứt chìa khóa vào két sắt, khóa lại và quên nó đi. Tuyệt đối không dùng Root hàng ngày.
Kỷ luật sắt và bảo mật nghiêm minh làm nên một tông môn trường sinh bất tử trên Tiên giới AWS.
Quyền lực vừa đủ, phong ấn tối đa, ngủ đông khởi nguyên chính là chìa khóa.