AWS Management Tools – IAM
- Tháng Mười Hai 21, 2020
- Posted by: codestar
- Category: Uncategorized
Giới thiệu
AWS có rất nhiều Management Tools khác nhau, tuy nhiên trong số đó phải kể đến 3 tool phổ biến nhất đó là CloudWatch, CloudTrail và Identity and Access Managemen (IAM).
Ở bài viết này chúng ta sẽ cùng tìm hiểu về IAM.
AWS Identity and Access Management (IAM) là một tính năng được cung cấp miễn phí của tài khoản AWS. Nó cho phép bạn quản lý truy cập vào các dịch vụ và tài nguyên AWS một cách bảo mật. Khi sử dụng IAM, bạn có thể tạo, quản lý người dùng và nhóm AWS, sử dụng các quyền để cho phép và từ chối quyền truy cập vào tài nguyên AWS của họ.
Bạn chỉ phải trả phí cho việc sử dụng các dịch vụ AWS khác bởi các IAM users của bạn.
Chỉ có những tài khoản IAM mà bạn cho phép mới có thể truy cập hoặc có quyền sử dụng tài nguyên mà bạn chỉ định. Mặc định khi đăng ký một tài khoản AWS, tài khoản của bạn là tài khoản root và có quyền cao nhất (Administrator User) với tất cả các tài nguyên trong hệ thống AWS. Tất cả các tài khoản tạo thêm mới mặc định đều không có quyền access vào bất cứ service nào.
Tính năng
- Kiểm soát tập trung tài khoản AWS của bạn
- Chia sẻ quyền truy cập vào tài khoản aws của bạn
- Granular Permissions (Phân quyền chi tiết)
- Identity Federation (nhận dạng liên kết, bao gồm cả Active Directory, Facebook, LinkedIn,…)
- Multi-Factor Authentication (Xác thực đa yếu tố)
- Cung cấp quyền truy cập tạm thời cho người dùng/ thiết bị và các dịch vụ khi cần thiết
- Cho phép bạn thiết lập xoay vòng mật khẩu (password rotation policy) của riêng bạn
- Tích hợp với nhiều dịch vụ AWS khác nhau
- Support PCI DSS Compliance (Payment Card Industry Data Security Standard là một tiêu chuẩn an ninh thông tin bắt buộc dành cho các doanh nghiệp lưu trữ, truyền tải và xử lý thẻ thanh toán quản lý bởi 05 tổ chức thanh toán quốc tế như Visa, MasterCard, American Express, Discover và JCB)
Các thành phần
User
Người dùng cuối, chẳng hạn như nhân viên của một tổ chức,…
Group
Một nhóm người dùng. Mỗi người dùng trong nhóm sẽ kế thừa các permissions (quyền) của nhóm.
Policy
Policy được tạo thành từ các Document, được gọi là Policy Documents. Các tài liệu này được viết với định dạng JSON và chúng cung cấp permission, tức những gì mà User/Group/Role có thể làm.
Role
Bạn có thể tạo các Role và sau đó gán chúng cho các tài nguyên AWS.
Các trường hợp sử dụng
- Kiểm soát quyền truy cập ở mức độ chi tiết vào các tài nguyên AWS
IAM cho phép người dùng của bạn kiểm soát việc truy cập vào các API dịch vụ AWS và các tài nguyên cụ thể. IAM cũng cho phép bạn thêm các điều kiện cụ thể như thời gian trong ngày để kiểm soát một người dùng có thể dùng AWS như thế nào trong ngày, địa chỉ IP gốc của họ, họ có dùng SSL hay không, hay họ có xác thực bằng thiết bị xác thực đa yếu tố hay không.
- Xác thực đa yếu tố (Multi-Factor Authentication) cho những người dùng có đặc quyền cao
Bảo vệ môi trường AWS của bạn bằng cách sử dụng AWS Multi-Factor Authentication (MFA), một tính năng bảo mật miễn phí có chức năng tăng cường thông tin xác thực tên người dùng và mật khẩu. MFA yêu cầu người dùng phải chứng minh đang có trên tay một thiết bị phần cứng token MFA hoặc một thiết bị di động có MFA bằng cách nhập đúng mã MFA.
- Quản lý kiểm soát truy cập của các ứng dụng di động với Web Identity Providers
Bạn có thể cho phép các ứng dụng di động và ứng dụng dựa trên trình duyệt truy cập bảo mật vào các tài nguyên AWS bằng cách yêu cầu thông tin xác thực bảo mật tạm thời cấp quyền truy cập chỉ cho các tài nguyên AWS cụ thể trong một khoảng thời gian có thể cấu hình.
- Tích hợp với danh bạ của công ty
Bạn có thể sử dụng IAM để cấp cho nhân viên và ứng dụng quyền truy cập liên kết vào Bảng điều khiển quản lý AWS và API dịch vụ AWS, thông qua các hệ thống định danh có sẵn của bạn như Microsoft Active Directory. Bạn có thể dùng bất kỳ giải pháp quản lý định danh nào hỗ trợ SAML 2.0 hoặc có thể dùng một trong những mẫu liên kết của chúng tôi (SSO Bảng điều khiển AWS hoặc Liên kết API).
Cách thức hoạt động
Sau khi tạo tài khoản và vào service IAM, bạn sẽ thấy có một số Security Status chưa được thiết lập, ví dụ như Activate MFA, Create individual IAM users,…
MFA
MFA (Multi-Factor-Authentication) là xác thực 2 lớp mà các bạn thường thấy ở các giao dịch ngân hàng
- Chọn
Activate MFA on your root account
và clickManage MFA
- Bạn có thể chọn thiết bị active xác thực, như hình mình chọn thiết bị ảo
- Tiếp theo, dùng
Google Authenticator
hoặcAuthy
để scan QR code - Sau khi scan xong sẽ được 2 mã code, bạn nhập vào rồi ấn
Active virtual MFA
để xác nhận
Create individual IAM users: Tạo một tài khoản để sử dụng
Thông thường không bao giờ chúng ta đăng nhập tài khoản root hằng ngày (vì lý do bảo mật), do đó chúng ta nên tạo thêm một IAM user với full quyền AdministratorAccess
- Chọn tab Users và chọn Add User
- Nhập các thông tin cần thiết
- Username: Nhập username. Bạn có thể thêm đồng thời nhiều user
- Access Type: Ở đây có 2 type
Programmatic access
sẽ generate ra Access key ID và secret key cho phép User truy cập đến AWS thông qua các development tools vàAWS management console access
cho phép truy cập giao diện AWS console để quản lý (tương tự root account). Bạn có thể chọn cả 2 type để tăng power cho user.
Apply an IAM password policy
Để tăng mức độ bảo mật thì bạn có thể thêm các rule cho việc đặt password cho các user của mình:
- minimum password length
- pecific charater types and remind your users that password are case sensitive
- change own password
- change password after a specified period oftime
- prevent reusing previous passwords
- contact an account administrator when password to expire
Best Practices
- Xoá AWS Account Root User Access Keys
- Tạo Individual IAM Users
- Cấu hình Password Policy mạnh cho các Users
- Xoay vòng Credentials thường xuyên
- Xóa Credentials không cần thiết
- Kích hoạt MFA cho các users đặc quyền
- Sử dụng Groups để gán Permissions cho các IAM Users
- Sử dụng AWS Defined Policies để gán Permission bất cứ khi nào có thể
- Sử dụng Policy Conditions để bảo mật hơn
- Cấp đặc quyền tối thiểu
- Sử dụng các cấp truy cập để review lại IAM permissions
- Sử dụng Roles để delegate Permissions
- Giám sát hoạt động trong tài khoản của bạn
Nguồn tham khảo: https://aws.amazon.com/vi/iam/
https://www.whizlabs.com/learn/course/aws-csaa-practice-tests