

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

# IAM role untuk Amazon EC2
<a name="iam-roles-for-amazon-ec2"></a>

Aplikasi harus menandatangani permintaan API mereka dengan AWS kredensialnya. Oleh karena itu, jika Anda adalah seorang developer aplikasi, Anda membutuhkan strategi untuk mengelola kredensial untuk aplikasi-aplikasi Anda yang berjalan pada instans EC2. Sebagai contoh, Anda dapat mendistribusikan kredensial AWS Anda dengan aman ke instans, yang mana hal itu akan memungkinkan aplikasi-aplikasi pada instans tersebut untuk menggunakan kredensial Anda untuk menandatangani permintaan, sekaligus melindungi kredensial Anda dari pengguna lain. Namun, sulit untuk mendistribusikan kredensil secara aman ke setiap instans, terutama yang AWS dibuat atas nama Anda, seperti Instans Spot atau instans di grup Auto Scaling. Anda juga harus dapat memperbarui kredensional pada setiap instance ketika Anda memutar kredensional Anda. AWS 

Kami merancang IAM role agar aplikasi-aplikasi Anda dapat membuat permintaan API dengan aman dari instans Anda, tanpa mengharuskan Anda mengelola kredensial keamanan yang digunakan oleh aplikasi-aplikasi tersebut. Alih-alih membuat dan mendistribusikan AWS kredensional Anda, Anda dapat mendelegasikan izin untuk membuat permintaan API menggunakan peran IAM sebagai berikut:

1. Buat peran IAM.

1. Tentukan akun atau AWS layanan mana yang dapat mengambil peran.

1. Tentukan tindakan dan sumber daya API mana yang dapat digunakan oleh aplikasi setelah peran tersebut diambil.

1. Tentukan peran saat Anda meluncurkan instans Anda, atau lampirkan peran tersebut ke instans yang sudah ada.

1. Buatlah aplikasi tersebut mengambil satu set kredensial sementara lalu gunakan kredensial tersebut.

Sebagai contoh, Anda dapat menggunakan IAM role untuk memberikan izin ke aplikasi-aplikasi yang berjalan pada instans Anda yang harus menggunakan bucket dalam Amazon Simple Storage Service (Amazon S3). Anda dapat menentukan izin untuk IAM role dengan membuat kebijakan dalam format JSON. Peran ini mirip dengan kebijakan yang Anda buat untuk pengguna. Jika Anda mengubah peran, maka perubahan itu akan disebarkan ke semua instans.

**catatan**  
Kredensi peran Amazon EC2 IAM tidak tunduk pada durasi sesi maksimum yang dikonfigurasi dalam peran. Untuk informasi selengkapnya, lihat [Metode untuk mengambil peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) dalam *Panduan Pengguna IAM*.

Saat Anda membuat IAM role, kaitkan kebijakan IAM dengan hak akses paling rendah yang membatasi akses ke panggilan API tertentu yang diperlukan oleh aplikasi. Untuk Windows-to-Windows komunikasi, gunakan grup dan peran Windows yang terdefinisi dengan baik dan terdokumentasi dengan baik untuk memberikan akses tingkat aplikasi antara instance Windows. Grup dan peran memungkinkan pelanggan untuk menentukan izin aplikasi dengan hak akses paling rendah dan izin tingkat folder NTFS untuk membatasi akses ke persyaratan spesifik aplikasi.

Anda hanya dapat melampirkan satu IAM role saja ke instans, tapi Anda dapat melampirkan peran yang sama ke banyak instans. Untuk informasi selengkapnya tentang cara membuat dan menggunakan IAM role, lihat [Peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dalam *Panduan Pengguna IAM*.

Anda dapat menerapkan izin tingkat sumber daya pada kebijakan IAM Anda untuk mengontrol kemampuan pengguna dalam melampirkan, mengganti, atau melepaskan IAM role yang dilampirkan ke instans. Untuk informasi selengkapnya, lihat [Izin tingkat sumber daya yang mendukung tindakan API Amazon EC2](iam-policies-for-amazon-ec2.md#ec2-supported-iam-actions-resources) dan contoh berikut ini: [Contoh: Cara Menggunakan IAM role](ExamplePolicies_EC2.md#iam-example-iam-roles).

**Topics**
+ [Profil instans](#ec2-instance-profile)
+ [Izin untuk kasus penggunaan Anda](#generate-policy-for-iam-role)
+ [Ambil kredensi keamanan](instance-metadata-security-credentials.md)
+ [Izin untuk melampirkan peran ke instance](permission-to-pass-iam-roles.md)
+ [Lampirkan peran ke sebuah instance](attach-iam-role.md)
+ [Peran identitas instans](#ec2-instance-identity-roles)

## Profil instans
<a name="ec2-instance-profile"></a>

Amazon EC2 menggunakan *profil instans* sebagai kontainer untuk IAM role. Saat Anda membuat IAM role menggunakan konsol IAM, konsol akan membuat profil instans secara otomatis dan memberikan nama yang sama sesuai dengan perannya. Jika Anda menggunakan konsol Amazon EC2 untuk meluncurkan instans dengan IAM role atau untuk melampirkan IAM role ke instans, Anda dapat memilih peran tersebut berdasarkan daftar nama profil instans. 

Jika Anda menggunakan API AWS CLI, atau AWS SDK untuk membuat peran, Anda membuat profil peran dan instance sebagai tindakan terpisah, dengan nama yang berpotensi berbeda. Jika Anda kemudian menggunakan AWS CLI, API, atau AWS SDK untuk meluncurkan instance dengan peran IAM atau melampirkan peran IAM ke instance, tentukan nama profil instance. 

 profil instans hanya dapat berisi satu IAM role saja. Anda dapat menyertakan peran IAM dalam beberapa profil instans.

Untuk memperbarui izin untuk sebuah instance, ganti profil instance-nya. Kami tidak menyarankan untuk menghapus peran dari profil instance, karena ada penundaan hingga satu jam sebelum perubahan ini berlaku.

Untuk informasi selengkapnya, lihat [Menggunakan profil instans](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) di *Panduan Pengguna IAM*.

## Izin untuk kasus penggunaan Anda
<a name="generate-policy-for-iam-role"></a>

Ketika Anda pertama kali membuat IAM role untuk aplikasi-aplikasi Anda, terkadang Anda mungkin harus memberikan izin melebihi yang diperlukan. Sebelum meluncurkan aplikasi Anda di lingkungan produksi Anda, Anda dapat membuat kebijakan IAM yang berbasis aktivitas akses untuk IAM role. IAM Access Analyzer meninjau AWS CloudTrail log Anda dan menghasilkan templat kebijakan yang berisi izin yang telah digunakan oleh peran dalam rentang tanggal yang ditentukan. Anda dapat menggunakan templat tersebut untuk membuat kebijakan terkelola dengan izin yang sangat terperinci dan kemudian melampirkan kebijakan itu ke IAM role. Dengan begitu, Anda hanya memberikan izin yang diperlukan peran untuk berinteraksi dengan AWS sumber daya untuk kasus penggunaan spesifik Anda. Hal ini akan membantu Anda untuk lebih mematuhi praktik terbaik dalam [memberikan hak akses paling rendah](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). Untuk informasi selengkapnya, lihat [pembuatan kebijakan IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html) di Panduan Pengguna *IAM*.

# Mengambil kredensial keamanan dari metadata instans
<a name="instance-metadata-security-credentials"></a>

 aplikasi pada instans akan mengambil kredensial keamanan yang disediakan oleh peran dari item metadata instans `iam/security-credentials/`*role-name*. Aplikasi ini diberi izin untuk tindakan-tindakan dan sumber daya yang telah Anda tentukan untuk peran tersebut melalui kredensial keamanan yang dikaitkan dengan peran tersebut. Kredensial keamanan ini bersifat sementara dan kami memutar kredensial tersebut secara otomatis. Kami menyediakan kredensial yang baru setidaknya lima menit sebelum kredensial lama kedaluwarsa.

Untuk informasi selengkapnya tentang metadata instans, lihat [Gunakan metadata instans untuk mengelola instans EC2](ec2-instance-metadata.md).

**Awas**  
Jika Anda menggunakan layanan-layanan yang menggunakan metadata instans dengan IAM role, pastikan Anda tidak mengekspos kredensial Anda saat layanan-layanan tersebut melakukan panggilan HTTP atas nama Anda. Jenis layanan yang dapat mengekspos kredensil Anda termasuk proxy HTTP, layanan HTML/CSS validator, dan prosesor XHTML yang mendukung inklusi XHTML.

Untuk beban kerja Amazon EC2, sebaiknya Anda mengambil kredensial sesi menggunakan metode yang dijelaskan di bawah ini. Kredensial ini harus memungkinkan beban kerja Anda membuat permintaan API AWS , tanpa perlu menggunakan `sts:AssumeRole` untuk mengambil peran yang sama yang sudah dikaitkan dengan instans. Kecuali jika Anda perlu meneruskan tanda sesi untuk kontrol akses berbasis atribut (ABAC) atau meneruskan kebijakan sesi guna membatasi izin peran lebih lanjut, panggilan pengambilan peran tersebut tidak diperlukan karena panggilan tersebut membuat kumpulan baru kredensial sesi peran sementara yang sama.

Jika beban kerja menggunakan peran untuk mengambil dirinya sendiri, Anda harus membuat kebijakan kepercayaan yang secara eksplisit memungkinkan peran tersebut untuk mengambil dirinya sendiri. Jika Anda tidak membuat kebijakan kepercayaan, Anda mendapatkan `AccessDenied` kesalahan. Untuk informasi selengkapnya, lihat [Memperbarui kebijakan kepercayaan peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-trust-policy.html) di *Panduan Pengguna IAM*.

------
#### [ IMDSv2 ]

**Linux**  
Jalankan perintah berikut dari instance Linux Anda untuk mengambil kredensi keamanan untuk peran IAM.

```
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
    && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

**Windows**  
Jalankan cmdlet berikut dari instance Windows Anda untuk mengambil kredenal keamanan untuk peran IAM.

```
[string]$token = Invoke-RestMethod `
    -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
    -Method PUT -Uri http://169.254.169.254/latest/api/token
```

```
Invoke-RestMethod `
    -Headers @{"X-aws-ec2-metadata-token" = $token} `
    -Method GET -Uri http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

------
#### [ IMDSv1 ]

**Linux**  
Jalankan perintah berikut dari instance Linux Anda untuk mengambil kredensi keamanan untuk peran IAM.

```
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

**Windows**  
Jalankan cmdlet berikut dari instance Windows Anda untuk mengambil kredenal keamanan untuk peran IAM.

```
Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name
```

------

Berikut ini adalah output contoh. *Jika Anda tidak dapat mengambil kredensi keamanan, lihat [Saya tidak dapat mengakses kredensil keamanan sementara pada instans EC2 saya di Panduan Pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_iam-ec2.html#troubleshoot_iam-ec2_no-keys).*

```
{
  "Code" : "Success",
  "LastUpdated" : "2012-04-26T16:39:16Z",
  "Type" : "AWS-HMAC",
  "AccessKeyId" : "ASIAIOSFODNN7EXAMPLE",
  "SecretAccessKey" : "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
  "Token" : "token",
  "Expiration" : "2017-05-17T15:09:54Z"
}
```

Untuk aplikasi, AWS CLI, dan Alat untuk PowerShell perintah Windows yang berjalan pada instance, Anda tidak perlu secara eksplisit mendapatkan kredensil keamanan sementara — AWS SDKs, AWS CLI, dan Alat untuk Windows PowerShell secara otomatis mendapatkan kredensil dari layanan metadata instans EC2 dan menggunakannya. Untuk membuat panggilan di luar instans menggunakan kredensial keamanan sementara (sebagai contoh, untuk menguji kebijakan IAM), Anda harus menyediakan kunci akses, kunci rahasia, dan token sesi. Untuk informasi selengkapnya, lihat [Menggunakan Kredensil Keamanan Sementara untuk Meminta Akses ke AWS Sumber Daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) di Panduan Pengguna *IAM*.

# Berikan izin untuk melampirkan peran IAM ke instance
<a name="permission-to-pass-iam-roles"></a>

Identitas di Anda Akun AWS, seperti pengguna IAM, harus memiliki izin khusus untuk meluncurkan instans Amazon EC2 dengan peran IAM, melampirkan peran IAM ke instance, mengganti peran IAM untuk sebuah instance, atau melepaskan peran IAM dari sebuah instance. Anda harus memberikan izin untuk menggunakan tindakan API berikut seperti yang diperlukan:
+ `iam:PassRole`
+ `ec2:AssociateIamInstanceProfile`
+ `ec2:DisassociateIamInstanceProfile`
+ `ec2:ReplaceIamInstanceProfileAssociation`

**catatan**  
Jika Anda menentukan sumber daya untuk `iam:PassRole` as`*`, ini akan memberikan akses untuk meneruskan peran IAM Anda ke sebuah instance. Untuk mengikuti praktik terbaik dengan [hak istimewa terkecil](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege), tentukan peran IAM tertentu dengan`iam:PassRole`, seperti yang ditunjukkan dalam contoh kebijakan di bawah ini. ARNs 

**Contoh kebijakan untuk akses terprogram**  
Kebijakan IAM berikut memberikan izin untuk meluncurkan instans dengan peran IAM, melampirkan peran IAM ke instance, atau mengganti peran IAM untuk instans menggunakan atau Amazon EC2 API. AWS CLI 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
         "ec2:RunInstances",
         "ec2:AssociateIamInstanceProfile",
         "ec2:DisassociateIamInstanceProfile",
         "ec2:ReplaceIamInstanceProfileAssociation"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::123456789012:role/DevTeam*"
    }
  ]
}
```

------

**Persyaratan tambahan untuk akses konsol**  
Untuk memberikan izin untuk menyelesaikan tugas yang sama menggunakan konsol Amazon EC2, Anda juga harus menyertakan tindakan API`iam:ListInstanceProfiles`.

# Melampirkan IAM role ke instans
<a name="attach-iam-role"></a>

Anda dapat membuat IAM role dan melampirkan peran itu ke instans selama atau setelah peluncuran dilakukan. Anda juga dapat mengganti atau melepaskan peran IAM.

**Membuat dan melampirkan peran IAM selama peluncuran instance (Disarankan)**

1. Selama peluncuran instans EC2, perluas **Detail lanjutan**.

1. Di bagian **profil instans IAM**, pilih **Buat peran IAM baru**.

1. Formulir pembuatan peran inline terbuka, memungkinkan Anda untuk:
   + Tentukan **nama Peran** (misalnya,`EC2-S3-Access-Role`)
   + Tentukan izin dengan memilih kebijakan AWS terkelola atau membuat kebijakan khusus untuk instans Anda

     Misalnya, untuk memberikan akses S3, pilih kebijakan `AmazonS3ReadOnlyAccess` terkelola
   + Tinjau kebijakan kepercayaan yang memungkinkan `ec2.amazonaws.com` untuk mengambil peran
   + Tambahkan tag opsional untuk metadata

1. Pilih **Buat peran**.

   Peran yang baru dibuat dipilih secara otomatis dan akan dilampirkan ke instance Anda melalui profil instance saat instance diluncurkan.

**catatan**  
Saat Anda membuat peran menggunakan konsol selama peluncuran instance, profil instance dengan nama yang sama dengan peran akan dibuat secara otomatis. Profil instance adalah wadah yang meneruskan informasi peran IAM ke instance saat diluncurkan.

**penting**  
Anda hanya dapat melampirkan satu IAM role saja ke instans, tapi Anda dapat melampirkan peran yang sama ke banyak instans.
Mengaitkan kebijakan IAM dengan hak istimewa paling sedikit yang membatasi akses ke panggilan API tertentu yang dibutuhkan aplikasi.

Untuk informasi selengkapnya tentang cara membuat dan menggunakan IAM role, lihat [Peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) dalam *Panduan Pengguna IAM*.

**Melampirkan peran IAM yang ada selama peluncuran instans**  
Untuk melampirkan peran IAM yang ada ke instans saat peluncuran menggunakan konsol Amazon EC2, **perluas** Detail lanjutan. Untuk **profil instans IAM**, pilih peran IAM dari daftar dropdown.

**catatan**  
Jika Anda membuat peran IAM menggunakan konsol IAM, profil instance dibuat untuk Anda dan diberi nama yang sama dengan peran tersebut. Jika Anda membuat peran IAM menggunakan API AWS CLI, atau AWS SDK, Anda mungkin telah memberikan nama yang berbeda pada profil instans Anda dari peran tersebut.

Anda dapat melampirkan peran IAM ke instance yang sedang berjalan atau dihentikan. Jika instance sudah memiliki peran IAM yang terpasang, Anda harus menggantinya dengan peran IAM yang baru.

------
#### [ Console ]<a name="attach-iam-role-console"></a>

**Untuk melampirkan IAM role ke instans**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans.

1. Pilih **Tindakan**, **Keamanan**, **Ubah peran IAM**.

1. Untuk **peran IAM**, pilih profil instans IAM.

1. Pilih **Perbarui peran IAM**.

------
#### [ AWS CLI ]
<a name="attach-iam-role-instance-cli"></a>
**Untuk melampirkan IAM role ke instans**  
Gunakan [associate-iam-instance-profile](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-iam-instance-profile.html)perintah untuk melampirkan peran IAM ke instance. Saat menentukan profil instans, Anda dapat menggunakan Amazon Resource Name (ARN) dari profil instans, atau Anda dapat menggunakan namanya.

```
aws ec2 associate-iam-instance-profile \
    --instance-id i-1234567890abcdef0 \
    --iam-instance-profile Name="TestRole-1"
```

------
#### [ PowerShell ]

**Untuk melampirkan IAM role ke instans**  
Gunakan [Register-EC2IamInstanceProfile](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2IamInstanceProfile.html)cmdlet.

```
Register-EC2IamInstanceProfile `
    -InstanceId i-1234567890abcdef0 `
    -IamInstanceProfile_Name TestRole-1
```

------

Untuk mengganti peran IAM pada instance yang sudah memiliki peran IAM terlampir, instance harus berjalan. Anda dapat melakukan hal ini jika Anda ingin mengubah IAM role untuk instans tanpa melepaskan peran terlampir yang ada terlebih dahulu. Sebagai contoh, Anda dapat melakukan hal ini untuk memastikan bahwa tindakan-tindakan API yang dilakukan oleh aplikasi yang berjalan pada instans tidak terganggu.

------
#### [ Console ]<a name="replace-iam-role-console"></a>

**Untuk mengganti sebuah peran IAM ke sebuah instans**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans.

1. Pilih **Tindakan**, **Keamanan**, **Ubah peran IAM**.

1. Untuk **peran IAM**, pilih profil instans IAM.

1. Pilih **Perbarui peran IAM**.

------
#### [ AWS CLI ]<a name="replace-iam-role-cli"></a>

**Untuk mengganti IAM role untuk instans**

1. Jika diperlukan, gunakan perintah [describe-iam-instance-profile-associations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-iam-instance-profile-associations.html) untuk mendapatkan ID asosiasi.

   ```
   aws ec2 describe-iam-instance-profile-associations \
       --filters Name=instance-id,Values=i-1234567890abcdef0 \
       --query IamInstanceProfileAssociations.AssociationId
   ```

1. Gunakan perintah [replace-iam-instance-profile-association](https://docs.aws.amazon.com/cli/latest/reference/ec2/replace-iam-instance-profile-association.html). Tentukan ID asosiasi untuk profil instance yang ada dan ARN atau nama profil instance baru.

   ```
   aws ec2 replace-iam-instance-profile-association \
       --association-id iip-assoc-0044d817db6c0a4ba \
       --iam-instance-profile Name="TestRole-2"
   ```

------
#### [ PowerShell ]

**Untuk mengganti IAM role untuk instans**

1. Jika diperlukan, gunakan [Get-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2IamInstanceProfileAssociation.html)cmdlet untuk mendapatkan ID asosiasi.

   ```
   (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
   ```

1. Gunakan [Set-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Set-EC2IamInstanceProfileAssociation.html)cmdlet. Tentukan ID asosiasi untuk profil instance yang ada dan ARN atau nama profil instance baru.

   ```
   Set-EC2IamInstanceProfileAssociation `
       -AssociationId iip-assoc-0044d817db6c0a4ba `
       -IamInstanceProfile_Name TestRole-2
   ```

------

Anda dapat melepaskan peran IAM dari instance yang sedang berjalan atau dihentikan.

------
#### [ Console ]<a name="detach-iam-role-console"></a>

**Untuk melepaskan IAM role terlampir dari instans**

1. Buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans.

1. Pilih **Tindakan**, **Keamanan**, **Ubah peran IAM**.

1. Untuk **IAM role**, pilih **No IAM Role** (Tanpa IAM Role).

1. Pilih **Perbarui peran IAM**.

1. Saat dipromosikan untuk konfirmasi, masukkan **Lepaskan**, lalu pilih **Lepaskan**.

------
#### [ AWS CLI ]<a name="detach-iam-role-cli"></a>

**Untuk melepaskan IAM role terlampir dari instans**

1. Jika diperlukan, gunakan [describe-iam-instance-profile-associations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-iam-instance-profile-associations.html) untuk mendapatkan ID asosiasi untuk profil instans IAM untuk dilepaskan.

   ```
   aws ec2 describe-iam-instance-profile-associations \
       --filters Name=instance-id,Values=i-1234567890abcdef0 \
       --query IamInstanceProfileAssociations.AssociationId
   ```

1. Gunakan perintah [disassociate-iam-instance-profile](https://docs.aws.amazon.com/cli/latest/reference/ec2/disassociate-iam-instance-profile.html).

   ```
   aws ec2 disassociate-iam-instance-profile --association-id iip-assoc-0044d817db6c0a4ba
   ```

------
#### [ PowerShell ]

**Untuk melepaskan IAM role terlampir dari instans**

1. Jika diperlukan, gunakan [Get-EC2IamInstanceProfileAssociation](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2IamInstanceProfileAssociation.html)untuk mendapatkan ID asosiasi untuk profil instans IAM untuk dilepaskan.

   ```
   (Get-EC2IamInstanceProfileAssociation -Filter @{Name="instance-id"; Values="i-0636508011d8e966a"}).AssociationId
   ```

1. Gunakan [Unregister-EC2IamInstanceProfile](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2IamInstanceProfile.html)cmdlet.

   ```
   Unregister-EC2IamInstanceProfile -AssociationId iip-assoc-0044d817db6c0a4ba
   ```

------

## Peran identitas instans untuk instans Amazon EC2
<a name="ec2-instance-identity-roles"></a>

Setiap instans Amazon EC2 yang Anda luncurkan memiliki *peran identitas instans* yang mewakili identitasnya. Peran identitas instance adalah jenis peran IAM. AWS layanan dan fitur yang terintegrasi untuk menggunakan peran identitas instance dapat menggunakannya untuk mengidentifikasi instance ke layanan.

Kredensional peran identitas instans dapat diakses dari Layanan Metadata Instans (IMDS) di `/identity-credentials/ec2/security-credentials/ec2-instance`. Kredensialnya terdiri dari AWS temporary access key pair dan session token. Mereka digunakan untuk menandatangani permintaan AWS Sigv4 ke AWS layanan yang menggunakan peran identitas instance. Kredensial hadir dalam metadata instans terlepas dari apakah layanan atau fitur yang menggunakan peran identitas instans diaktifkan pada instans.

Peran identitas instans dibuat secara otomatis saat instance diluncurkan, tidak memiliki dokumen kebijakan role-trust, dan tidak tunduk pada identitas atau kebijakan sumber daya apa pun.

### Layanan yang didukung
<a name="iir-supported-services"></a>

 AWS Layanan berikut menggunakan peran identitas instance:
+ **Amazon EC2** — [EC2 Instance Connect](connect-linux-inst-eic.md) menggunakan peran identitas instans untuk memperbarui kunci host untuk instance Linux.
+ **Amazon GuardDuty** — [GuardDuty Runtime Monitoring](https://docs.aws.amazon.com/guardduty/latest/ug/runtime-monitoring.html) menggunakan peran identitas instans untuk memungkinkan agen runtime mengirim telemetri keamanan ke titik akhir VPC. GuardDuty 
+ **AWS Lambda**— [Instans Terkelola Lambda menggunakan peran identitas instans](https://docs.aws.amazon.com/lambda/latest/dg/lambda-managed-instances.html) untuk kait siklus hidup, telemetri, dan distribusi artefak.
+ **AWS Security Token Service (AWS STS)** - Kredensial peran identitas instance dapat digunakan dengan tindakan. AWS STS [https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetCallerIdentity.html)
+ **AWS Systems Manager**— Saat menggunakan [Konfigurasi Manajemen Host Default](https://docs.aws.amazon.com/systems-manager/latest/userguide/fleet-manager-default-host-management-configuration.html), AWS Systems Manager gunakan identitas yang disediakan oleh peran identitas instans untuk mendaftarkan instans EC2. Setelah mengidentifikasi instans Anda, Systems Manager dapat meneruskan peran IAM `AWSSystemsManagerDefaultEC2InstanceManagementRole` ke instans Anda.

Peran identitas instans tidak dapat digunakan dengan AWS layanan atau fitur lain karena tidak memiliki integrasi dengan peran identitas instance.

### ARN peran identitas instans
<a name="iir-arn"></a>

ARN peran identitas instans ARN mengambil format berikut:

```
arn:aws-partition:iam::account-number:assumed-role/aws:ec2-instance/instance-id
```

Contoh:

```
arn:aws:iam::0123456789012:assumed-role/aws:ec2-instance/i-1234567890abcdef0
```

Untuk informasi selengkapnya ARNs, lihat [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) di *Panduan Pengguna IAM*.