DevOps ngày 9 – Delegate Access Across AWS Accounts Using IAM Roles
devops
30
AWS
28
White

Cường Nguyễn viết ngày 20/10/2019

Chào mừng bạn đến Ngày 9 của 100 Ngày DevOps, Ngày 9 này tiếp tục cuộc hành trình khi nói về Quyền truy cập qua các tài khoản AWS bằng cách sử dụng các vai trò IAM

Problem :

Làm thế nào để quản lý và chia sẻ tài nguyên trong các tài khoản AWS khác nhau, tức là Người dùng trong Tài khoản B (Developer) có quyền truy Read-only vào Nhóm S3 trong Tài khoản A (Prodution).

Solution :

IAM sẽ giúp chúng ta làm việc này , bằng cách thiết lập quyền truy cập nhiều tài khoản với các vai trò IAM khác nhau .

Advantage :

  • Bạn không cần thiết lập người dùng IAM riêng lẻ trong mỗi tài khoản AWS
  • Tiếp đến người dùng không cần phải đăng xuất khỏi một tài khoản này và đăng nhập vào 1 tài khoản khác để truy cập tài nguyên của mình .

Pre-requisites :

  • Bạn cần có hai tài khoản AWS (1 Tài khoản A (Prodution) và 1 Tài khoản B (Developer))
  • 1 AWS S3 Bucket được tạo trong Tài khoản A (Prodution)

*Chúng ta thực hiện cấu hình cho việc này *.

Bước 1 : Tạo Vai trò IAM trong Tài khoản A (Điều này nhằm thiết lập sự tin cậy giữa hai tài khoản)

alt text

  • Để lấy ID tài khoản (Nhấp vào người dùng IAM trên bảng điều khiển và nhấp vào My Account )

alt text

  • Tiếp theo click Create policy và paste đoạn Json bên dưới vào

Lưu ý : Hãy thay đổi Bucket name thành Bucket name mà bạn muốn chia sẻ với Development Account or bạn có thể chọn S3ReadOnlyPolicy

{
   "Version": "2012-10-17",
   "Statement": [
     {
       "Effect": "Allow",
       "Action": "s3:ListAllMyBuckets",
       "Resource": "*"
     },
     {
       "Effect": "Allow",
       "Action": [
         "s3:ListBucket",
         "s3:GetBucketLocation"
        ],
       "Resource": "arn:aws:s3:::bucket name"
     },
     {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject",
        "s3:PutObject",
        "s3:DeleteObject"
      ],
      "Resource": "arn:aws:s3:::bucket name/*"
    }
  ]
}

  • Click Next và đặt Role name

alt text

Bước 2 : Grant Access cho role

  • Di chuyển đến Role vừa mới tao
  • Sau đó click vào Trust relationships vào chỉnh sửa nó
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::XXXXX:root" <----
      },
      "Action": "sts:AssumeRole",
      "Condition": {}
    }
  ]
}

Bước 3 : Test lại bằng cách thực hiện chuyển đổi role

  • hãy quay lại Tab Account nhưng lần này bạn chọn vào Switch Role

alt text

  • Điền đầy đủ các chi tiết vào như bên dưới .

alt text

  • Account: Production / Account A ID
  • Role : Role mà chúng ta đã tạo trong Bước 1: S3ReadOnlyAccesstoDevAccount
  • Display Name : Tên gì mà bạn muốn (Any display name)
  • Switch Role

  • sau khi cấu hình xong bạn sẽ thấy như thế này

alt text

NOTE : không thể chuyển role khi bạn đang signed với tư cách là người dùng root tài khoản AWS.

  • Bây giờ, bạn hãy mở S3 Console và thử truy cập S3 Bucket có trong Tài khoản A Cám ơn các bạn đã quan tâm theo dõi , Chúc các bạn Thành công .

Nguồn : https://techzones.me/devops/devops-ngay-9-delegate-access-across-aws-accounts-using-iam-roles/

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Cường Nguyễn

21 bài viết.
65 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
9 4
Đây là chủ đề mình thích nhất, mỗi tuần mình dành ra 12h rãnh để viết 1 Dockerfile mình thích, sẵn để sau này có mà dùng không phải viết lại hiện ...
Cường Nguyễn viết 8 tháng trước
9 4
White
6 2
Nginx một web services khá mạnh cho hiện tượng C10k . Có rất nhiều cấu hình của nó mà mình đã xem qua . Đa phần sysadmin không tìm hiểu kỹ về nó , ...
Cường Nguyễn viết 1 năm trước
6 2
White
4 2
Vấn đề bảo mật thông tin không chỉ đơn thuần là việc chống lại các cuộc tấn công từ hacker, ngăn chặn malware để đảm bảo thông tin không bị phá hủy...
Cường Nguyễn viết 2 năm trước
4 2
Bài viết liên quan
White
25 2
DevOps6 series NOTE: Đây là Phần 1 trong chuỗi bài viết của mình Ai nên đọc tiếp Nếu anh em là dev muốn sự nghiệp của mình lái nhẹ sang hướng k...
huskykun viết hơn 1 năm trước
25 2
Male avatar
6 5
Nhân tình cờ thấy khoá học này sắp mở trên Udacity 1] và có bạn hỏi mình cần gì để trở thành DevOps thì mình có ghi lại một số suy nghĩ cá nhân bên...
Thang Man viết hơn 4 năm trước
6 5
White
4 2
Như bài viết trước mình đã giới thiệu các anh em về Laradock, một thư viện mạnh mẽ sẽ giúp các anh em rất nhiều trong việc deploy product ( Laravel...
Hùng Phạm viết hơn 1 năm trước
4 2
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
21 bài viết.
65 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!