

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Berikan izin untuk menggunakan EC2 Instance Connect Endpoint
<a name="permissions-for-ec2-instance-connect-endpoint"></a>

Secara default, entitas IAM tidak memiliki izin untuk membuat, mendeskripsikan, atau memodifikasi Titik Akhir Connect Instance EC2. Administrator IAM dapat membuat kebijakan IAM yang memberikan izin yang diperlukan untuk melakukan tindakan tertentu pada sumber daya yang mereka butuhkan.

Untuk informasi tentang pembuatan kebijakan IAM, lihat [Membuat kebijakan IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) di *Panduan Pengguna IAM*.

Contoh kebijakan berikut menunjukkan bagaimana Anda dapat mengontrol izin yang dimiliki pengguna untuk EC2 Instance Connect Endpoint.

**Topics**
+ [Izin untuk membuat, mendeskripsikan, memodifikasi, dan menghapus EC2 Instance Connect Endpoint](#iam-CreateInstanceConnectEndpoint)
+ [Izin untuk menggunakan EC2 Instance Connect Endpoint untuk menyambung ke instans](#iam-OpenTunnel)
+ [Izin untuk terhubung hanya dari rentang alamat IP tertentu](#iam-sourceip)

## Izin untuk membuat, mendeskripsikan, memodifikasi, dan menghapus EC2 Instance Connect Endpoint
<a name="iam-CreateInstanceConnectEndpoint"></a>

Untuk membuat dan memodifikasi Titik Akhir Connect Instance EC2, pengguna memerlukan izin untuk tindakan berikut:
+ `ec2:CreateInstanceConnectEndpoint`
+ `ec2:CreateNetworkInterface`
+ `ec2:CreateTags`
+ `ec2:ModifyInstanceConnectEndpoint`
+ `iam:CreateServiceLinkedRole`

Untuk mendeskripsikan dan menghapus EC2 Instance Connect Endpoint, pengguna memerlukan izin untuk tindakan berikut:
+ `ec2:DescribeInstanceConnectEndpoints` 
+ `ec2:DeleteInstanceConnectEndpoint`

Anda dapat membuat kebijakan yang memberikan izin untuk membuat, mendeskripsikan, memodifikasi, dan menghapus EC2 Instance Connect Endpoint di semua subnet. Atau, Anda dapat membatasi tindakan untuk subnet tertentu hanya dengan menentukan subnet ARNs sebagai diizinkan `Resource` atau dengan menggunakan kunci kondisi. `ec2:SubnetID` Anda juga dapat menggunakan kunci syarat `aws:ResourceTag` untuk secara eksplisit mengizinkan atau menolak pembuatan titik akhir dengan tanda tertentu. Untuk informasi selengkapnya, lihat [Kebijakan dan izin di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) pada *Panduan Pengguna IAM*.

**Contoh kebijakan IAM**

Dalam contoh berikut kebijakan IAM, `Resource` bagian memberikan izin untuk membuat, memodifikasi, dan menghapus titik akhir di semua subnet, yang ditentukan oleh tanda bintang (). `*` Tindakan API `ec2:Describe*` tidak mendukung izin tingkat sumber daya. Oleh karena itu, wildcard `*` dibutuhkan dalam `Resource`.

## Izin untuk menggunakan EC2 Instance Connect Endpoint untuk menyambung ke instans
<a name="iam-OpenTunnel"></a>

Tindakan `ec2-instance-connect:OpenTunnel` tersebut memberikan izin untuk membuat koneksi TCP ke instans untuk terhubung melalui EC2 Instance Connect Endpoint. Anda dapat menentukan EC2 Instance Connect Endpoint untuk digunakan. Atau, `Resource` dengan tanda bintang (`*`) memungkinkan pengguna untuk menggunakan semua EC2 Instance Connect Endpoint yang tersedia. Anda juga dapat membatasi akses ke instans berdasarkan ada atau tidak adanya tanda sumber daya sebagai kunci syarat.

**Kondisi**
+ `ec2-instance-connect:remotePort`— Port pada instance yang dapat digunakan untuk membuat koneksi TCP. Ketika kunci syarat ini digunakan, percobaan untuk terhubung ke instans pada port lain selain port yang ditentukan dalam kebijakan akan mengakibatkan kegagalan.
+ `ec2-instance-connect:privateIpAddress`— Alamat IP pribadi tujuan yang terkait dengan instance yang ingin Anda buat koneksi TCP. Anda dapat menentukan satu alamat IP, seperti`10.0.0.1/32`, atau rentang IPs melalui CIDRs, seperti`10.0.1.0/28`. Ketika kunci syarat ini digunakan, percobaan untuk terhubung ke sebuah instans dengan alamat IP privat yang berbeda atau di luar rentang CIDR akan mengakibatkan kegagalan. 
+ `ec2-instance-connect:maxTunnelDuration`— Durasi maksimum untuk koneksi TCP yang ditetapkan. Satuannya adalah detik dan durasinya berkisar dari minimal 1 detik hingga maksimum 3.600 detik (1 jam). Jika kondisi tidak ditentukan, durasi default diatur ke 3.600 detik (1 jam). Mencoba terhubung ke instans lebih lama dari durasi yang ditentukan dalam kebijakan IAM atau lebih lama dari maksimum default akan menghasilkan kegagalan. Koneksi terputus setelah durasi yang ditentukan.

  Jika `maxTunnelDuration` ditentukan dalam kebijakan IAM dan nilai yang ditentukan kurang dari 3.600 detik (default), maka Anda harus menentukan `--max-tunnel-duration` dalam perintah saat menghubungkan ke sebuah instans. Untuk informasi selengkapnya tentang terhubung ke instans Anda, lihat [Connect ke instans Amazon EC2 menggunakan EC2 Instance Connect Endpoint](connect-using-eice.md).

Anda juga dapat memberikan akses pengguna untuk membuat koneksi ke instans berdasarkan keberadaan tag sumber daya pada Titik Akhir Connect Instance EC2. Untuk informasi selengkapnya, lihat [Kebijakan dan izin di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dalam *Panduan Pengguna IAM*.

Untuk instance Linux, `ec2-instance-connect:SendSSHPublicKey` tindakan memberikan izin untuk mendorong kunci publik ke sebuah instance. Kondisi `ec2:osuser` menentukan nama pengguna OS (sistem operasi) yang dapat mendorong kunci publik ke sebuah instans. Gunakan nama [pengguna default untuk AMI](connection-prereqs-general.md#connection-prereqs-get-info-about-instance) yang Anda gunakan untuk meluncurkan instance. Untuk informasi selengkapnya, lihat [Berikan izin IAM untuk EC2 instans Connect](ec2-instance-connect-configure-IAM-role.md).

**Contoh kebijakan IAM**

Contoh berikut kebijakan IAM mengizinkan prinsipal IAM untuk terhubung ke instance hanya menggunakan Titik Akhir Connect Instance EC2 yang ditentukan, yang diidentifikasi oleh ID titik akhir yang ditentukan. `eice-123456789abcdef` Koneksi berhasil dibuat hanya jika semua kondisi terpenuhi.

**catatan**  
Tindakan API `ec2:Describe*` tidak mendukung izin tingkat sumber daya. Oleh karena itu, wildcard `*` dibutuhkan dalam `Resource`.

------
#### [ Linux ]

Contoh ini mengevaluasi jika koneksi ke instance dibuat pada —port 22 (SSH), jika alamat IP pribadi instance berada dalam kisaran `10.0.1.0/31` (antara `10.0.1.0` dan`10.0.1.1`), dan kurang dari atau sama dengan detik. `maxTunnelDuration` `3600` Koneksi terputus setelah `3600` detik (1 jam).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "EC2InstanceConnect",
            "Action": "ec2-instance-connect:OpenTunnel",
            "Effect": "Allow",
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{111122223333}}:instance-connect-endpoint/{{eice-123456789abcdef}}",
            "Condition": {
                "NumericEquals": {
                    "ec2-instance-connect:remotePort": "{{22}}"
                },
                "IpAddress": {
                    "ec2-instance-connect:privateIpAddress": "{{10.0.1.0/31}}"
                },
                "NumericLessThanEquals": {
                    "ec2-instance-connect:maxTunnelDuration": "{{3600}}"
                }
            }
        },
        {
            "Sid": "SSHPublicKey",
            "Effect": "Allow",
            "Action": "ec2-instance-connect:SendSSHPublicKey",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ec2:osuser": "{{ami-username}}"
                }
            }
        },
        {
            "Sid": "Describe",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceConnectEndpoints"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

------
#### [ Windows ]

Contoh ini mengevaluasi jika koneksi ke instance dibuat pada port 3389 (RDP), jika alamat IP pribadi dari instance terletak dalam kisaran `10.0.1.0/31` (antara `10.0.1.0` dan`10.0.1.1`), dan kurang dari atau sama `maxTunnelDuration` dengan detik. `3600` Koneksi terputus setelah `3600` detik (1 jam).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Sid": "EC2InstanceConnect",
            "Action": "ec2-instance-connect:OpenTunnel",
            "Effect": "Allow",
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{111122223333}}:instance-connect-endpoint/{{eice-123456789abcdef}}",
            "Condition": {
                "NumericEquals": {
                    "ec2-instance-connect:remotePort": "{{3389}}"
                },
                "IpAddress": {
                    "ec2-instance-connect:privateIpAddress": "{{10.0.1.0/31}}"
                },
                "NumericLessThanEquals": {
                    "ec2-instance-connect:maxTunnelDuration": "{{3600}}"
                }
            }
        },
        {
            "Sid": "Describe",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceConnectEndpoints"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

------

## Izin untuk terhubung hanya dari rentang alamat IP tertentu
<a name="iam-sourceip"></a>

Contoh kebijakan IAM berikut memungkinkan pengguna utama IAM untuk terhubung ke instans dengan syarat instans tersebut terhubung dari alamat IP dalam rentang alamat IP yang ditentukan dalam kebijakan. Jika panggilan utama IAM `OpenTunnel` dari alamat IP yang tidak berada di dalam `192.0.2.0/24` (contoh rentang alamat IP dalam kebijakan ini), responsnya adalah`Access Denied`. Untuk informasi selengkapnya, lihat [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceip](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceip) dalam *Panduan Pengguna IAM*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
            "Effect": "Allow",
            "Action": "ec2-instance-connect:OpenTunnel",
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{111122223333}}:instance-connect-endpoint/{{eice-123456789abcdef}}",
            "Condition": {
                "IpAddress": {
                    "aws:SourceIp": "{{192.0.2.0/24}}"
                },
                "NumericEquals": {
                    "ec2-instance-connect:remotePort": "{{22}}"
                }
            }
        },
        {
            "Sid": "SSHPublicKey",
            "Effect": "Allow",
            "Action": "ec2-instance-connect:SendSSHPublicKey",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ec2:osuser": "{{ami-username}}"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeInstanceConnectEndpoints"
            ],
            "Resource": "*"
        }
    ]
}
```

------