Tạo IAM Policy

Tạo IAM Policy

Ở phần trước, các policies sẽ được phân thành 5 chức năng khác nhau, nếu muốn, bạn có thể tuỳ ý chỉnh sửa và kết hợp chúng để phù hợp với các yêu cầu thực tiễn mà mình đang hướng tới hoặc muốn áp dụng.

Các bước tạo IAM Policy

  1. Đăng nhập vào AWS Management Console và truy cập đến IAM Management Console.

AWS IAM

  1. Ở thanh điều hướng bên tay trái, chọn Policies và nhấn nút Create policy.

AWS IAM

  1. Ở màn hình tạo mới, chúng ta chọn JSON và điền đặc tả chính sách của mình vào.

    • Trong ví dụ này, chúng ta sử dụng chính sách ec2-list-read
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ec2listread",
            "Effect": "Allow",
            "Action": [
                "ec2:Describe*",
                "ec2:Get*"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestedRegion": [
                        "us-east-1",
                        "us-west-1"
                    ]
                }
            }
        }
    ]
}

AWS IAM

  1. Để cấu hình mặc định. Chọn Next để tiến hành kiểm tra.

AWS IAM

  1. Điền tên cùng với miêu tả cụ thể.

    • Name: ec2-list-read
    • Description: ec2-list-read
    • Tiến hành tạo bằng cách nhấn Create Policy.

AWS IAM

AWS IAM

  1. Tạo Policy thành công.

AWS IAM

Chính sách - ec2-create-tags

  1. Ở thanh điều hướng bên tay trái, chọn Policies và nhấn nút Create policy.

AWS IAM

  1. Ở màn hình tạo mới, chúng ta chọn JSON và điền đặc tả chính sách của mình vào. Trong ví dụ này, chúng ta sử dụng chính sách ec2-create-tags.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ec2createtags",
            "Effect": "Allow",
            "Action": "ec2:CreateTags",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ec2:CreateAction": "RunInstances"
                }
            }
        }
    ]
}

AWS IAM

  1. Chọn Next.

AWS IAM

  1. Thông tin:
    • Name: ec2-create-tags
    • Description: ec2-create-tags
    • Mô tả: Chính sách này sẽ cho phép tạo ra các thẻ dành cho dịch vụ EC2, kèm với điều kiện thực thi là khi chúng ta tiến hành tạo một EC2 instance.

AWS IAM

  1. Tiến hành tạo bằng cách nhấn Create Policy.

AWS IAM

  1. Tạo Policy thành công.

AWS IAM

Chính sách - ec2-create-tags-existing

Thông tin:

  • Name: ec2-create-tags-existing
  • Description: ec2-create-tags-existing
  • Mô tả: Chính sách này cho phép user gán thẻ cho các tài nguyên thuộc dịch vụ EC2 khi thỏa cả ba điều kiện:
    • Thẻ được gán trên tài nguyên EC2 là cặp giá trị “Key=Team,Value=Alpha”
    • Tag key được gán của tài nguyên EC2 bao gồm Team và Name
    • Thẻ được yêu cầu gán phải là cặp giá trị “Key=Team,Value=Alpha”
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "ec2createtagsexisting",
      "Effect": "Allow",
      "Action": "ec2:CreateTags",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:RequestTag/Team": "Alpha"
        },
        "ForAllValues:StringEquals": {
          "aws:TagKeys": [
            "Team",
            "Name"
          ]
        }
      }
    }
  ]
}

AWS IAM

AWS IAM

AWS IAM

AWS IAM

AWS IAM

Chính sách - ec2-run-instances

Thông tin:

  • Name: ec2-run-instances
  • Description: ec2-run-instances
  • Mô tả: Chính sách này sẽ được chia làm 2 phần:
  • Phần đầu tiên: Cho phép tạo ra EC2 instance khi và chỉ khi các điều kiện về AWS RegionsResource Tags được thoả mãn.
  • Phần còn lại: Cho phép tạo ra các tài nguyên liên quan tại thời điểm chúng ta tiến hành tạo EC2 instance, kèm với điều kiện về AWS Regions.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ec2runinstances",
            "Effect": "Allow",
            "Action": "ec2:RunInstances",
            "Resource": "arn:aws:ec2:*:*:instance/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestedRegion": [
                        "us-east-1",
                        "us-west-1"
                    ],
                    "aws:RequestTag/Team": "Alpha"
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "Name",
                        "Team"
                    ]
                }
            }
        },
        {
            "Sid": "ec2runinstancesother",
            "Effect": "Allow",
            "Action": "ec2:RunInstances",
            "Resource": [
                "arn:aws:ec2:*:*:subnet/*",
                "arn:aws:ec2:*:*:key-pair/*",
                "arn:aws:ec2:*::snapshot/*",
                "arn:aws:ec2:*:*:launch-template/*",
                "arn:aws:ec2:*:*:volume/*",
                "arn:aws:ec2:*:*:security-group/*",
                "arn:aws:ec2:*:*:placement-group/*",
                "arn:aws:ec2:*:*:network-interface/*",

                "arn:aws:ec2:*::image/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestedRegion": [
                        "us-east-1",
                        "us-west-1"
                    ]
                }
            }
        }
    ]
}

AWS IAM

AWS IAM

AWS IAM

AWS IAM

AWS IAM

Chính sách - ec2-manage-instances

Thông tin:

  • Name: ec2-manage-instances
  • Description: ec2-manage-instances
  • Mô tả: Chính sách này cho phép thực hiện những thao tác cơ bản (reboot, terminate, start, stop) đối với EC2 instances, kèm với điều kiện AWS Regions và Resource Tags phải được thoả mãn.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ec2manageinstances",
            "Effect": "Allow",
            "Action": [
                "ec2:RebootInstances",
                "ec2:TerminateInstances",
                "ec2:StartInstances",
                "ec2:StopInstances"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ec2:ResourceTag/Team": "Alpha",
                    "aws:RequestedRegion": [
                        "us-east-1",
                        "us-west-1"
                    ]
                }
            }
        }
    ]
}

AWS IAM

AWS IAM

AWS IAM

AWS IAM

AWS IAM

Sau khi hoàn tất, bạn sẽ có 5 EC2 policies như dưới đây:

AWS IAM