

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

# Manajemen identitas dan akses untuk AWS CodeStar Pemberitahuan dan AWS CodeConnections
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) adalah Layanan AWS yang membantu administrator mengontrol akses ke AWS sumber daya dengan aman. Administrator IAM mengontrol siapa yang dapat *diautentikasi* (masuk) dan *diberi wewenang* (memiliki izin) untuk menggunakan AWS CodeStar Pemberitahuan dan sumber daya. AWS CodeConnections IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.

**catatan**  
Tindakan untuk sumber daya yang dibuat di bawah awalan layanan baru `codeconnections` tersedia. Membuat sumber daya di bawah awalan layanan baru akan digunakan `codeconnections` di sumber daya ARN. Tindakan dan sumber daya untuk awalan `codestar-connections` layanan tetap tersedia. Saat menentukan sumber daya dalam kebijakan IAM, awalan layanan harus sesuai dengan sumber daya.

**Topics**
+ [Audiens](#security_iam_audience)
+ [Mengautentikasi dengan identitas](#security_iam_authentication)
+ [Mengelola akses menggunakan kebijakan](#security_iam_access-manage)
+ [Bagaimana fitur di konsol alat developer bekerja dengan IAM](security_iam_service-with-iam.md)
+ [AWS CodeConnections referensi izin](#permissions-reference-connections)
+ [Contoh kebijakan berbasis identitas](security_iam_id-based-policy-examples.md)
+ [Menggunakan tag untuk mengontrol akses ke AWS CodeConnections sumber daya](connections-tag-based-access-control.md)
+ [Menggunakan notifikasi dan koneksi di konsol](#security_iam_id-based-policy-examples-console)
+ [Izinkan para pengguna untuk melihat izin mereka sendiri](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Pemecahan Masalah AWS CodeStar Pemberitahuan dan AWS CodeConnections identitas dan akses](security_iam_troubleshoot.md)
+ [Menggunakan peran terkait layanan untuk Pemberitahuan AWS CodeStar](using-service-linked-roles.md)
+ [Menggunakan peran terkait layanan untuk AWS CodeConnections](service-linked-role-connections.md)
+ [AWS kebijakan terkelola untuk AWS CodeConnections](security-iam-awsmanpol.md)

## Audiens
<a name="security_iam_audience"></a>

Cara Anda menggunakan AWS Identity and Access Management (IAM) berbeda berdasarkan peran Anda:
+ **Pengguna layanan** - minta izin dari administrator Anda jika Anda tidak dapat mengakses fitur (lihat [Pemecahan Masalah AWS CodeStar Pemberitahuan dan AWS CodeConnections identitas dan akses](security_iam_troubleshoot.md))
+ **Administrator layanan** - tentukan akses pengguna dan mengirimkan permintaan izin (lihat [Bagaimana fitur di konsol alat developer bekerja dengan IAM](security_iam_service-with-iam.md))
+ **Administrator IAM** - tulis kebijakan untuk mengelola akses (lihat [Contoh kebijakan berbasis identitas](security_iam_id-based-policy-examples.md))

## Mengautentikasi dengan identitas
<a name="security_iam_authentication"></a>

Otentikasi adalah cara Anda masuk AWS menggunakan kredensyal identitas Anda. Anda harus diautentikasi sebagai Pengguna root akun AWS, pengguna IAM, atau dengan mengasumsikan peran IAM.

Anda dapat masuk sebagai identitas federasi menggunakan kredensi dari sumber identitas seperti AWS IAM Identity Center (Pusat Identitas IAM), autentikasi masuk tunggal, atau kredensi. Google/Facebook Untuk informasi selengkapnya tentang cara masuk, lihat [Cara masuk ke Akun AWS Anda](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) dalam *Panduan Pengguna AWS Sign-In *.

Untuk akses terprogram, AWS sediakan SDK dan CLI untuk menandatangani permintaan secara kriptografis. Untuk informasi selengkapnya, lihat [AWS Signature Version 4 untuk permintaan API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) dalam *Panduan Pengguna IAM*.

### Pengguna root akun AWS
<a name="security_iam_authentication-rootuser"></a>

 Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang disebut *pengguna Akun AWS root* yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensial pengguna root, lihat [Tugas yang memerlukan kredensial pengguna root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) dalam *Panduan Pengguna IAM*. 

### Pengguna dan grup IAM
<a name="security_iam_authentication-iamuser"></a>

*[Pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* adalah identitas dengan izin khusus untuk satu orang atau aplikasi. Sebaiknya gunakan kredensial sementara alih-alih pengguna IAM dengan kredensial jangka panjang. Untuk informasi selengkapnya, lihat [Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensi sementara](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) di Panduan Pengguna *IAM*.

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) menentukan kumpulan pengguna IAM dan mempermudah pengelolaan izin untuk pengguna dalam jumlah besar. Untuk mempelajari selengkapnya, lihat [Kasus penggunaan untuk pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) dalam *Panduan Pengguna IAM*.

### Peran IAM
<a name="security_iam_authentication-iamrole"></a>

*[Peran IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* adalah identitas dengan izin khusus yang menyediakan kredensial sementara. Anda dapat mengambil peran dengan [beralih dari pengguna ke peran IAM (konsol)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) atau dengan memanggil operasi AWS CLI atau AWS API. 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*.

Peran IAM berguna untuk akses pengguna terfederasi, izin pengguna IAM sementara, akses lintas akun, akses lintas layanan, dan aplikasi yang berjalan di Amazon EC2. Untuk informasi selengkapnya, lihat [Akses sumber daya lintas akun di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dalam *Panduan Pengguna IAM*.

## Mengelola akses menggunakan kebijakan
<a name="security_iam_access-manage"></a>

Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan menentukan izin saat dikaitkan dengan identitas atau sumber daya. AWS mengevaluasi kebijakan ini ketika kepala sekolah membuat permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang dokumen kebijakan JSON, lihat [Gambaran umum kebijakan JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) dalam *Panduan Pengguna IAM*.

Menggunakan kebijakan, administrator menentukan siapa yang memiliki akses ke apa dengan mendefinisikan **principal** mana yang dapat melakukan **tindakan** pada **sumber daya** apa, dan dalam **kondisi** apa.

Secara default, pengguna dan peran tidak memiliki izin. Administrator IAM membuat kebijakan IAM dan menambahkannya ke peran, yang kemudian dapat diambil oleh pengguna. Kebijakan IAM mendefinisikan izin terlepas dari metode yang Anda gunakan untuk melakukan operasinya.

### Kebijakan berbasis identitas
<a name="security_iam_access-manage-id-based-policies"></a>

Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang Anda lampirkan ke identitas (pengguna, grup, atau peran). Kebijakan ini mengontrol tindakan apa yang bisa dilakukan oleh identitas tersebut, terhadap sumber daya yang mana, dan dalam kondisi apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat [Tentukan izin IAM kustom dengan kebijakan yang dikelola pelanggan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dalam *Panduan Pengguna IAM*.

Kebijakan berbasis identitas dapat berupa *kebijakan inline* (disematkan langsung ke dalam satu identitas) atau *kebijakan terkelola* (kebijakan mandiri yang dilampirkan pada banyak identitas). Untuk mempelajari cara memilih antara kebijakan terkelola dan kebijakan inline, lihat [Pilih antara kebijakan terkelola dan kebijakan inline](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) dalam *Panduan Pengguna IAM*.

## AWS CodeConnections referensi izin
<a name="permissions-reference-connections"></a>

Tabel berikut mencantumkan setiap operasi AWS CodeConnections API, tindakan terkait yang dapat Anda berikan izin, dan format ARN sumber daya yang akan digunakan untuk memberikan izin. AWS CodeConnections APIs Dikelompokkan ke dalam tabel berdasarkan cakupan tindakan yang diizinkan oleh API tersebut. Mengacu saat menulis kebijakan izin yang dapat Anda lampirkan ke identitas IAM (kebijakan berbasis identitas). 

Ketika Anda membuat kebijakan izin, Anda menentukan tindakan di bidang `Action`. Anda menentukan nilai sumber daya di bidang `Resource` sebagai ARN, dengan atau tanpa karakter wildcard (\$1). 

Untuk mengekspresikan syarat dalam kebijakan koneksi Anda, gunakan kunci syarat yang dijelaskan di sini dan tercantum dalam [Kunci syarat](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-conditionkeys). Anda juga dapat menggunakan tombol kondisi AWS-wide. Untuk daftar lengkap tombol AWS-wide, lihat Kunci yang [tersedia](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys) di *Panduan Pengguna IAM*.

Untuk menentukan tindakan, gunakan awalan `codeconnections` yang diikuti dengan nama operasi API (misalnya, `codeconnections:ListConnections` atau `codeconnections:CreateConnection`. 

**Menggunakan wildcard**

Untuk menentukan beberapa tindakan atau sumber daya, gunakan karakter wildcard (\$1) di ARN Anda. Misalnya, `codeconnections:*` menentukan semua AWS CodeConnections tindakan dan `codeconnections:Get*` menentukan semua AWS CodeConnections tindakan yang dimulai dengan kata. `Get` Contoh berikut memberikan akses ke semua sumber daya dengan nama yang dimulai dengan `MyConnection`. 

```
arn:aws:codeconnections:us-west-2:account-ID:connection/*
```

Anda dapat menggunakan wildcard hanya dengan *connection* sumber daya yang tercantum dalam tabel berikut. Anda tidak dapat menggunakan wildcard dengan *region* atau *account-id* sumber daya. Untuk informasi lebih lanjut tentang wildcard, lihat [Pengidentifikasi IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html) dalam *Panduan Pengguna IAM*. 

**Topics**
+ [Izin untuk mengelola koneksi](#permissions-reference-connections-managing)
+ [Izin untuk mengelola host](#permissions-reference-connections-hosts)
+ [Izin untuk menyelesaikan koneksi](#permissions-reference-connections-handshake)
+ [Izin untuk menyiapkan host](#connections-permissions-actions-host-registration)
+ [Melewati koneksi ke layanan](#permissions-reference-connections-passconnection)
+ [Menggunakan koneksi](#permissions-reference-connections-use)
+ [Jenis akses yang didukung untuk `ProviderAction`](#permissions-reference-connections-access)
+ [Izin yang didukung untuk menandai sumber daya koneksi](#permissions-reference-connections-tagging)
+ [Melewati koneksi ke tautan repositori](#permissions-reference-connections-passrepository)
+ [Kunci kondisi yang didukung untuk tautan repositori](#permissions-reference-connections-branch)
+ [Izin yang didukung untuk berbagi koneksi](#permissions-reference-connections-sharing)

### Izin untuk mengelola koneksi
<a name="permissions-reference-connections-managing"></a>

Peran atau pengguna yang ditunjuk untuk menggunakan AWS CLI atau SDK untuk melihat, membuat, atau menghapus koneksi harus memiliki izin terbatas pada hal berikut.

**catatan**  
Anda tidak dapat menyelesaikan atau menggunakan koneksi di konsol dengan hanya izin berikut. Anda perlu menambahkan izin di [Izin untuk menyelesaikan koneksi](#permissions-reference-connections-handshake).

```
codeconnections:CreateConnection
codeconnections:DeleteConnection
codeconnections:GetConnection
codeconnections:ListConnections
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk mengelola koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  CreateConnection  |  `codeconnections:CreateConnection` Diperlukan untuk menggunakan CLI atau konsol untuk membuat koneksi.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  DeleteConnection  |  `codeconnections:DeleteConnection` Diperlukan untuk menggunakan CLI atau konsol untuk menghapus koneksi.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  GetConnection  |  `codeconnections:GetConnection` Diperlukan untuk menggunakan CLI atau konsol untuk melihat detail tentang koneksi.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  ListConnections  |  `codeconnections:ListConnections` Diperlukan untuk menggunakan CLI atau konsol untuk membuat daftar semua koneksi di akun.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 

Operasi ini mendukung kunci syarat berikut:


| Tindakan | Kunci kondisi | 
| --- | --- | 
|  `codeconnections:CreateConnection`  |  `codeconnections:ProviderType`  | 
|  codeconnections:DeleteConnection | N/A | 
| codeconnections:GetConnection | N/A | 
| codeconnections:ListConnections | codeconnections:ProviderTypeFilter | 

### Izin untuk mengelola host
<a name="permissions-reference-connections-hosts"></a>

Peran atau pengguna yang ditunjuk untuk menggunakan AWS CLI atau SDK untuk melihat, membuat, atau menghapus host harus memiliki izin terbatas pada hal berikut.

**catatan**  
Anda tidak dapat menyelesaikan atau menggunakan koneksi di host dengan hanya izin berikut. Anda perlu menambahkan izin di [Izin untuk menyiapkan host](#connections-permissions-actions-host-registration).

```
codeconnections:CreateHost
codeconnections:DeleteHost
codeconnections:GetHost
codeconnections:ListHosts
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk mengelola host**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  CreateHost  |  `codeconnections:CreateHost` Diperlukan untuk menggunakan CLI atau konsol untuk membuat host.  |  arn:aws:codeconnections: ::host/ *region* *account-id* *host-id*  | 
|  DeleteHost  |  `codeconnections:DeleteHost` Diperlukan untuk menggunakan CLI atau konsol untuk menghapus host.  |  codeconnections: ::host/ *region* *account-id* *host-id*  | 
|  GetHost  |  `codeconnections:GetHost` Diperlukan untuk menggunakan CLI atau konsol untuk melihat detail tentang host.  |  arn:aws:codeconnections: ::host/ *region* *account-id* *host-id*  | 
|  ListHosts  |  `codeconnections:ListHosts` Diperlukan untuk menggunakan CLI atau konsol untuk membuat daftar semua host di akun.  |  arn:aws:codeconnections: ::host/ *region* *account-id* *host-id*  | 

Operasi ini mendukung kunci syarat berikut:


| Tindakan | Kunci kondisi | 
| --- | --- | 
|  `codeconnections:CreateHost`  |  `codeconnections:ProviderType` `codeconnections:VpcId`  | 
|  codeconnections:DeleteHost | N/A | 
| codeconnections:GetHost | N/A | 
| codeconnections:ListHosts | codeconnections:ProviderTypeFilter | 

Untuk contoh kebijakan yang menggunakan kunci **VpcId**kondisi, lihat[Contoh: Batasi izin VPC host menggunakan tombol konteks **VpcId**](security_iam_id-based-policy-examples-connections.md#security_iam_id-based-policy-examples-connections-vpc).

### Izin untuk menyelesaikan koneksi
<a name="permissions-reference-connections-handshake"></a>

Peran atau pengguna yang ditunjuk untuk mengelola koneksi di konsol harus memiliki izin yang diperlukan untuk menyelesaikan koneksi di konsol dan membuat instalasi, yang mencakup otorisasi handshake ke penyedia dan membuat instalasi untuk koneksi untuk digunakan. Gunakan izin berikut selain izin di atas.

Operasi IAM berikut digunakan oleh konsol saat melakukan handshake berbasis browser. `ListInstallationTargets`, `GetInstallationUrl`, `StartOAuthHandshake`, `UpdateConnectionInstallation`, dan `GetIndividualAccessToken` adalah izin kebijakan IAM. Mereka bukan tindakan API.

```
codeconnections:GetIndividualAccessToken
codeconnections:GetInstallationUrl
codeconnections:ListInstallationTargets
codeconnections:StartOAuthHandshake
codeconnections:UpdateConnectionInstallation
```

Berdasarkan ini, izin berikut diperlukan untuk menggunakan, membuat, memperbarui, atau menghapus koneksi di konsol. 

```
codeconnections:CreateConnection
codeconnections:DeleteConnection
codeconnections:GetConnection
codeconnections:ListConnections
codeconnections:UseConnection
codeconnections:ListInstallationTargets
codeconnections:GetInstallationUrl
codeconnections:StartOAuthHandshake
codeconnections:UpdateConnectionInstallation
codeconnections:GetIndividualAccessToken
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk menyelesaikan koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `GetIndividualAccessToken`  |  `codeconnections:GetIndividualAccessToken` Diperlukan untuk menggunakan konsol untuk menyelesaikan koneksi. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `GetInstallationUrl`  |  `codeconnections:GetInstallationUrl` Diperlukan untuk menggunakan konsol untuk menyelesaikan koneksi. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListInstallationTargets`  |  `codeconnections:ListInstallationTargets` Diperlukan untuk menggunakan konsol untuk menyelesaikan koneksi. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `StartOAuthHandshake`  |  `codeconnections:StartOAuthHandshake` Diperlukan untuk menggunakan konsol untuk menyelesaikan koneksi. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `UpdateConnectionInstallation`  |  `codeconnections:UpdateConnectionInstallation` Diperlukan untuk menggunakan konsol untuk menyelesaikan koneksi. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 

Operasi ini mendukung kunci kondisi berikut.


| Tindakan | Kunci kondisi | 
| --- | --- | 
| codeconnections:GetIndividualAccessToken | codeconnections:ProviderType | 
|  codeconnections:GetInstallationUrl | codeconnections:ProviderType | 
|  `codeconnections:ListInstallationTargets`  |  N/A  | 
| codeconnections:StartOAuthHandshake | codeconnections:ProviderType | 
| codeconnections:UpdateConnectionInstallation | codeconnections:InstallationId | 

### Izin untuk menyiapkan host
<a name="connections-permissions-actions-host-registration"></a>

Peran atau pengguna yang ditunjuk untuk mengelola koneksi di konsol harus memiliki izin yang diperlukan untuk mengatur host di konsol, yang mencakup otorisasi handshake ke penyedia dan menginstal aplikasi host. Gunakan izin berikut selain izin untuk host di atas.

Operasi IAM berikut digunakan oleh konsol saat melakukan pendaftaran host berbasis browser. `RegisterAppCode` dan `StartAppRegistrationHandshake` adalah izin kebijakan IAM. Mereka bukan tindakan API.

```
codeconnections:RegisterAppCode
codeconnections:StartAppRegistrationHandshake
```

Berdasarkan ini, izin berikut diperlukan untuk menggunakan, membuat, memperbarui, atau menghapus koneksi di konsol yang memerlukan host (seperti jenis penyedia yang diinstal). 

```
codeconnections:CreateConnection
codeconnections:DeleteConnection
codeconnections:GetConnection
codeconnections:ListConnections
codeconnections:UseConnection
codeconnections:ListInstallationTargets
codeconnections:GetInstallationUrl
codeconnections:StartOAuthHandshake
codeconnections:UpdateConnectionInstallation
codeconnections:GetIndividualAccessToken
codeconnections:RegisterAppCode
codeconnections:StartAppRegistrationHandshake
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk menyelesaikan penyiapan host**  

| Tindakan koneksi | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `RegisterAppCode`  |  `codeconnections:RegisterAppCode` Diperlukan untuk menggunakan konsol untuk menyelesaikan pengaturan host. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::host/ *region* *account-id* *host-id*  | 
|  `StartAppRegistrationHandshake`  |  `codeconnections:StartAppRegistrationHandshake` Diperlukan untuk menggunakan konsol untuk menyelesaikan pengaturan host. Ini adalah izin kebijakan IAM saja, bukan tindakan API.  |  arn:aws:codeconnections: ::host/ *region* *account-id* *host-id*  | 

Operasi ini mendukung kunci kondisi berikut.

### Melewati koneksi ke layanan
<a name="permissions-reference-connections-passconnection"></a>

Ketika koneksi dilewatkan ke layanan (misalnya, ketika ARN koneksi disediakan dalam definisi alur untuk membuat atau memperbarui alur) pengguna harus memiliki izin `codeconnections:PassConnection`.

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk meneruskan koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `PassConnection`  |  `codeconnections:PassConnection` Diperlukan untuk meneruskan koneksi ke layanan.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 

Operasi ini juga mendukung kunci kondisi berikut:
+ `codeconnections:PassedToService`


**Nilai yang didukung untuk kunci kondisi**  

| Kunci | Penyedia tindakan yang valid | 
| --- | --- | 
|  `codeconnections:PassedToService`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/dtconsole/latest/userguide/security-iam.html)  | 

### Menggunakan koneksi
<a name="permissions-reference-connections-use"></a>

Ketika layanan seperti CodePipeline menggunakan koneksi, peran layanan harus memiliki `codeconnections:UseConnection` izin untuk koneksi tertentu.

Untuk mengelola koneksi di konsol, kebijakan pengguna harus memiliki izin `codeconnections:UseConnection`.

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections tindakan yang diperlukan untuk menggunakan koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `UseConnection`  |  `codeconnections:UseConnection` Diperlukan untuk menggunakan koneksi.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 

Operasi ini juga mendukung kunci syarat berikut:
+ `codeconnections:BranchName`
+ `codeconnections:FullRepositoryId`
+ `codeconnections:OwnerId`
+ `codeconnections:ProviderAction`
+ `codeconnections:ProviderPermissionsRequired`
+ `codeconnections:RepositoryName`


**Nilai yang didukung untuk kunci kondisi**  

| Kunci | Penyedia tindakan yang valid | 
| --- | --- | 
|  `codeconnections:FullRepositoryId`  |  Nama pengguna dan nama repositori repositori, seperti. `my-owner/my-repository` Didukung hanya bila koneksi sedang digunakan untuk mengakses repositori tertentu.  | 
|  `codeconnections:ProviderPermissionsRequired`  |  read\$1only atau read\$1write  | 
|  `codeconnections:ProviderAction`  |  `GetBranch`, `ListRepositories`, `ListOwners`, `ListBranches`, `StartUploadArchiveToS3`, `GitPush`, `GitPull`, `GetUploadArchiveToS3Status`, `CreatePullRequestDiffComment`, `GetPullRequest`, `ListBranchCommits`, `ListCommitFiles`, `ListPullRequestComments`, `ListPullRequestCommits`. Untuk informasi, lihat bagian selanjutnya.  | 

Kunci syarat yang diperlukan untuk beberapa fungsionalitas mungkin berubah dari waktu ke waktu. Kami menyarankan agar Anda menggunakan `codeconnections:UseConnection` untuk mengontrol akses ke koneksi kecuali persyaratan kontrol akses Anda memerlukan izin yang berbeda.

### Jenis akses yang didukung untuk `ProviderAction`
<a name="permissions-reference-connections-access"></a>

Ketika koneksi digunakan oleh AWS layanan, itu menghasilkan panggilan API yang dilakukan ke penyedia kode sumber Anda. Sebagai contoh, layanan mungkin mencantumkan repositori untuk koneksi Bitbucket dengan memanggil API `https://api.bitbucket.org/2.0/repositories/username`.

Kunci `ProviderAction` kondisi memungkinkan Anda untuk membatasi penyedia mana APIs yang dapat dipanggil. Karena jalur API mungkin dihasilkan secara dinamis, dan jalur bervariasi dari penyedia ke penyedia, nilai `ProviderAction` dipetakan ke nama tindakan abstrak bukan URL API. Hal ini memungkinkan Anda untuk menulis kebijakan yang memiliki efek yang sama terlepas dari jenis penyedia untuk koneksi.

Berikut ini adalah jenis akses yang diberikan untuk masing-masing nilai `ProviderAction` yang didukung. Berikut ini adalah izin kebijakan IAM. Mereka bukan tindakan API.

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections jenis akses yang didukung untuk `ProviderAction`**  

| AWS CodeConnections izin | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `GetBranch`  |  ` codeconnections:GetBranch` Diperlukan untuk mengakses informasi tentang cabang, seperti komit terbaru untuk cabang tersebut.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListRepositories`  |  ` codeconnections:ListRepositories` Diperlukan untuk mengakses daftar repositori publik dan privat, termasuk detail tentang repositori tersebut, yang menjadi milik pemilik.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListOwners`  |  `codeconnections:ListOwners` Diperlukan untuk mengakses daftar pemilik yang memiliki akses ke koneksi.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListBranches`  |  ` codeconnections:ListBranches` Diperlukan untuk mengakses daftar cabang yang ada pada repositori yang diberikan.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `StartUploadArchiveToS3`  |  ` codeconnections:StartUploadArchiveToS3` Diperlukan untuk membaca kode sumber dan mengunggahnya ke Amazon S3.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `GitPush`  |  ` codeconnections:GitPush` Diperlukan untuk menulis ke repositori menggunakan Git.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `GitPull`  |  ` codeconnections:GitPull` Diperlukan untuk membaca dari repositori menggunakan Git.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
| GetUploadArchiveToS3Status |  ` codeconnections:GetUploadArchiveToS3Status` Diperlukan untuk mengakses status pengunggahan, termasuk pesan kesalahan, yang dimulai dengan `StartUploadArchiveToS3`.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
| CreatePullRequestDiffComment |  ` codeconnections:CreatePullRequestDiffComment` Diperlukan untuk mengakses komentar pada permintaan tarik.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
| GetPullRequest |  ` codeconnections:GetPullRequest` Diperlukan untuk melihat permintaan tarik untuk repositori.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListBranchCommits`  |  ` codeconnections:ListBranchCommits` Diperlukan untuk melihat daftar komit untuk cabang repositori.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListCommitFiles`  |  ` codeconnections:ListCommitFiles` Diperlukan untuk melihat daftar file untuk komit.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListPullRequestComments`  |  ` codeconnections:ListPullRequestComments` Diperlukan untuk melihat daftar komentar untuk permintaan tarik.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 
|  `ListPullRequestCommits`  |  ` codeconnections:ListPullRequestCommits` Diperlukan untuk melihat daftar komit untuk permintaan tarik.  |  arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*  | 

### Izin yang didukung untuk menandai sumber daya koneksi
<a name="permissions-reference-connections-tagging"></a>

Operasi IAM berikut digunakan ketika penandaan sumber daya koneksi.

```
codeconnections:ListTagsForResource
codeconnections:TagResource
codeconnections:UntagResource
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections tindakan yang diperlukan untuk menandai sumber daya koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `ListTagsForResource`  |  `codeconnections:ListTagsForResource` Diperlukan untuk melihat daftar tanda yang terkait dengan sumber daya koneksi.  | arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*,arn:aws:codeconnections: ::host/ *region* *account-id* *host-id* | 
|  `TagResource`  |  `codeconnections:TagResource` Diperlukan untuk menandai sumber daya koneksi.  | arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*,arn:aws:codeconnections: ::host/ *region* *account-id* *host-id* | 
|  `UntagResource`  |  `codeconnections:UntagResource` Diperlukan untuk menghapus tanda dari sumber daya koneksi.  | arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id*,arn:aws:codeconnections: ::host/ *region* *account-id* *host-id* | 

### Melewati koneksi ke tautan repositori
<a name="permissions-reference-connections-passrepository"></a>

Ketika repository-link disediakan dalam konfigurasi sinkronisasi, pengguna harus memiliki `codeconnections:PassRepository` izin untuk repository-link ARN/resource.

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections izin yang diperlukan untuk meneruskan koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `PassRepository`  |  `codeconnections:PassRepository` Diperlukan untuk meneruskan tautan repositori ke konfigurasi sinkronisasi.  |  arn:aws:codeconnections: ::repository-link/ *region* *account-id* *repository-link-id*  | 

Operasi ini juga mendukung kunci kondisi berikut:
+ `codeconnections:PassedToService`


**Nilai yang didukung untuk kunci kondisi**  

| Kunci | Penyedia tindakan yang valid | 
| --- | --- | 
|  `codeconnections:PassedToService`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/dtconsole/latest/userguide/security-iam.html)  | 

### Kunci kondisi yang didukung untuk tautan repositori
<a name="permissions-reference-connections-branch"></a>

Operasi untuk tautan repositori dan sumber daya konfigurasi sinkronisasi didukung oleh kunci kondisi berikut:
+ `codeconnections:Branch`

  Memfilter akses dengan nama cabang yang diteruskan dalam permintaan.


**Tindakan yang didukung untuk kunci kondisi**  

| Key | Nilai valid | 
| --- | --- | 
|  `codeconnections:Branch`  | Tindakan berikut didukung untuk kunci kondisi ini:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/dtconsole/latest/userguide/security-iam.html) | 

### Izin yang didukung untuk berbagi koneksi
<a name="permissions-reference-connections-sharing"></a>

Operasi IAM berikut digunakan saat berbagi koneksi.

```
codeconnections:GetResourcePolicy
```

Gunakan bilah gulir untuk melihat seluruh tabel.


**AWS CodeConnections tindakan yang diperlukan untuk berbagi koneksi**  

| AWS CodeConnections tindakan | Izin yang diperlukan  | Sumber daya | 
| --- | --- | --- | 
|  `GetResourcePolicy`  |  `codeconnections:GetResourcePolicy` Diperlukan untuk mengakses informasi tentang kebijakan sumber daya.  | arn:aws:codeconnections: ::koneksi/ *region* *account-id* *connection-id* | 

Untuk informasi selengkapnya tentang berbagi koneksi, lihat[Berbagi koneksi dengan Akun AWS](connections-share.md).

## Menggunakan notifikasi dan koneksi di konsol
<a name="security_iam_id-based-policy-examples-console"></a>

Pengalaman notifikasi dibangun ke dalam CodeBuild, CodeCommit, CodeDeploy, dan CodePipeline konsol, serta di konsol Alat Pengembang di bilah navigasi **Pengaturan** itu sendiri. Untuk mengakses notifikasi di konsol, Anda harus memiliki salah satu kebijakan terkelola untuk layanan tersebut diterapkan, atau Anda harus memiliki seperangkat izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang AWS CodeStar Pemberitahuan dan AWS CodeConnections sumber daya di AWS akun Anda. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tersebut tidak akan berfungsi sebagaimana mestinya untuk entitas (pengguna IAM atau peran) dengan kebijakan tersebut. Untuk informasi selengkapnya tentang pemberian akses ke AWS CodeBuild AWS CodeCommit, AWS CodeDeploy,, dan AWS CodePipeline, termasuk akses ke konsol tersebut, lihat topik berikut:
+ CodeBuild: [Menggunakan kebijakan berbasis identitas](https://docs.aws.amazon.com/codebuild/latest/userguide/security_iam_id-based-policy-examples.html#managed-policies) untuk CodeBuild
+ CodeCommit: [Menggunakan kebijakan berbasis identitas](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html) untuk CodeCommit
+ AWS CodeDeploy: [Identitas dan manajemen akses untuk AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/security-iam.html)
+ CodePipeline: [Kontrol akses dengan kebijakan IAM](https://docs.aws.amazon.com/codepipeline/latest/userguide/access-control.html)

AWS CodeStar Pemberitahuan tidak memiliki kebijakan AWS terkelola. Untuk menyediakan akses ke fungsionalitas notifikasi, Anda harus menerapkan salah satu kebijakan terkelola untuk salah satu layanan yang terdaftar sebelumnya, atau Anda harus membuat kebijakan dengan tingkat izin yang ingin Anda berikan kepada pengguna atau entitas, dan kemudian melampirkan kebijakan tersebut ke pengguna, grup, atau peran yang memerlukan izin tersebut. Untuk informasi selengkapnya dan contoh, lihat berikut ini:
+ [Contoh: Kebijakan tingkat administrator untuk mengelola Pemberitahuan AWS CodeStar](security_iam_id-based-policy-examples-notifications.md#security_iam_id-based-policy-examples-notifications-full-access)
+ [Contoh: Kebijakan tingkat kontributor untuk menggunakan Notifikasi AWS CodeStar](security_iam_id-based-policy-examples-notifications.md#security_iam_id-based-policy-examples-notifications-contributor)
+ [Contoh: read-only-level Kebijakan untuk menggunakan AWS CodeStar Notifikasi](security_iam_id-based-policy-examples-notifications.md#security_iam_id-based-policy-examples-notifications-read-only).



AWS CodeConnections tidak memiliki kebijakan AWS terkelola. Anda menggunakan izin dan kombinasi izin untuk akses, seperti izin yang dirinci. [Izin untuk menyelesaikan koneksi](#permissions-reference-connections-handshake) 

Untuk informasi selengkapnya, lihat berikut ini:
+ [Contoh: Kebijakan tingkat administrator untuk mengelola AWS CodeConnections](security_iam_id-based-policy-examples-connections.md#security_iam_id-based-policy-examples-connections-fullaccess)
+ [Contoh: Kebijakan tingkat kontributor untuk menggunakan AWS CodeConnections](security_iam_id-based-policy-examples-connections.md#security_iam_id-based-policy-examples-connections-contributor)
+ [Contoh: read-only-level Kebijakan untuk menggunakan AWS CodeConnections](security_iam_id-based-policy-examples-connections.md#security_iam_id-based-policy-examples-connections-readonly)

Anda tidak perlu mengizinkan izin konsol untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai alternatif, hanya izinkan akses ke tindakan yang cocok dengan operasi API yang sedang Anda coba lakukan.

## Izinkan para pengguna untuk melihat izin mereka sendiri
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Contoh ini menunjukkan cara membuat kebijakan yang mengizinkan pengguna IAM melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau menggunakan API atau secara terprogram. AWS CLI AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```