

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

# Membuat pernyataan kebijakan IAM khusus untuk mengakses data di Amazon Neptunus
<a name="iam-data-access-policies"></a>

Pernyataan kebijakan akses data Neptunus [menggunakan tindakan akses data](iam-dp-actions.md)[, sumber daya, [dan kunci kondisi](iam-data-condition-keys.md#iam-neptune-condition-keys),](iam-data-resources.md) yang semuanya didahului oleh awalan. `neptune-db:`

**Topics**
+ [Menggunakan tindakan kueri dalam pernyataan kebijakan akses data Neptunus](#iam-data-query-actions)
+ [Tindakan IAM untuk akses data di Amazon Neptunus](iam-dp-actions.md)
+ [Jenis sumber daya IAM untuk mengakses data di Amazon Neptunus](iam-data-resources.md)
+ [Kunci kondisi IAM untuk mengakses data di Amazon Neptunus](iam-data-condition-keys.md)
+ [Membuat kebijakan akses data IAM di Amazon Neptunus](iam-data-access-examples.md)

## Menggunakan tindakan kueri dalam pernyataan kebijakan akses data Neptunus
<a name="iam-data-query-actions"></a>

Ada tiga tindakan kueri Neptunus yang dapat digunakan dalam pernyataan kebijakan akses data, yaitu,, dan. `ReadDataViaQuery` `WriteDataViaQuery` `DeleteDataViaQuery` Kueri tertentu mungkin memerlukan izin untuk melakukan lebih dari satu tindakan ini, dan mungkin tidak selalu jelas kombinasi tindakan apa yang harus diizinkan untuk menjalankan kueri.

Sebelum menjalankan kueri, Neptunus menentukan izin yang diperlukan untuk menjalankan setiap langkah kueri, dan menggabungkannya ke dalam set lengkap izin yang dibutuhkan kueri. Perhatikan bahwa set lengkap izin ini mencakup semua tindakan yang *mungkin* dilakukan kueri, yang belum tentu merupakan kumpulan tindakan yang sebenarnya akan dilakukan kueri saat dijalankan di atas data Anda.

Ini berarti bahwa untuk mengizinkan kueri tertentu dijalankan, Anda harus memberikan izin untuk setiap tindakan yang mungkin dilakukan kueri, apakah itu benar-benar melakukannya atau tidak.

Berikut adalah beberapa contoh pertanyaan Gremlin di mana ini dijelaskan secara lebih rinci:
+ 

  ```
  g.V().count()
  ```

  `g.V()`dan `count()` hanya memerlukan akses baca, jadi kueri secara keseluruhan hanya membutuhkan `ReadDataViaQuery` akses.
+ 

  ```
  g.addV()
  ```

  `addV()`perlu memeriksa apakah simpul dengan ID yang diberikan ada atau tidak sebelum memasukkan yang baru. Ini berarti membutuhkan keduanya `ReadDataViaQuery` dan `WriteDataViaQuery` akses.
+ 

  ```
  g.V('1').as('a').out('created').addE('createdBy').to('a')
  ```

  `g.V('1').as('a')`dan `out('created')` hanya memerlukan akses baca, tetapi `addE().from('a')` memerlukan akses baca dan tulis karena `addE()` perlu membaca `from` dan `to` simpul dan memeriksa apakah tepi dengan ID yang sama sudah ada sebelum menambahkan yang baru. Oleh karena itu, kueri secara keseluruhan membutuhkan keduanya `ReadDataViaQuery` dan `WriteDataViaQuery` akses.
+ 

  ```
  g.V().drop()
  ```

  `g.V()`hanya membutuhkan akses baca. `drop()`membutuhkan akses baca dan hapus karena perlu membaca simpul atau tepi sebelum menghapusnya, sehingga kueri secara keseluruhan membutuhkan keduanya `ReadDataViaQuery` dan `DeleteDataViaQuery` akses.
+ 

  ```
  g.V('1').property(single, 'key1', 'value1')
  ```

  `g.V('1')`hanya membutuhkan akses baca, tetapi `property(single, 'key1', 'value1')` membutuhkan akses baca, tulis, dan hapus. Di sini, `property()` langkah menyisipkan kunci dan nilai jika mereka belum ada di simpul, tetapi jika mereka sudah ada, itu menghapus nilai properti yang ada dan menyisipkan nilai baru di tempatnya. Oleh karena itu, query secara keseluruhan membutuhkan`ReadDataViaQuery`,`WriteDataViaQuery`, dan `DeleteDataViaQuery` akses.

  Setiap kueri yang berisi `property()` langkah akan membutuhkan`ReadDataViaQuery`,`WriteDataViaQuery`, dan `DeleteDataViaQuery` izin.

Berikut adalah beberapa contoh OpenCypher:
+ 

  ```
  MATCH (n)
  RETURN n
  ```

  Kueri ini membaca semua node dalam database dan mengembalikannya, yang hanya membutuhkan `ReadDataViaQuery` akses.
+ 

  ```
  MATCH (n:Person)
  SET n.dept = 'AWS'
  ```

  Kueri ini membutuhkan`ReadDataViaQuery`,`WriteDataViaQuery`, dan `DeleteDataViaQuery` akses. Ia membaca semua node dengan label 'Orang' dan menambahkan properti baru dengan kunci `dept` dan nilai `AWS` untuk mereka, atau jika `dept` properti sudah ada, itu menghapus nilai lama dan menyisipkan `AWS` sebagai gantinya. Juga, jika nilai yang akan ditetapkan adalah`null`, `SET` menghapus properti sama sekali.

   Karena `SET` klausa mungkin dalam beberapa kasus perlu menghapus nilai yang ada, klausa **selalu** membutuhkan `DeleteDataViaQuery` izin serta `ReadDataViaQuery` dan `WriteDataViaQuery` izin.
+ 

  ```
  MATCH (n:Person)
  DETACH DELETE n
  ```

  Kebutuhan `ReadDataViaQuery` dan `DeleteDataViaQuery` izin kueri ini. Ia menemukan semua node dengan label `Person` dan menghapusnya bersama dengan tepi yang terhubung ke node tersebut dan label dan properti terkait.
+ 

  ```
  MERGE (n:Person {name: 'John'})-[:knows]->(:Person {name: 'Peter'})
  RETURN n
  ```

  Kebutuhan `ReadDataViaQuery` dan `WriteDataViaQuery` izin kueri ini. `MERGE`Klausa cocok dengan pola tertentu atau membuatnya. Karena, penulisan dapat terjadi jika pola tidak cocok, izin menulis diperlukan serta izin baca.

# Tindakan IAM untuk akses data di Amazon Neptunus
<a name="iam-dp-actions"></a>

Perhatikan bahwa tindakan akses data Neptunus memiliki awalan, sedangkan tindakan administratif di Neptunus memiliki `neptune-db:` awalan. `rds:`

Nama Sumber Daya Amazon (ARN) untuk sumber daya data di IAM tidak sama dengan ARN yang ditetapkan ke cluster saat pembuatan. Anda harus membangun ARN seperti yang ditunjukkan [dalam Menentukan](iam-data-resources.md) sumber daya data. Sumber daya data tersebut ARNs dapat menggunakan wildcard untuk menyertakan beberapa sumber daya.

Pernyataan kebijakan akses data juga dapat menyertakan kunci QueryLanguage kondisi [neptune-db:](iam-data-condition-keys.md#iam-neptune-condition-keys) untuk membatasi akses menurut bahasa kueri.

[Dimulai dengan[Rilis: 1.2.0.0 (2022-07-21)](engine-releases-1.2.0.0.md), Neptunus mendukung pembatasan izin untuk satu atau lebih tindakan Neptunus tertentu.](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonneptune.html) Ini memberikan kontrol akses yang lebih terperinci daripada yang mungkin sebelumnya.

**penting**  
Perubahan kebijakan IAM memakan waktu hingga 10 menit untuk diterapkan ke sumber daya Neptune yang ditentukan.
Kebijakan IAM yang diterapkan ke klaster DB Neptune berlaku untuk semua contoh dalam klaster itu.

## *Tindakan akses data berbasis kueri*
<a name="iam-dp-actions-queries"></a>

**catatan**  
Tidak selalu jelas izin apa yang diperlukan untuk menjalankan kueri tertentu, karena kueri berpotensi mengambil lebih dari satu tindakan tergantung pada data yang mereka proses. Untuk informasi selengkapnya, lihat [Menggunakan tindakan kueri](iam-data-access-policies.md#iam-data-query-actions).

## `neptune-db:ReadDataViaQuery`
<a name="readdataviaquery"></a>

`ReadDataViaQuery`memungkinkan pengguna untuk membaca data dari database Neptunus dengan mengirimkan kueri.

*Grup tindakan:* baca-saja, baca-tulis.

*Kunci konteks tindakan:*`neptune-db:QueryLanguage`.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:WriteDataViaQuery`
<a name="writedataviaquery"></a>

`WriteDataViaQuery`memungkinkan pengguna untuk menulis data ke database Neptunus dengan mengirimkan kueri.

*Grup aksi:* baca-tulis.

*Kunci konteks tindakan:*`neptune-db:QueryLanguage`.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:DeleteDataViaQuery`
<a name="deletedataviaquery"></a>

`DeleteDataViaQuery`memungkinkan pengguna untuk menghapus data dari database Neptunus dengan mengirimkan kueri.

*Grup aksi:* baca-tulis.

*Kunci konteks tindakan:*`neptune-db:QueryLanguage`.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetQueryStatus`
<a name="getquerystatus"></a>

`GetQueryStatus`memungkinkan pengguna untuk memeriksa status semua kueri aktif.

*Grup tindakan:* baca-saja, baca-tulis.

*Kunci konteks tindakan:*`neptune-db:QueryLanguage`.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetStreamRecords`
<a name="getstreamrecords"></a>

`GetStreamRecords`memungkinkan pengguna untuk mengambil catatan aliran dari Neptunus.

*Grup aksi:* baca-tulis.

*Kunci konteks tindakan:*`neptune-db:QueryLanguage`.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CancelQuery`
<a name="cancelquery"></a>

`CancelQuery`memungkinkan pengguna untuk membatalkan kueri.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## *Tindakan akses data umum*
<a name="iam-dp-actions-general"></a>

## `neptune-db:GetEngineStatus`
<a name="getenginestatus"></a>

`GetEngineStatus`memungkinkan pengguna untuk memeriksa status mesin Neptunus.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetStatisticsStatus`
<a name="getstatisticsstatus"></a>

`GetStatisticsStatus`memungkinkan pengguna untuk memeriksa status statistik yang dikumpulkan untuk database.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetGraphSummary`
<a name="getgraphsummary"></a>

`GetGraphSummary`API ringkasan grafik memungkinkan Anda untuk mengambil ringkasan hanya-baca dari grafik Anda.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ManageStatistics`
<a name="managestatistics"></a>

`ManageStatistics`memungkinkan pengguna untuk mengelola pengumpulan statistik untuk database.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:DeleteStatistics`
<a name="deletestatistics"></a>

`DeleteStatistics`memungkinkan pengguna untuk menghapus semua statistik dalam database.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ResetDatabase`
<a name="resetdatabase"></a>

`ResetDatabase`memungkinkan pengguna untuk mendapatkan token yang diperlukan untuk reset dan mengatur ulang database Neptunus.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## *Tindakan akses data pemuat massal*
<a name="iam-dp-actions-loader"></a>

## `neptune-db:StartLoaderJob`
<a name="startloaderjob"></a>

`StartLoaderJob`memungkinkan pengguna untuk memulai pekerjaan bulk-loader.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetLoaderJobStatus`
<a name="getloaderjobstatus"></a>

`GetLoaderJobStatus`memungkinkan pengguna untuk memeriksa status pekerjaan bulk-loader.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ListLoaderJobs`
<a name="listloaderjobs"></a>

`ListLoaderJobs`memungkinkan pengguna untuk membuat daftar semua pekerjaan bulk-loader.

*Grup tindakan:* hanya daftar, hanya-baca, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CancelLoaderJob`
<a name="cancelloaderjob"></a>

`CancelLoaderJob`memungkinkan pengguna untuk membatalkan pekerjaan loader.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## *Tindakan akses data pembelajaran mesin*
<a name="iam-dp-actions-ml"></a>

## `neptune-db:StartMLDataProcessingJob`
<a name="startmldataprocessingjob"></a>

`StartMLDataProcessingJob`memungkinkan pengguna untuk memulai pekerjaan pemrosesan data Neptunus Neptunus.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:StartMLModelTrainingJob`
<a name="startmlmodeltrainingjob"></a>

`StartMLModelTrainingJob`memungkinkan pengguna untuk memulai pekerjaan pelatihan model ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:StartMLModelTransformJob`
<a name="startmlmodeltransformjob"></a>

`StartMLModelTransformJob`memungkinkan pengguna untuk memulai pekerjaan transformasi model ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CreateMLEndpoint`
<a name="createmlendpoint"></a>

`CreateMLEndpoint`memungkinkan pengguna untuk membuat titik akhir Neptunus ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetMLDataProcessingJobStatus`
<a name="getmldataprocessingjobstatus"></a>

`GetMLDataProcessingJobStatus`memungkinkan pengguna untuk memeriksa status pekerjaan pemrosesan data Neptunus ML.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetMLModelTrainingJobStatus`
<a name="getmlmodeltrainingjobstatus"></a>

`GetMLModelTrainingJobStatus`memungkinkan pengguna untuk memeriksa status pekerjaan pelatihan model Neptunus ML.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetMLModelTransformJobStatus`
<a name="getmlmodeltransformjobstatus"></a>

`GetMLModelTransformJobStatus`memungkinkan pengguna untuk memeriksa status pekerjaan transformasi model Neptunus ML.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:GetMLEndpointStatus`
<a name="getmlendpointstatus"></a>

`GetMLEndpointStatus`memungkinkan pengguna untuk memeriksa status titik akhir Neptunus ML.

*Grup tindakan:* baca-saja, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ListMLDataProcessingJobs`
<a name="listmldataprocessingjobs"></a>

`ListMLDataProcessingJobs`memungkinkan pengguna untuk membuat daftar semua pekerjaan pemrosesan data Neptunus Neptunus.

*Grup tindakan:* hanya daftar, hanya-baca, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ListMLModelTrainingJobs`
<a name="listmlmodeltrainingjobs"></a>

`ListMLModelTrainingJobs`memungkinkan pengguna untuk membuat daftar semua pekerjaan pelatihan model Neptunus ML.

*Grup tindakan:* hanya daftar, hanya-baca, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ListMLModelTransformJobs`
<a name="listmlmodeltransformjobs"></a>

`ListMLModelTransformJobs`memungkinkan pengguna untuk membuat daftar semua pekerjaan transformasi model ML.

*Grup tindakan:* hanya daftar, hanya-baca, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:ListMLEndpoints`
<a name="listmlendpoints"></a>

`ListMLEndpoints`memungkinkan pengguna untuk membuat daftar semua titik akhir Neptunus ML.

*Grup tindakan:* hanya daftar, hanya-baca, baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CancelMLDataProcessingJob`
<a name="cancelmldataprocessingjob"></a>

`CancelMLDataProcessingJob`memungkinkan pengguna untuk membatalkan pekerjaan pemrosesan data Neptunus Neptunus.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CancelMLModelTrainingJob`
<a name="cancelmlmodeltrainingjob"></a>

`CancelMLModelTrainingJob`memungkinkan pengguna untuk membatalkan pekerjaan pelatihan model Neptunus ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:CancelMLModelTransformJob`
<a name="cancelmlmodeltransformjob"></a>

`CancelMLModelTransformJob`memungkinkan pengguna untuk membatalkan pekerjaan transformasi model Neptunus ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

## `neptune-db:DeleteMLEndpoint`
<a name="deletemlendpoint"></a>

`DeleteMLEndpoint`memungkinkan pengguna untuk menghapus titik akhir Neptunus ML.

*Grup aksi:* baca-tulis.

*Sumber daya yang dibutuhkan:* database.

# Jenis sumber daya IAM untuk mengakses data di Amazon Neptunus
<a name="iam-data-resources"></a>

Sumber daya data, seperti tindakan data, memiliki `neptune-db:` awalan.

Dalam kebijakan akses data Neptunus, Anda menentukan cluster DB yang Anda berikan akses ke dalam ARN dengan format berikut:

```
arn:aws:neptune-db:region:account-id:cluster-resource-id/*
```

Sumber daya seperti ARN berisi bagian-bagian berikut:
+ `region`adalah AWS Wilayah untuk cluster DB Amazon Neptunus.
+ `account-id` adalah nomor rekening AWS untuk klaster DB.
+ `cluster-resource-id` adalah id sumber daya untuk klaster DB.
**penting**  
`cluster-resource-id` berbeda dari pengidentifikasi klaster. Untuk menemukan ID sumber daya cluster di Konsol Manajemen AWS Neptunus, lihat di bagian **Konfigurasi** untuk cluster DB yang dimaksud.

# Kunci kondisi IAM untuk mengakses data di Amazon Neptunus
<a name="iam-data-condition-keys"></a>

[Menggunakan kunci kondisi](security-iam-access-manage.md#iam-using-condition-keys), Anda dapat menentukan kondisi dalam pernyataan kebijakan IAM sehingga pernyataan hanya berlaku ketika kondisi benar.

Kunci kondisi yang dapat Anda gunakan dalam pernyataan kebijakan akses data Neptunus termasuk dalam kategori berikut:
+ [Kunci kondisi global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) [- Subset kunci kondisi AWS global yang didukung Neptunus dalam pernyataan kebijakan akses data tercantum di bawah ini.](#iam-data-global-condition-keys)
+ [Kunci kondisi khusus layanan — Ini adalah kunci](#iam-neptune-condition-keys) yang ditentukan oleh Neptunus khusus untuk digunakan dalam pernyataan kebijakan akses data. Saat ini hanya ada satu, [neptune-db: QueryLanguage](#neptune-db-query-language), yang memberikan akses hanya jika bahasa kueri tertentu sedang digunakan.

## AWS kunci konteks kondisi global yang didukung oleh Neptunus dalam pernyataan kebijakan akses data
<a name="iam-data-global-condition-keys"></a>

Tabel berikut mencantumkan subset [kunci konteks kondisi AWS global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) yang didukung Amazon Neptunus untuk digunakan dalam pernyataan kebijakan akses data:


**Kunci kondisi global yang dapat Anda gunakan dalam pernyataan kebijakan akses data**  

| Kunci kondisi | Deskripsi | Tipe | 
| --- | --- | --- | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-currenttime](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-currenttime) | Memfilter akses berdasarkan tanggal dan waktu permintaan saat ini. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-epochtime](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-epochtime) | Memfilter akses berdasarkan tanggal dan waktu permintaan dinyatakan sebagai nilai epoch UNIX. | Numeric | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalaccount) | Memfilter akses oleh akun tempat kepala sekolah yang meminta berada. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalarn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalarn) | Memfilter akses oleh ARN dari kepala sekolah yang membuat permintaan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalisawsservice](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalisawsservice) | Memungkinkan akses hanya jika panggilan dilakukan langsung oleh kepala AWS layanan. | Boolean | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgid) | Memfilter akses oleh pengenal AWS organisasi dalam Organizations yang menjadi milik prinsipal yang meminta. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgpaths](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principalorgpaths) | Memfilter akses oleh jalur AWS Organizations untuk kepala sekolah yang membuat permintaan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principaltag](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principaltag) | Memfilter akses dengan tag yang dilampirkan pada prinsipal yang membuat permintaan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principaltype](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-principaltype) | Memfilter akses berdasarkan jenis prinsipal yang membuat permintaan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requestedregion) | Memfilter akses oleh AWS Wilayah yang dipanggil dalam permintaan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-securetransport](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-securetransport) | Mengizinkan akses hanya jika permintaan dikirim menggunakan SSL. | Boolean | 
| [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) | Memfilter akses dengan alamat IP pemohon. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tokenissuetime](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tokenissuetime) | Memfilter akses berdasarkan tanggal dan waktu kredensyal keamanan sementara dikeluarkan. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-useragent](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-useragent) | Filter mengakses oleh aplikasi klien pemohon. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-userid](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-userid) | Memfilter akses oleh pengenal utama pemohon. | String | 
| [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-viaawsservice](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-viaawsservice) | Memungkinkan akses hanya jika AWS layanan membuat permintaan atas nama Anda. | Boolean | 

## Kunci kondisi khusus layanan Neptunus
<a name="iam-neptune-condition-keys"></a>

Neptunus mendukung kunci kondisi khusus layanan berikut untuk kebijakan IAM:


**Kunci kondisi khusus layanan Neptunus**  

| Kunci kondisi | Deskripsi | Tipe | 
| --- | --- | --- | 
| neptune-db:QueryLanguage |  Memfilter akses data dengan bahasa kueri yang digunakan. Nilai yang valid adalah:`Gremlin`,`OpenCypher`, dan`Sparql`. Tindakan yang didukung adalah`ReadDataViaQuery`,`WriteDataViaQuery`,`DeleteDataViaQuery`,`GetQueryStatus`, dan`CancelQuery`.  | String | 

# Membuat kebijakan akses data IAM di Amazon Neptunus
<a name="iam-data-access-examples"></a>

[Contoh berikut menunjukkan cara membuat kebijakan IAM khusus yang menggunakan kontrol akses berbutir halus bidang data dan APIs tindakan, yang diperkenalkan dalam rilis mesin Neptunus versi 1.2.0.0.](engine-releases-1.2.0.0.md) 

## Contoh kebijakan yang memungkinkan akses tidak terbatas ke data dalam cluster DB Neptunus
<a name="iam-auth-data-policy-example-general"></a>

Contoh kebijakan berikut memungkinkan pengguna IAM untuk terhubung ke cluster DB Neptunus menggunakan otentikasi database IAM, dan menggunakan `*` "" karakter untuk mencocokkan semua tindakan yang tersedia.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "neptune-db:*",
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

Contoh sebelumnya mencakup ARN sumber daya dalam format yang khusus untuk autentikasi IAM Neptune. Untuk membangun ARN, [lihat Menentukan](iam-data-resources.md) sumber daya data. Perhatikan bahwa ARN yang digunakan untuk otorisasi `Resource` IAM tidak sama dengan ARN yang ditetapkan ke cluster pada pembuatan.

## Contoh kebijakan yang memungkinkan akses hanya-baca ke cluster DB Neptunus
<a name="iam-auth-data-policy-example-read-only"></a>

Kebijakan berikut memberikan izin untuk akses hanya-baca penuh ke data dalam klaster DB Neptunus: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:Read*",
        "neptune-db:Get*",
        "neptune-db:List*"
      ],
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang menolak semua akses ke cluster DB Neptunus
<a name="iam-auth-data-policy-example-deny"></a>

Tindakan IAM default adalah menolak akses ke klaster DB kecuali *Efek* `Allow` diberikan. Namun, kebijakan berikut menolak semua akses ke klaster DB untuk AWS akun dan Wilayah tertentu, yang kemudian diutamakan daripada efek apa pun. `Allow`

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Action": "neptune-db:*",
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang memberikan akses baca melalui kueri
<a name="iam-auth-data-policy-example-read-query"></a>

Kebijakan berikut hanya memberikan izin untuk membaca dari klaster DB Neptunus menggunakan kueri: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "neptune-db:ReadDataViaQuery",
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang hanya mengizinkan kueri Gremlin
<a name="iam-auth-data-policy-example-gremlin-only"></a>

Kebijakan berikut menggunakan kunci `neptune-db:QueryLanguage` kondisi untuk memberikan izin untuk menanyakan Neptunus hanya menggunakan bahasa kueri Gremlin: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:ReadDataViaQuery",
        "neptune-db:WriteDataViaQuery",
        "neptune-db:DeleteDataViaQuery"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "neptune-db:QueryLanguage": "Gremlin"
        }
      }
    }
  ]
}
```

------

## Contoh kebijakan yang memungkinkan semua akses kecuali ke manajemen model Neptunus Neptunus
<a name="iam-auth-data-policy-example-all-but-ml"></a>

Kebijakan berikut memberikan akses penuh ke operasi grafik Neptunus kecuali untuk fitur manajemen model Neptunus ML:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:CancelLoaderJob",
        "neptune-db:CancelQuery",
        "neptune-db:DeleteDataViaQuery",
        "neptune-db:DeleteStatistics",
        "neptune-db:GetEngineStatus",
        "neptune-db:GetLoaderJobStatus",
        "neptune-db:GetQueryStatus",
        "neptune-db:GetStatisticsStatus",
        "neptune-db:GetStreamRecords",
        "neptune-db:ListLoaderJobs",
        "neptune-db:ManageStatistics",
        "neptune-db:ReadDataViaQuery",
        "neptune-db:ResetDatabase",
        "neptune-db:StartLoaderJob",
        "neptune-db:WriteDataViaQuery"
      ],
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang memungkinkan akses ke manajemen model Neptunus ML
<a name="iam-auth-data-policy-example-ml"></a>

Kebijakan ini memberikan akses ke fitur manajemen model Neptunus ML:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:CancelMLDataProcessingJob",
        "neptune-db:CancelMLModelTrainingJob",
        "neptune-db:CancelMLModelTransformJob",
        "neptune-db:CreateMLEndpoint",
        "neptune-db:DeleteMLEndpoint",
        "neptune-db:GetMLDataProcessingJobStatus",
        "neptune-db:GetMLEndpointStatus",
        "neptune-db:GetMLModelTrainingJobStatus",
        "neptune-db:GetMLModelTransformJobStatus",
        "neptune-db:ListMLDataProcessingJobs",
        "neptune-db:ListMLEndpoints",
        "neptune-db:ListMLModelTrainingJobs",
        "neptune-db:ListMLModelTransformJobs",
        "neptune-db:StartMLDataProcessingJob",
        "neptune-db:StartMLModelTrainingJob",
        "neptune-db:StartMLModelTransformJob"
      ],
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang memberikan akses kueri penuh
<a name="iam-auth-data-policy-example-full-query"></a>

Kebijakan berikut memberikan akses penuh ke operasi kueri grafik Neptunus, tetapi tidak ke fitur seperti reset cepat, aliran, pemuat massal, manajemen model Neptunus, dan sebagainya:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:ReadDataViaQuery",
        "neptune-db:WriteDataViaQuery",
        "neptune-db:DeleteDataViaQuery",
        "neptune-db:GetEngineStatus",
        "neptune-db:GetQueryStatus",
        "neptune-db:CancelQuery"
      ],
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------

## Contoh kebijakan yang memberikan akses penuh untuk kueri Gremlin saja
<a name="iam-auth-data-policy-example-full-gremlin-access"></a>

Kebijakan berikut memberikan akses penuh ke operasi kueri grafik Neptunus menggunakan bahasa kueri Gremlin, tetapi tidak ke kueri dalam bahasa lain, dan bukan ke fitur seperti reset cepat, aliran, pemuat massal, manajemen model Neptunus, dan sebagainya:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect": "Allow",
      "Action": [
        "neptune-db:ReadDataViaQuery",
        "neptune-db:WriteDataViaQuery",
        "neptune-db:DeleteDataViaQuery",
        "neptune-db:GetEngineStatus",
        "neptune-db:GetQueryStatus",
        "neptune-db:CancelQuery"
      ],
      "Resource": [
        "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
      ],
      "Condition": {
        "StringEquals": {
           "neptune-db:QueryLanguage":"Gremlin"
        }
      }
    }
  ]
}
```

------

## Contoh kebijakan yang memberikan akses penuh kecuali untuk reset cepat
<a name="iam-auth-data-policy-example-all-but-fast-reset"></a>

Kebijakan berikut memberikan akses penuh ke klaster DB Neptunus kecuali untuk menggunakan reset cepat:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "neptune-db:*",
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    },
    {
      "Effect": "Deny",
      "Action": "neptune-db:ResetDatabase",
      "Resource": "arn:aws:neptune-db:us-east-1:123456789012:cluster-ABCD1234EFGH5678IJKL90MNOP/*"
    }
  ]
}
```

------