Bài 7: Cách tạo AWS IAM tạo người dùng quản lý AWS Chuyên mục Devops 2023-06-11 330 Lượt xem 52 Lượt thích 0 Bình luận
Video phần 1:
Video phần 2:
IAM là gì?
IAM (Identity and Access Management) 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ọ.
IAM là một tính năng được cung cấp miễn phí của tài khoản AWS. Bạn chỉ phải trả phí cho việc sử dụng các dịch vụ AWS khác bởi người dùng của bạn.
Một vài việc các bạn sẽ thường thao tác trong IAM bao gồm: tạo account, group, role và các IAM access policy.
CHÚ Ý: Khi các bạn tạo một tàI khoản aws, một tàI khoản root user sẽ được tự động tạo ra vớI các thông tin khi bạn tạo tàI khoản aws (email, billing…). TàI khoản root mặc định sẽ có quyền truy cấp tớI tất cả các aws resource, bao gồm billing và tất cả các service. Như vậy tàI khoản root sẽ có thể thực hiện mọI action có thể trong một tàI khoản aws. Các tàI khoản user được tạo mớI sau đó mặc định sẽ không có quyền truy cập tớI bất cứ aws resource nào cả. Bạn sẽ cần phảI tự tay cấp quyền cho các tàI khoản này nếu muốn chúng có thể truy cập được một resource nào đó.
Tác dụng của 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ấp cho người khác quyền quản trị tài nguyên AWS.
- Cấp các quyền khác nhau cho các tài nguyên khác nhau (Amazon S3, Amazon EC2,and other AWS services)...
Truy Cập IAM
Bạn có thể làm việc với AWS Nhận dạng và Quản lý truy cập theo bất kỳ cách nào sau đây.
-
Bảng điều khiển quản lý AWS: Bảng điều khiển là giao diện dựa trên trình duyệt để quản lý tài nguyên IAM và AWS.
-
Công cụ dòng lệnh AWS: Bạn có thể sử dụng các công cụ dòng lệnh AWS để phát lệnh tại dòng lệnh của hệ thống để thực hiện các tác vụ IAM và AWS. Sử dụng dòng lệnh có thể nhanh hơn và thuận tiện hơn so với bàn điều khiển. Các công cụ dòng lệnh cũng hữu ích nếu bạn muốn xây dựng các tập lệnh thực hiện các tác vụ AWS.
-
AWS cung cấp hai bộ công cụ dòng lệnh: Giao diện dòng lệnh AWS (AWS CLI) và Công cụ AWS cho Windows PowerShell.
Tóm tắt như này cho bạn dễ hiểu hơn nè :
Bạn có thể thấy có hại loại access: Programmatic access và AWS Management Console access. Thực ra access type của AWS có thể coi là một chủ để nâng cao thế nên mình sẽ chỉ tóm tắt cho các bạn biết các loại type này là gì vì một số bài viết trong series sẽ có đề cập đến chúng:
- Programmatic access: với những người cần truy cập trực tiếp một resource AWS nào đó thông qua một ứng dụng mà họ đang phát triển hoặc thông qua giao diện dòng lệnh, bạn sẽ cần phải cung cấp cho họ một access key và một secret access key. Chúng là những thông tin đăng nhập đã được mã hóa, cho phép người dùng có thể log in và truy cập các resource AWS mà không cần phải nhập tay một mật khẩu nào đó. Đây là một cách an toàn để một admin hoặc một developer nào đó có được khả năng truy cập các resource AWS mà không thông qua console quản lý của AWS.
- AWS Management Console access: access type này sẽ giúp bạn có thể cho phép một user log in vào console quản lý AWS và qua đó truy cập tới các service AWS.
Tạo IAM và cách sử dụng
1.IAM Users và Policies
Tính huống :
Giả sử trong team của bạn có member Son và bạn muốn Son có thể truy cập bucket S3 thì phải làm như thế nào? Đương nhiên đầu tiên chúng ta cần tạo một tài khoản user cho Son và add policies S3 cho user Son này đúng ko nào ? Hãy cùng xem video để thực hiện nó nhé !
2.IAM Groups và Policies
Chúng ta đã học cách gắn policy cho một user để cấp quyền truy cập cho user đó. Nhưng nếu như chúng ta cần phải cấp quyền truy cập giống nhau cho 20 user hoặc thậm chí là 100 user? Lúc này, để có thể quản lý quyền truy cập một cách hiệu quả thì thay vì phải gắn policy cho từng user, chúng ta có thể tạo một group các user và gắn policy cho group đó.
1 trường hợp mình đặt ra như này để các bạn thực hành nhé :
Giả sử user Son trong group chúng ta vừa tạo cần quyền truy cập tới một resource khác không phải S3 nhưng các user còn lại thì không cần. Lúc này bạn có thể gắn thêm policy trực tiếp cho Son hoặc có thể tạo ra một group khác và add Son vào group đó, rồi tiếp đó gắn policy cho group mới này. Khi đó, Son, những user khác vẫn đều có quyền truy cập giống nhau tới S3, và Son sẽ có thêm các quyền truy cập ở group thứ hai mà chúng ta vừa tạo ra.
Note : Việc tạo group user là một practice được khuyên dùng thay cho việc gắn policy trực tiếp cho từng user.
3.IAM Roles
Không chỉ có các user mới cần truy cập tới các resource AWS. Đôi khi, các service khác của AWS cũng cần truy cập tới các resource khác nhau.
Giả sử, bạn có một ứng dụng chạy trên một server EC2 cần truy cập tới file được lưu ở bucket S3. Có lẽ bạn sẽ nghĩ đơn giản là chúng ta chỉ cần gắn policy cho EC2 để cấp quyền truy cập tới S3. Nhưng thực ra không phải vậy, khác với user hoặc group là các identity, EC2 là một resource nên policy của nó sẽ không dùng để chỉ rõ nó có thể access resouce nào, mà lúc này policy của nó dùng để chỉ rõ những identity nào có thể truy cập tới nó. Do đó AWS có một feature khác là Role, có nghĩa là chúng ta sẽ cần tạo ra một IAM Role để role này có thể cấp quyền truy cập S3 cho EC2.
=> Phần này trong các ví dụn về sử dụng services thì mình sẽ nói chi tiết hơn và thực hành để các bạn hiểu về nó hơn nhé . Thanks
4.Tạo MFA
Các bạn thông cảm cho mình phần này nhé
Bạn có thể thêm xác thực hai yếu tố vào tài khoản của mình và cho từng người dùng để tăng cường bảo mật. Với MFA, bạn hoặc người dùng của bạn không chỉ phải cung cấp mật khẩu hoặc khóa truy cập để hoạt động mà còn phải cung cấp mã từ thiết bị đã được định cấu hình.
Cách để tạo MFA
https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html
5. Cách sử dụng CLI để quản lý
link download CLI aws cho window :
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
Kiểm tra version:
aws --version
Config aws bằng CLI:
aws configure
Sau đó thì các bạn nhập AWS access key và Secret key vào nhé ! Sau đó thì nhập cái region gần bạn nhất nhé ví dụ như là singapore ap-southeast-1
Sau đó thì các bạn thử chạy một lệnh để xem nó có hoạt động chưa nhé !
aws iam list-users
Link doc để thao tác với aws CLI :
https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html
Bình luận (0)