

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

# Amazon Tanpa OpenSearch Server
<a name="serverless"></a>

Amazon OpenSearch Serverless adalah konfigurasi auto-scaling sesuai permintaan untuk Amazon Service. OpenSearch Tidak seperti OpenSearch domain yang disediakan, yang memerlukan manajemen kapasitas manual, koleksi OpenSearch Tanpa Server secara otomatis menskalakan sumber daya komputasi berdasarkan kebutuhan aplikasi Anda.

OpenSearch Serverless menawarkan solusi hemat biaya untuk beban kerja yang jarang, intermiten, atau tidak dapat diprediksi. Ini mengoptimalkan biaya dengan secara otomatis menskalakan kapasitas komputasi berdasarkan penggunaan aplikasi Anda. Koleksi tanpa server menggunakan volume penyimpanan berkapasitas tinggi, terdistribusi, dan sangat tersedia yang sama dengan domain Layanan yang disediakan OpenSearch .

OpenSearch Koleksi tanpa server selalu dienkripsi. Anda dapat memilih kunci enkripsi, tetapi tidak dapat menonaktifkan enkripsi. Untuk informasi selengkapnya, lihat [Enkripsi di Amazon Tanpa OpenSearch Server](serverless-encryption.md)

## Manfaat
<a name="serverless-benefits"></a>

OpenSearch Tanpa server memiliki manfaat sebagai berikut:
+ **Lebih sederhana daripada yang disediakan** - OpenSearch Tanpa server menghilangkan banyak kompleksitas pengelolaan OpenSearch cluster dan kapasitas. Ini secara otomatis mengukur dan menyetel cluster Anda, dan menangani manajemen siklus hidup shard dan indeks. Ini juga mengelola pembaruan perangkat lunak layanan dan peningkatan OpenSearch versi. Semua pembaruan dan peningkatan tidak mengganggu.
+ **Hemat biaya** — Saat Anda menggunakan OpenSearch Tanpa Server, Anda hanya membayar sumber daya yang Anda konsumsi. Ini menghilangkan kebutuhan untuk penyediaan di muka dan penyediaan berlebihan untuk beban kerja puncak.
+ **Sangat tersedia** - OpenSearch Tanpa server mendukung beban kerja produksi dengan redundansi untuk melindungi dari pemadaman Zona Ketersediaan dan kegagalan infrastruktur.
+ **Dapat Diskalakan** — OpenSearch Tanpa server secara otomatis menskalakan sumber daya untuk mempertahankan tingkat konsumsi data dan waktu respons kueri yang cepat secara konsisten.

# Apa itu Amazon Tanpa OpenSearch Server?
<a name="serverless-overview"></a>

Amazon OpenSearch Serverless adalah opsi on-demand, tanpa server untuk OpenSearch Amazon Service yang menghilangkan kompleksitas operasional penyediaan, konfigurasi, dan penyetelan cluster. OpenSearch Ini ideal untuk organisasi yang memilih untuk tidak mengelola sendiri cluster mereka atau tidak memiliki sumber daya dan keahlian khusus untuk mengoperasikan penyebaran skala besar. Dengan OpenSearch Tanpa Server, Anda dapat mencari dan menganalisis volume data yang besar tanpa mengelola infrastruktur yang mendasarinya.

*Koleksi OpenSearch * tanpa server adalah sekelompok OpenSearch indeks yang bekerja sama untuk mendukung beban kerja atau kasus penggunaan tertentu. Koleksi menyederhanakan operasi dibandingkan dengan OpenSearch cluster yang dikelola sendiri, yang memerlukan penyediaan manual.

Koleksi menggunakan penyimpanan berkapasitas tinggi, terdistribusi, dan sangat tersedia yang sama dengan domain OpenSearch Layanan yang disediakan, tetapi selanjutnya mengurangi kompleksitas dengan menghilangkan konfigurasi dan penyetelan manual. Data dalam koleksi dienkripsi dalam perjalanan. OpenSearch Serverless juga mendukung OpenSearch Dasbor, menyediakan antarmuka untuk analisis data.

Saat ini, koleksi tanpa server menjalankan OpenSearch versi 2.17.x. Saat versi baru dirilis, OpenSearch Tanpa Server secara otomatis meningkatkan koleksi untuk menggabungkan fitur baru, perbaikan bug, dan peningkatan kinerja.

OpenSearch Serverless mendukung operasi API ingest dan query yang sama dengan suite OpenSearch open source, sehingga Anda dapat terus menggunakan klien dan aplikasi yang ada. Klien Anda harus kompatibel dengan OpenSearch 2.x agar dapat bekerja dengan Tanpa OpenSearch Server. Untuk informasi selengkapnya, lihat [Menyerap data ke dalam koleksi Amazon Tanpa OpenSearch Server](serverless-clients.md).

**Topics**
+ [Kasus penggunaan untuk Tanpa OpenSearch Server](#serverless-use-cases)
+ [Cara kerjanya](#serverless-process)
+ [Memilih jenis koleksi](#serverless-usecase)
+ [Harga](#serverless-pricing)
+ [Didukung Wilayah AWS](#serverless-regions)
+ [Batasan](#serverless-limitations)
+ [Membandingkan OpenSearch Layanan dan Tanpa OpenSearch Server](serverless-comparison.md)

## Kasus penggunaan untuk Tanpa OpenSearch Server
<a name="serverless-use-cases"></a>

OpenSearch Tanpa server mendukung dua kasus penggunaan utama:
+ **Analisis log** - Segmen analisis log berfokus pada analisis volume besar data deret waktu semi-terstruktur yang dihasilkan mesin untuk wawasan operasional dan perilaku pengguna.
+ **Pencarian teks lengkap** - Segmen pencarian teks lengkap mendukung aplikasi di jaringan internal Anda (sistem manajemen konten, dokumen hukum) dan aplikasi yang menghadap ke internet, seperti pencarian konten situs web e-niaga. 

 Saat Anda membuat koleksi, Anda memilih salah satu kasus penggunaan ini. Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](#serverless-usecase).

## Cara kerjanya
<a name="serverless-process"></a>

 OpenSearch Cluster tradisional memiliki satu set instance yang melakukan operasi pengindeksan dan pencarian, dan penyimpanan indeks digabungkan erat dengan kapasitas komputasi. Sebaliknya, OpenSearch Tanpa Server menggunakan arsitektur cloud-native yang memisahkan komponen pengindeksan (ingest) dari komponen penelusuran (kueri), dengan Amazon S3 sebagai penyimpanan data utama untuk indeks. 

Arsitektur terpisah ini memungkinkan Anda menskalakan fungsi pencarian dan pengindeksan secara independen satu sama lain, dan secara independen dari data yang diindeks di S3. Arsitektur juga menyediakan isolasi untuk operasi ingest dan query sehingga mereka dapat berjalan secara bersamaan tanpa pertentangan sumber daya. 

Saat Anda menulis data ke koleksi, OpenSearch Tanpa Server mendistribusikannya ke unit komputasi *pengindeksan*. Unit komputasi pengindeksan menelan data yang masuk dan memindahkan indeks ke S3. Saat Anda melakukan penelusuran pada data pengumpulan, Rutekan OpenSearch Tanpa Server meminta ke unit komputasi *penelusuran* yang menyimpan data yang sedang ditanyakan. Unit komputasi pencarian mengunduh data yang diindeks langsung dari S3 (jika belum di-cache secara lokal), menjalankan operasi pencarian, dan melakukan agregasi. 

Gambar berikut mengilustrasikan arsitektur terpisah ini:

![\[Diagram showing indexing and search processes using compute units and Amazon S3 storage.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/Serverless.png)


OpenSearch Kapasitas komputasi tanpa server untuk konsumsi data, pencarian, dan kueri diukur dalam Compute Units (). OpenSearch OCUs Setiap OCU adalah kombinasi dari 6 GiB memori dan CPU virtual yang sesuai (vCPU), serta transfer data ke Amazon S3. Setiap OCU mencakup penyimpanan singkat panas yang cukup untuk 120 GiB data indeks.

Saat Anda membuat koleksi pertama, OpenSearch Tanpa Server membuat instance dua OCUs —satu untuk pengindeksan dan satu untuk penelusuran. Untuk memastikan ketersediaan tinggi, ia juga meluncurkan satu set node siaga di Availability Zone lain. Untuk tujuan pengembangan dan pengujian, Anda dapat menonaktifkan pengaturan **Aktifkan redundansi** untuk koleksi, yang menghilangkan dua replika siaga dan hanya membuat instance dua. OCUs Secara default, replika aktif redundan diaktifkan, yang berarti bahwa total empat OCUs dipakai untuk koleksi pertama dalam akun.

Ini OCUs ada bahkan ketika tidak ada aktivitas di titik akhir koleksi apa pun. Semua koleksi berikutnya berbagi ini OCUs. Saat Anda membuat koleksi tambahan di akun yang sama, OpenSearch Tanpa Server hanya menambahkan tambahan OCUs untuk pencarian dan konsumsi sesuai kebutuhan untuk mendukung koleksi, sesuai dengan [batas kapasitas](serverless-scaling.md#serverless-scaling-configure) yang Anda tentukan. Kapasitas turun kembali saat penggunaan komputasi Anda berkurang.

Untuk informasi tentang cara Anda ditagih untuk ini OCUs, lihat[Harga](#serverless-pricing).

## Memilih jenis koleksi
<a name="serverless-usecase"></a>

OpenSearch Serverless mendukung tiga jenis koleksi utama:

**Time series** — Segmen analisis log yang menganalisis volume besar data semi-terstruktur yang dihasilkan mesin secara real-time, memberikan wawasan tentang operasi, keamanan, perilaku pengguna, dan kinerja bisnis.

**Pencarian — Pencarian** teks lengkap yang memungkinkan aplikasi dalam jaringan internal, seperti sistem manajemen konten dan repositori dokumen hukum, serta aplikasi yang menghadap ke internet seperti pencarian situs e-commerce dan penemuan konten.

**Pencarian vektor — Pencarian** semantik pada penyematan vektor menyederhanakan manajemen data vektor dan memungkinkan pengalaman pencarian yang ditambah pembelajaran mesin (ML). Ini mendukung aplikasi AI generatif seperti chatbots, asisten pribadi, dan deteksi penipuan.

Anda memilih jenis koleksi saat pertama kali membuat koleksi:

![\[Three collection type options: Time series, Search, and Vector search for different data use cases.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-collection-type.png)


Jenis koleksi yang Anda pilih bergantung pada jenis data yang Anda rencanakan untuk dicerna ke dalam koleksi, dan bagaimana Anda berencana untuk menanyakannya. Anda tidak dapat mengubah jenis koleksi setelah Anda membuatnya.

Jenis koleksi memiliki **perbedaan** penting berikut:
+ Untuk koleksi *pencarian* dan *pencarian vektor*, semua data disimpan dalam penyimpanan panas untuk memastikan waktu respons kueri yang cepat. Koleksi *deret waktu* menggunakan kombinasi penyimpanan panas dan hangat, di mana data terbaru disimpan dalam penyimpanan panas untuk mengoptimalkan waktu respons kueri untuk data yang lebih sering diakses.
+ Untuk koleksi *penelusuran *deret waktu* dan vektor*, Anda tidak dapat mengindeks berdasarkan ID dokumen khusus atau memperbarui dengan permintaan upsert. Operasi ini dicadangkan untuk kasus penggunaan pencarian. Anda dapat memperbarui dengan ID dokumen sebagai gantinya. Untuk informasi selengkapnya, lihat [Operasi dan izin OpenSearch API yang didukung](serverless-genref.md#serverless-operations).
+ Untuk koleksi *penelusuran* dan *deret waktu*, Anda tidak dapat menggunakan indeks tipe K-nN.

## Harga
<a name="serverless-pricing"></a>

AWS menagih Anda untuk komponen OpenSearch Tanpa Server berikut:
+ Perhitungan konsumsi data
+ Pencarian dan kueri komputasi
+ Penyimpanan disimpan di Amazon S3

Satu OCU terdiri dari 6 GB RAM, vCPU yang sesuai, GP3 penyimpanan, dan transfer data ke Amazon S3. Unit terkecil yang dapat Anda tagih adalah 0,5 OCU. AWS tagihan OCU setiap jam, dengan perincian tingkat kedua. Dalam laporan akun Anda, Anda melihat entri untuk komputasi dalam OCU-jam dengan label untuk konsumsi data dan label untuk pencarian. AWS juga menagih Anda setiap bulan untuk data yang disimpan di Amazon S3. Itu tidak membebankan biaya untuk menggunakan OpenSearch Dasbor.

Saat Anda membuat koleksi dengan replika aktif yang berlebihan, Anda ditagih minimal 1 OCU (0,5 OCU × 2) untuk konsumsi, termasuk primer dan siaga, dan 1 OCU (0,5 OCU × 2) untuk penelusuran:
+ 1 OCU (0,5 OCU × 2) untuk konsumsi, termasuk primer dan siaga
+ 1 OCU (0,5 OCU × 2) untuk pencarian

Jika Anda menonaktifkan replika aktif yang berlebihan, Anda akan ditagih minimal 1 OCU (0,5 OCU x 2) untuk koleksi pertama di akun Anda. Semua koleksi berikutnya dapat membagikannya OCUs.

OpenSearch Tanpa server menambahkan tambahan OCUs dengan penambahan 1 OCU berdasarkan daya komputasi dan penyimpanan yang diperlukan untuk mendukung koleksi Anda. Anda dapat mengonfigurasi jumlah maksimum OCUs untuk akun Anda untuk mengontrol biaya.

**catatan**  
Koleksi dengan unik tidak AWS KMS keys dapat dibagikan OCUs dengan koleksi lain.

OpenSearch Upaya tanpa server untuk menggunakan sumber daya minimum yang diperlukan untuk memperhitungkan perubahan beban kerja. Jumlah yang OCUs disediakan setiap saat dapat bervariasi dan tidak tepat. Seiring waktu, algoritme yang digunakan OpenSearch Tanpa Server akan terus meningkat untuk meminimalkan penggunaan sistem dengan lebih baik.

Untuk detail harga selengkapnya, lihat [harga OpenSearch Layanan Amazon](https://aws.amazon.com/opensearch-service/pricing/).

## Didukung Wilayah AWS
<a name="serverless-regions"></a>

OpenSearch Tanpa server tersedia dalam subset OpenSearch Layanan Wilayah AWS yang tersedia di. Untuk daftar Wilayah yang didukung, lihat [titik akhir dan kuota OpenSearch Layanan Amazon](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html) di. *Referensi Umum AWS*

## Batasan
<a name="serverless-limitations"></a>

OpenSearch Tanpa server memiliki batasan sebagai berikut:
+ Beberapa operasi OpenSearch API tidak didukung. Lihat [Operasi dan izin OpenSearch API yang didukung](serverless-genref.md#serverless-operations).
+ Beberapa OpenSearch plugin tidak didukung. Lihat [OpenSearch Plugin yang didukung](serverless-genref.md#serverless-plugins).
+ Saat ini tidak ada cara untuk memigrasikan data Anda secara otomatis dari domain OpenSearch Layanan terkelola ke koleksi tanpa server. Anda harus mengindeks ulang data Anda dari domain ke koleksi.
+ Akses lintas akun ke koleksi tidak didukung. Anda tidak dapat menyertakan koleksi dari akun lain dalam enkripsi atau kebijakan akses data Anda.
+  OpenSearch Plugin kustom tidak didukung.
+ Snapshot otomatis didukung untuk koleksi Tanpa OpenSearch Server. Snapshot manual tidak didukung. Untuk informasi selengkapnya, lihat [Mencadangkan koleksi menggunakan snapshot](serverless-snapshots.md).
+ Pencarian dan replikasi Lintas Wilayah tidak didukung.
+ Ada batasan jumlah sumber daya tanpa server yang dapat Anda miliki dalam satu akun dan Wilayah. Lihat [OpenSearch Kuota tanpa server](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-limits-serverless).
+ Interval penyegaran untuk indeks dalam koleksi pencarian vektor adalah sekitar 60 detik. Interval penyegaran untuk indeks dalam penelusuran dan koleksi deret waktu kira-kira 10 detik.
+ Jumlah pecahan, jumlah interval, dan interval penyegaran tidak dapat dimodifikasi dan ditangani oleh Tanpa Server. OpenSearch Strategi sharding didasarkan pada jenis koleksi dan lalu lintas. Misalnya, pengumpulan deret waktu menskalakan pecahan primer berdasarkan kemacetan lalu lintas tulis.
+ Fitur geospasial yang tersedia pada OpenSearch versi hingga 2.1 didukung.

# Membandingkan OpenSearch Layanan dan Tanpa OpenSearch Server
<a name="serverless-comparison"></a>

Di OpenSearch Tanpa Server, beberapa konsep dan fitur berbeda dari fitur yang sesuai untuk domain Layanan yang disediakan OpenSearch . Misalnya, satu perbedaan penting adalah bahwa OpenSearch Serverless tidak memiliki konsep cluster atau node.

Tabel berikut menjelaskan bagaimana fitur dan konsep penting dalam OpenSearch Serverless berbeda dari fitur yang setara dalam domain Layanan yang disediakan OpenSearch .


| Fitur | OpenSearch Layanan | OpenSearch Tanpa server | 
| --- | --- | --- | 
|  **Domain versus koleksi**  |  Indeks disimpan di *domain*, yang merupakan cluster yang telah disediakan sebelumnya OpenSearch . Untuk informasi selengkapnya, lihat [Membuat dan mengelola domain OpenSearch Layanan Amazon](createupdatedomains.md).  |  Indeks disimpan dalam *koleksi*, yang merupakan pengelompokan logis indeks yang mewakili beban kerja atau kasus penggunaan tertentu. Untuk informasi selengkapnya, lihat [Mengelola koleksi Amazon OpenSearch Tanpa Server](serverless-manage.md).  | 
|  **Jenis node dan manajemen kapasitas**  |  Anda membangun klaster dengan tipe node yang memenuhi spesifikasi biaya dan kinerja Anda. Anda harus menghitung persyaratan penyimpanan Anda sendiri dan memilih jenis instans untuk domain Anda. Untuk informasi selengkapnya, lihat [Mengukur domain OpenSearch Layanan Amazon](sizing-domains.md).  |  OpenSearch Tanpa server secara otomatis menskalakan dan menyediakan unit komputasi tambahan untuk akun Anda berdasarkan penggunaan kapasitas Anda. Untuk informasi selengkapnya, lihat [Mengelola batas kapasitas untuk Amazon Tanpa OpenSearch Server](serverless-scaling.md).  | 
|  **Penagihan**  |  Anda membayar untuk setiap jam penggunaan instans EC2 dan untuk ukuran kumulatif volume penyimpanan EBS yang melekat pada instans Anda. Untuk informasi selengkapnya, lihat [Harga untuk OpenSearch Layanan Amazon](what-is.md#pricing).  |  Anda dikenakan biaya dalam OCU-jam untuk menghitung konsumsi data, menghitung penelusuran dan kueri, dan penyimpanan yang disimpan di S3. Untuk informasi selengkapnya, lihat [Harga](serverless-overview.md#serverless-pricing).  | 
|  **Enkripsi**  |  Enkripsi saat istirahat adalah *opsional* untuk domain. Untuk informasi selengkapnya, lihat [Enkripsi data saat istirahat untuk OpenSearch Layanan Amazon](encryption-at-rest.md).  |  Enkripsi saat istirahat *diperlukan* untuk koleksi. Untuk informasi selengkapnya, lihat [Enkripsi di Amazon Tanpa OpenSearch Server](serverless-encryption.md).  | 
|  **Kontrol akses data**  |  Akses ke data dalam domain ditentukan oleh kebijakan IAM dan kontrol akses berbutir [halus](fgac.md).  |  Akses ke data dalam koleksi ditentukan oleh [kebijakan akses data](serverless-data-access.md).  | 
|  OpenSearchOperasi yang didukung |  OpenSearch Layanan mendukung subset dari semua operasi OpenSearch API. Untuk informasi selengkapnya, lihat [Operasi yang didukung di Amazon OpenSearch Service](supported-operations.md).  |  OpenSearch Tanpa server mendukung subset operasi API yang berbeda. OpenSearch  Untuk informasi selengkapnya, lihat [Operasi dan plugin yang didukung di Amazon Tanpa Server OpenSearch](serverless-genref.md).  | 
| Masuk dasbor |  Masuk dengan nama pengguna dan kata sandi. Untuk informasi selengkapnya, lihat [Mengakses OpenSearch Dasbor sebagai pengguna utama](fgac.md#fgac-dashboards).  |  Jika Anda masuk ke AWS konsol dan menavigasi ke URL Dasbor Anda, Anda akan masuk secara otomatis. Untuk informasi selengkapnya, lihat [Mengakses Dasbor OpenSearch](serverless-dashboards.md).  | 
| APIs |  Berinteraksi secara terprogram dengan OpenSearch Layanan menggunakan operasi [API OpenSearch Layanan](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/Welcome.html).  |  [Berinteraksi secara terprogram dengan OpenSearch Tanpa Server menggunakan operasi API Tanpa Server. OpenSearch ](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/Welcome.html)  | 
| Akses jaringan |  Pengaturan jaringan untuk domain berlaku untuk titik akhir domain serta titik akhir OpenSearch Dasbor. Akses jaringan untuk keduanya digabungkan dengan erat.  |  Pengaturan jaringan untuk titik akhir domain dan titik akhir OpenSearch Dasbor dipisahkan. Anda dapat memilih untuk tidak mengonfigurasi akses jaringan untuk OpenSearch Dasbor. Untuk informasi selengkapnya, lihat [Akses jaringan untuk Amazon Tanpa OpenSearch Server](serverless-network.md).  | 
| Permintaan penandatanganan |  Gunakan klien REST tingkat OpenSearch tinggi dan rendah untuk menandatangani permintaan. Tentukan nama layanan sebagai`es`.  |  Pada saat ini, OpenSearch Tanpa Server mendukung subset klien yang OpenSearch didukung Layanan. Saat Anda menandatangani permintaan, tentukan nama layanan sebagai`aoss`. `x-amz-content-sha256`Header diperlukan. Untuk informasi selengkapnya, lihat [Menandatangani permintaan HTTP dengan klien lain](serverless-clients.md#serverless-signing).  | 
| OpenSearch upgrade versi |  Anda secara manual meng-upgrade domain Anda sebagai versi baru OpenSearch menjadi tersedia. Anda bertanggung jawab untuk memastikan bahwa domain Anda memenuhi persyaratan peningkatan, dan bahwa Anda telah mengatasi setiap perubahan yang melanggar.  |  OpenSearch Tanpa server secara otomatis meningkatkan koleksi Anda ke versi baru. OpenSearch Upgrade tidak selalu terjadi segera setelah versi baru tersedia.  | 
| Pembaruan perangkat lunak layanan |  Anda secara manual menerapkan pembaruan perangkat lunak layanan ke domain Anda saat tersedia.  |  OpenSearch Tanpa server secara otomatis memperbarui koleksi Anda untuk menggunakan perbaikan bug, fitur, dan peningkatan kinerja terbaru.  | 
| Akses VPC |  Anda dapat [menyediakan domain Anda dalam VPC](vpc.md). Anda juga dapat membuat [endpoint OpenSearch VPC yang dikelola Layanan](vpc-interface-endpoints.md) tambahan untuk mengakses domain.  |  Anda membuat satu atau beberapa titik akhir [VPC yang OpenSearch dikelola Tanpa Server](serverless-vpc.md) untuk akun Anda. Kemudian, Anda menyertakan titik akhir ini dalam [kebijakan jaringan](serverless-network.md).  | 
| Otentikasi SAMP |  Anda mengaktifkan otentikasi SAFL pada basis per domain. Untuk informasi selengkapnya, lihat [Otentikasi SAMP untuk Dasbor OpenSearch](saml.md).  |  Anda mengonfigurasi satu atau beberapa penyedia SAMP di tingkat akun, lalu Anda menyertakan pengguna dan grup terkait IDs dalam kebijakan akses data. Untuk informasi selengkapnya, lihat [Otentikasi SAMP untuk Amazon Tanpa Server OpenSearch](serverless-saml.md).  | 
| Keamanan Lapisan Transportasi (TLS) | OpenSearch Layanan mendukung TLS 1.2 tetapi disarankan Anda menggunakan TLS 1.3. | OpenSearch Serverless mendukung TLS 1.2 tetapi disarankan Anda menggunakan TLS 1.3. | 

# Tutorial: Memulai dengan Amazon Tanpa OpenSearch Server
<a name="serverless-getting-started"></a>

Tutorial ini memandu Anda melalui langkah-langkah dasar untuk mendapatkan koleksi *pencarian* Amazon OpenSearch Tanpa Server dan berjalan dengan cepat. Koleksi pencarian memungkinkan Anda untuk memberi daya pada aplikasi di jaringan internal dan aplikasi yang menghadap ke internet, seperti pencarian situs web e-commerce dan pencarian konten. 

Untuk mempelajari cara menggunakan koleksi *pencarian vektor*, lihat[Bekerja dengan koleksi pencarian vektor](serverless-vector-search.md). Untuk informasi lebih rinci tentang penggunaan koleksi, lihat [Mengelola koleksi Amazon OpenSearch Tanpa Server](serverless-manage.md) dan topik lainnya dalam panduan ini.

Anda akan menyelesaikan langkah-langkah berikut dalam tutorial ini:

1. [Konfigurasikan izin](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-getting-started.html#serverless-gsg-permissions)

1. [Buat koleksi](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-getting-started.html#serverless-gsg-create)

1. [Unggah dan cari data](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-getting-started.html#serverless-gsg-index)

1. [Hapus koleksi](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-getting-started.html#serverless-gsg-delete)
**catatan**  
Kami menyarankan Anda hanya menggunakan karakter ASCII untuk Anda. `IndexName` Jika Anda tidak menggunakan karakter ASCII untuk Anda`IndexName`, CloudWatch metrik `IndexName` in akan dikonversi ke format URL yang dikodekan untuk karakter non-ASCII.

## Langkah 1: Konfigurasikan izin
<a name="serverless-gsg-permissions"></a>

Untuk menyelesaikan tutorial ini, dan untuk menggunakan OpenSearch Tanpa Server secara umum, Anda harus memiliki izin IAM yang benar. Dalam tutorial ini, Anda akan membuat koleksi, mengunggah dan mencari data, dan kemudian menghapus koleksi.

Pengguna atau peran Anda harus memiliki [kebijakan berbasis identitas terlampir dengan izin](security-iam-serverless.md#security-iam-serverless-id-based-policies) minimum berikut:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "aoss:CreateCollection",
        "aoss:ListCollections",
        "aoss:BatchGetCollection",
        "aoss:DeleteCollection",
        "aoss:CreateAccessPolicy",
        "aoss:ListAccessPolicies",
        "aoss:UpdateAccessPolicy",
        "aoss:CreateSecurityPolicy",
        "aoss:GetSecurityPolicy",
        "aoss:UpdateSecurityPolicy",
        "iam:ListUsers",
        "iam:ListRoles"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

------

Untuk informasi selengkapnya tentang izin IAM OpenSearch Tanpa Server, lihat. [Identity and Access Management untuk Amazon OpenSearch Serverless](security-iam-serverless.md)

## Langkah 2: Buat koleksi
<a name="serverless-gsg-create"></a>

Koleksi adalah sekelompok OpenSearch indeks yang bekerja sama untuk mendukung beban kerja atau kasus penggunaan tertentu.

**Untuk membuat koleksi OpenSearch Tanpa Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. Pilih **Koleksi** di panel navigasi kiri dan pilih **Buat koleksi**.

1. Beri nama **film** koleksi.

1. Untuk jenis koleksi, pilih **Cari**. Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-overview.html#serverless-usecase).

1. Untuk **Keamanan**, pilih **Standard create**.

1. Di bawah **Enkripsi**, pilih **Gunakan Kunci milik AWS**. Ini adalah AWS KMS key yang akan digunakan OpenSearch Tanpa Server untuk mengenkripsi data Anda.

1. Di bawah **Jaringan**, konfigurasikan pengaturan jaringan untuk koleksi.
   + Untuk jenis akses, pilih **Publik**.
   + Untuk jenis sumber daya, pilih **Aktifkan akses ke OpenSearch titik akhir** dan **Aktifkan akses ke OpenSearch Dasbor**. Karena Anda akan mengunggah dan mencari data menggunakan OpenSearch Dasbor, Anda harus mengaktifkan keduanya.

1. Pilih **Berikutnya**.

1. Untuk **Mengonfigurasi akses data**, atur pengaturan akses untuk koleksi. [Kebijakan akses data](serverless-data-access.md) memungkinkan pengguna dan peran untuk mengakses data dalam koleksi. Dalam tutorial ini, kami akan memberikan satu pengguna izin yang diperlukan untuk mengindeks dan mencari data dalam koleksi *film*.

   Buat aturan tunggal yang menyediakan akses ke koleksi *film*. Beri nama aturan **Akses koleksi Film**.

1. Pilih **Tambahkan prinsipal, pengguna IAM****, dan peran**, lalu pilih pengguna atau peran yang akan Anda gunakan untuk masuk ke OpenSearch Dasbor dan mengindeks data. Pilih **Simpan**.

1. Di bawah **Izin indeks**, pilih semua izin.

1. Pilih **Berikutnya**.

1. Untuk pengaturan kebijakan akses, pilih **Buat kebijakan akses data baru** dan beri nama **film** kebijakan.

1. Pilih **Berikutnya**.

1. Tinjau pengaturan koleksi Anda dan pilih **Kirim**. Tunggu beberapa menit hingga status koleksi menjadi`Active`.

## Langkah 3: Unggah dan cari data
<a name="serverless-gsg-index"></a>

Anda dapat mengunggah data ke koleksi OpenSearch Tanpa Server menggunakan [Postman atau cURL](https://www.postman.com/downloads/). Untuk singkatnya, contoh-contoh ini menggunakan **Dev Tools dalam konsol** OpenSearch Dashboards.

**Untuk mengindeks dan mencari data dalam koleksi film**

1. Pilih **Koleksi** di panel navigasi kiri dan pilih koleksi **film** untuk membuka halaman detailnya.

1. Pilih URL OpenSearch Dasbor untuk koleksi. URL mengambil format`https://dashboards.{region}.aoss.amazonaws.com/_login/?collectionId={collection-id}`. 

1. Dalam OpenSearch Dashboards, buka panel navigasi kiri dan pilih **Dev** Tools.

1. Untuk membuat indeks tunggal yang disebut indeks *film,* kirim permintaan berikut:

   ```
   PUT movies-index 
   ```  
![\[OpenSearch Dashboards console showing PUT request for movies-index with JSON response.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-gsg-create.png)

1. Untuk mengindeks satu dokumen ke dalam *indeks film*, kirim permintaan berikut:

   ```
   PUT movies-index/_doc/1
   { 
     "title": "Shawshank Redemption",
     "genre": "Drama",
     "year": 1994
   }
   ```

1. Untuk mencari data di OpenSearch Dasbor, Anda perlu mengonfigurasi setidaknya satu pola indeks. OpenSearch menggunakan pola-pola ini untuk mengidentifikasi indeks mana yang ingin Anda analisis. Buka panel navigasi kiri, pilih **Stack Management**, pilih **Index Patterns**, dan kemudian pilih **Create index pattern**. Untuk tutorial ini, masukkan *film*.

1. Pilih **Langkah selanjutnya** dan kemudian pilih **Buat pola indeks**. Setelah pola dibuat, Anda dapat melihat berbagai bidang dokumen seperti `title` dan `genre`.

1. Untuk mulai mencari data Anda, buka panel navigasi kiri lagi dan pilih **Discover**, atau gunakan [API pencarian](https://opensearch.org/docs/latest/api-reference/search/) dalam Dev Tools.

## Menangani kesalahan
<a name="serverless-gsg-data-plane-errors"></a>

Saat menjalankan operasi indeks dan pencarian, Anda mungkin mendapatkan respons kesalahan berikut:
+ `HTTP 507`— Menunjukkan bahwa kesalahan server internal terjadi. Kesalahan ini umumnya menunjukkan bahwa unit OpenSearch komputasi (OCUs) Anda kelebihan beban oleh volume atau kompleksitas permintaan Anda. Meskipun OpenSearch tanpa server menskalakan secara otomatis untuk mengelola beban, mungkin ada penundaan dalam menerapkan sumber daya tambahan. 

  Untuk mengurangi kesalahan ini, terapkan kebijakan coba ulang backoff eksponensial. Pendekatan ini untuk sementara mengurangi tingkat permintaan untuk mengelola beban secara efektif. Untuk detail selengkapnya, lihat [Perilaku Coba](https://docs.aws.amazon.com/sdkref/latest/guide/feature-retry-behavior.html) lagi di *Panduan Referensi Alat AWS SDKs dan Alat*.
+ `HTTP 402`— Menunjukkan bahwa Anda mencapai batas kapasitas unit OpenSearch komputasi maksimum (OCU). Optimalkan beban kerja Anda untuk mengurangi penggunaan OCU atau meminta peningkatan kuota.

## Langkah 4: Hapus koleksi
<a name="serverless-gsg-delete"></a>

Karena koleksi *film* adalah untuk tujuan pengujian, pastikan untuk menghapusnya ketika Anda selesai bereksperimen.

**Untuk menghapus koleksi OpenSearch Tanpa Server**

1. Kembali ke konsol ** OpenSearch Layanan Amazon**.

1. Pilih **Koleksi** di panel navigasi kiri dan pilih koleksi **film**.

1. Pilih **Hapus** dan konfirmasikan penghapusan.

## Langkah selanjutnya
<a name="serverless-gsg-next"></a>

Sekarang setelah Anda tahu cara membuat koleksi dan indeks data, Anda mungkin ingin mencoba beberapa latihan berikut:
+ Lihat opsi lanjutan lainnya untuk membuat koleksi. Untuk informasi selengkapnya, lihat [Mengelola koleksi Amazon OpenSearch Tanpa Server](serverless-manage.md).
+ Pelajari cara mengonfigurasi kebijakan keamanan untuk mengelola keamanan koleksi dalam skala besar. Untuk informasi selengkapnya, lihat [Ikhtisar keamanan di Amazon Tanpa OpenSearch Server](serverless-security.md).
+ Temukan cara lain untuk mengindeks data ke dalam koleksi. Lihat informasi yang lebih lengkap di [Menyerap data ke dalam koleksi Amazon Tanpa OpenSearch Server](serverless-clients.md).

# Koleksi Amazon OpenSearch Tanpa Server
<a name="serverless-collections"></a>

*Koleksi* di Amazon OpenSearch Tanpa Server adalah pengelompokan logis dari satu atau lebih indeks yang mewakili beban kerja analitik. OpenSearch Tanpa server secara otomatis mengelola dan menyetel koleksi, membutuhkan input manual minimal.

**Topics**
+ [Mengelola koleksi Amazon OpenSearch Tanpa Server](serverless-manage.md)
+ [Bekerja dengan koleksi pencarian vektor](serverless-vector-search.md)
+ [Menggunakan kebijakan siklus hidup data dengan Amazon Serverless OpenSearch](serverless-lifecycle.md)
+ [Menggunakan AWS SDKs untuk berinteraksi dengan Amazon Tanpa OpenSearch Server](serverless-sdk.md)
+ [Menggunakan CloudFormation untuk membuat koleksi Amazon OpenSearch Tanpa Server](serverless-cfn.md)
+ [Mencadangkan koleksi menggunakan snapshot](serverless-snapshots.md)
+ [Dukungan Codec Zstandard di Amazon Tanpa Server OpenSearch](serverless-zstd-compression.md)
+ [Simpan Penyimpanan dengan Menggunakan Sumber Derived](serverless-derived-source.md)

# Mengelola koleksi Amazon OpenSearch Tanpa Server
<a name="serverless-manage"></a>

*Koleksi* di Amazon OpenSearch Tanpa Server adalah pengelompokan logis dari satu atau lebih indeks yang mewakili beban kerja analitik. OpenSearch Tanpa server secara otomatis mengelola dan menyetel koleksi, membutuhkan input manual minimal.

**Topics**
+ [Mengkonfigurasi izin untuk koleksi](serverless-collection-permissions.md)
+ [Pengayaan semantik otomatis untuk Tanpa Server](serverless-semantic-enrichment.md)
+ [Membuat koleksi](serverless-create.md)
+ [Mengakses Dasbor OpenSearch](serverless-dashboards.md)
+ [Melihat koleksi](serverless-list.md)
+ [Menghapus koleksi](serverless-delete.md)

# Mengkonfigurasi izin untuk koleksi
<a name="serverless-collection-permissions"></a>

OpenSearch Tanpa server menggunakan izin berikut AWS Identity and Access Management (IAM) untuk membuat dan mengelola koleksi. Anda dapat menentukan kondisi IAM untuk membatasi pengguna ke koleksi tertentu.
+ `aoss:CreateCollection`— Buat koleksi.
+ `aoss:ListCollections`— Daftar koleksi di akun saat ini.
+ `aoss:BatchGetCollection`— Dapatkan detail tentang satu atau lebih koleksi.
+ `aoss:UpdateCollection`— Memodifikasi koleksi.
+ `aoss:DeleteCollection`— Hapus koleksi.

Contoh kebijakan akses berbasis identitas berikut memberikan izin minimum yang diperlukan bagi pengguna untuk mengelola satu koleksi bernama: `Logs`

```
[
   {
      "Sid":"Allows managing logs collections",
      "Effect":"Allow",
      "Action":[
         "aoss:CreateCollection",
         "aoss:ListCollections",
         "aoss:BatchGetCollection",
         "aoss:UpdateCollection",
         "aoss:DeleteCollection",
         "aoss:CreateAccessPolicy",
         "aoss:CreateSecurityPolicy"
      ],
      "Resource":"*",
      "Condition":{
         "StringEquals":{
            "aoss:collection":"Logs"
         }
      }
   }
]
```

`aoss:CreateAccessPolicy`dan `aoss:CreateSecurityPolicy` disertakan karena kebijakan enkripsi, jaringan, dan akses data diperlukan agar koleksi berfungsi dengan baik. Untuk informasi selengkapnya, lihat [Identity and Access Management untuk Amazon OpenSearch Serverless](security-iam-serverless.md).

**catatan**  
Jika Anda membuat koleksi pertama di akun Anda, Anda juga memerlukan `iam:CreateServiceLinkedRole` izin. Untuk informasi selengkapnya, lihat [Menggunakan peran terkait layanan untuk membuat OpenSearch koleksi Tanpa Server](serverless-service-linked-roles.md).

# Pengayaan semantik otomatis untuk Tanpa Server
<a name="serverless-semantic-enrichment"></a>

## Pengantar
<a name="serverless-semantic-enrichment-intro"></a>

Fitur pengayaan semantik otomatis dapat membantu meningkatkan relevansi pencarian hingga 20% dibandingkan pencarian leksikal. Pengayaan semantik otomatis menghilangkan beban berat yang tidak terdiferensiasi dalam mengelola infrastruktur model ML (machine learning) Anda sendiri dan integrasi dengan mesin pencari. Fitur ini tersedia untuk ketiga jenis koleksi tanpa server: Pencarian, Seri Waktu, dan Vektor.

## Apa itu pencarian semantik
<a name="serverless-semantic-enrichment-whats-is"></a>

 Mesin pencari tradisional mengandalkan word-to-word pencocokan (disebut sebagai pencarian leksikal) untuk menemukan hasil kueri. Meskipun ini bekerja dengan baik untuk pertanyaan tertentu seperti nomor model televisi, ia berjuang dengan pencarian yang lebih abstrak. Misalnya, ketika mencari “sepatu untuk pantai,” pencarian leksikal hanya cocok dengan kata-kata individual “sepatu,” “pantai,” “untuk,” dan “yang” dalam item katalog, berpotensi kehilangan produk yang relevan seperti “sandal kedap air” atau “alas kaki selancar” yang tidak mengandung istilah pencarian yang tepat.

 Pencarian semantik mengembalikan hasil kueri yang menggabungkan tidak hanya pencocokan kata kunci, tetapi maksud dan arti kontekstual dari pencarian pengguna. Misalnya, jika pengguna mencari “cara mengobati sakit kepala,” sistem pencarian semantik mungkin mengembalikan hasil berikut: 
+ Obat migrain
+ Teknik manajemen nyeri
+ Over-the-counter pereda nyeri 

## Detail model dan tolok ukur kinerja
<a name="serverless-semantic-enrichment-model-detail"></a>

 Meskipun fitur ini menangani kompleksitas teknis di balik layar tanpa mengekspos model yang mendasarinya, kami memberikan transparansi melalui deskripsi model singkat dan hasil benchmark untuk membantu Anda membuat keputusan berdasarkan informasi tentang adopsi fitur dalam beban kerja penting Anda.

 Pengayaan semantik otomatis menggunakan model sparse pra-terlatih yang dikelola layanan yang bekerja secara efektif tanpa memerlukan penyesuaian khusus. Model menganalisis bidang yang Anda tentukan, memperluasnya menjadi vektor jarang berdasarkan asosiasi yang dipelajari dari beragam data pelatihan. Istilah yang diperluas dan bobot signifikansinya disimpan dalam format indeks Lucene asli untuk pengambilan yang efisien. Kami telah mengoptimalkan proses ini menggunakan [mode khusus dokumen, di mana pengkodean hanya](https://docs.opensearch.org/docs/latest/vector-search/ai-search/neural-sparse-with-pipelines/#step-1a-choose-the-search-mode) terjadi selama konsumsi data. Kueri penelusuran hanya diberi token daripada diproses melalui model yang jarang, membuat solusinya hemat biaya dan berkinerja. 

 Validasi kinerja kami selama pengembangan fitur menggunakan kumpulan data pengambilan bagian [MS MARCO](https://huggingface.co/datasets/BeIR/msmarco), yang menampilkan bagian rata-rata 334 karakter. Untuk penilaian relevansi, kami mengukur rata-rata Normalized Discounted Cumulative Gain (NDCG) untuk 10 hasil pencarian pertama (ndcg @10) pada tolok ukur [BEIR](https://github.com/beir-cellar/beir) untuk konten bahasa Inggris dan rata-rata ndcg @10 di MIRACL untuk konten multibahasa. [Kami menilai latensi melalui pengukuran sisi klien, persentil ke-90 (p90) dan respons pencarian p90 mengambil nilai.](https://github.com/beir-cellar/beir) Tolok ukur ini memberikan indikator kinerja dasar untuk relevansi pencarian dan waktu respons. Berikut adalah nomor tolok ukur utama - 
+ Bahasa Inggris - Peningkatan relevansi 20% dibandingkan pencarian leksikal. Ini juga menurunkan latensi pencarian P90 sebesar 7,7% dibandingkan pencarian leksikal (BM25 adalah 26 ms, dan pengayaan semantik otomatis adalah 24 ms).
+ Multi-bahasa - Peningkatan relevansi 105% dibandingkan pencarian leksikal, sedangkan latensi pencarian P90 meningkat 38,4% dibandingkan pencarian leksikal (BM25 adalah 26 ms, dan pengayaan semantik otomatis adalah 36 ms).

Mengingat sifat unik dari setiap beban kerja, kami mendorong Anda untuk mengevaluasi fitur ini di lingkungan pengembangan Anda menggunakan kriteria benchmarking Anda sendiri sebelum membuat keputusan implementasi.

## Bahasa yang Didukung
<a name="serverless-semantic-enrichment-languages"></a>

Fitur ini mendukung bahasa Inggris. Selain itu, model ini juga mendukung bahasa Arab, Bengali, China, Finlandia, Prancis, Hindi, Indonesia, Jepang, Korea, Persia, Rusia, Spanyol, Swahili, dan Telugu.

## Siapkan indeks pengayaan semantik otomatis untuk koleksi tanpa server
<a name="serverless-semantic-enrichment-index-setup"></a>

Menyiapkan indeks dengan pengayaan semantik otomatis yang diaktifkan untuk bidang teks Anda mudah, dan Anda dapat mengelolanya melalui konsol, APIs, dan CloudFormation templat selama pembuatan indeks baru. Untuk mengaktifkannya untuk indeks yang ada, Anda perlu membuat ulang indeks dengan pengayaan semantik otomatis diaktifkan untuk bidang teks. 

Pengalaman konsol - AWS Konsol memungkinkan Anda untuk dengan mudah membuat indeks dengan bidang pengayaan semantik otomatis. Setelah Anda memilih koleksi, Anda akan menemukan tombol buat indeks di bagian atas konsol. Setelah Anda mengklik tombol buat indeks, Anda akan menemukan opsi untuk menentukan bidang pengayaan semantik otomatis. Dalam satu indeks, Anda dapat memiliki kombinasi pengayaan semantik otomatis untuk bahasa Inggris dan multibahasa, serta bidang leksikal.

![\[alt text not found\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/ase-console-exp-serverless.png)


Pengalaman API - Untuk membuat indeks pengayaan semantik otomatis menggunakan AWS Command Line Interface (AWS CLI), gunakan perintah create-index: 

```
aws opensearchserverless create-index \
--id [collection_id] \
--index-name [index_name] \
--index-schema [index_body] \
```

 **Dalam contoh skema indeks berikut, bidang *title\$1semantik memiliki jenis bidang yang disetel ke *teks* dan memiliki parameter semantic\$1enrichment* disetel ke status ENABLED.** *Menyetel parameter *semantic\$1enrichment* memungkinkan pengayaan semantik otomatis pada bidang title\$1semantic.* *Anda dapat menggunakan bidang *language\$1options* untuk menentukan *bahasa Inggris atau multi-bahasa*.* 

```
    aws opensearchserverless create-index \
    --id XXXXXXXXX \
    --index-name 'product-catalog' \
    --index-schema '{
    "mappings": {
        "properties": {
            "product_id": {
                "type": "keyword"
            },
            "title_semantic": {
                "type": "text",
                "semantic_enrichment": {
                    "status": "ENABLED",
                    "language_options": "english"
                }
            },
            "title_non_semantic": {
                "type": "text"
            }
        }
    }
}'
```

Untuk menggambarkan indeks yang dibuat, gunakan perintah berikut:

```
aws opensearchserverless get-index \
--id [collection_id] \
--index-name [index_name] \
```

Anda juga dapat menggunakan CloudFormation template (Type:AWS::OpenSearchServerless::CollectionIndex) untuk membuat pencarian semantik selama penyediaan koleksi serta setelah koleksi dibuat.

## Konsumsi dan pencarian data
<a name="serverless-semantic-enrichment-data-ingest"></a>

Setelah Anda membuat indeks dengan pengayaan semantik otomatis diaktifkan, fitur ini bekerja secara otomatis selama proses penyerapan data, tidak diperlukan konfigurasi tambahan.

Penyerapan data: Saat Anda menambahkan dokumen ke indeks Anda, sistem secara otomatis:
+ Menganalisis bidang teks yang Anda tentukan untuk pengayaan semantik
+ Menghasilkan pengkodean semantik menggunakan OpenSearch model sparse yang dikelola Layanan
+ Menyimpan representasi yang diperkaya ini bersama data asli Anda

Proses ini menggunakan OpenSearch konektor HTML bawaan dan saluran pipa tertelan, yang dibuat dan dikelola secara otomatis di belakang layar.

Penelusuran: Data pengayaan semantik sudah diindeks, sehingga kueri berjalan secara efisien tanpa menjalankan model ML lagi. Ini berarti Anda mendapatkan relevansi penelusuran yang ditingkatkan tanpa overhead latensi pencarian tambahan.

## Mengkonfigurasi izin untuk pengayaan semantik otomatis
<a name="serverless-semantic-enrichment-permissions"></a>

Sebelum membuat indeks pengayaan semantik otomatis, Anda perlu mengonfigurasi izin yang diperlukan. Bagian ini menjelaskan izin yang diperlukan dan cara mengaturnya.

### Izin kebijakan IAM
<a name="iam-policy-permissions"></a>

Gunakan kebijakan AWS Identity and Access Management (IAM) berikut ini untuk memberikan izin yang diperlukan untuk bekerja dengan pengayaan semantik otomatis:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AutomaticSemanticEnrichmentPermissions",
            "Effect": "Allow",
            "Action": [
                "aoss:CreateIndex",
                "aoss:GetIndex",
                "aoss:UpdateIndex",
                "aoss:DeleteIndex",
                "aoss:APIAccessAll"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**Izin kunci**  
+ `aoss:*Index`Izin mengaktifkan manajemen indeks
+ `aoss:APIAccessAll`Izin memungkinkan operasi OpenSearch API
+ Untuk membatasi izin ke koleksi tertentu, ganti `"Resource": "*"` dengan ARN koleksi

### Konfigurasikan izin akses data
<a name="serverless-collection-permissions-data-network"></a>

Untuk menyiapkan indeks untuk pengayaan semantik otomatis, Anda harus memiliki kebijakan akses data yang sesuai yang memberikan izin untuk mengakses sumber daya indeks, pipeline, dan pengumpulan model. Untuk informasi selengkapnya tentang kebijakan akses data, lihat[Kontrol akses data untuk Amazon Tanpa OpenSearch Server](serverless-data-access.md). Untuk prosedur mengonfigurasi kebijakan akses data, lihat[Membuat kebijakan akses data (konsol)](serverless-data-access.md#serverless-data-access-console).

#### Izin akses data
<a name="serverless-collection-data-access-permissions"></a>

```
[
    {
        "Description": "Create index permission",
        "Rules": [
            {
                "ResourceType": "index",
                "Resource": ["index/collection_name/*"],
                "Permission": [
                  "aoss:CreateIndex", 
                  "aoss:DescribeIndex",
                  "aoss:UpdateIndex",
                  "aoss:DeleteIndex"
                ]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    },
    {
        "Description": "Create pipeline permission",
        "Rules": [
            {
                "ResourceType": "collection",
                "Resource": ["collection/collection_name"],
                "Permission": [
                  "aoss:CreateCollectionItems",
                  "aoss:DescribeCollectionItems"
                ]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    },
    {
        "Description": "Create model permission",
        "Rules": [
            {
                "ResourceType": "model",
                "Resource": ["model/collection_name/*"],
                "Permission": ["aoss:CreateMLResource"]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    },
]
```

#### Izin akses jaringan
<a name="serverless-collection-network-access-permissions"></a>

Untuk mengizinkan layanan APIs mengakses koleksi pribadi, Anda harus mengonfigurasi kebijakan jaringan yang mengizinkan akses yang diperlukan antara API layanan dan koleksi. Untuk informasi selengkapnya tentang kebijakan jaringan, lihat [Akses jaringan untuk Amazon Tanpa OpenSearch Server](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html).

```
[
   {
      "Description":"Enable automatic semantic enrichment in a private collection",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/collection_name"
            ]
         }
      ],
      "AllowFromPublic":false,
      "SourceServices":[
         "aoss.amazonaws.com"
      ],
   }
]
```

**Untuk mengonfigurasi izin akses jaringan untuk koleksi pribadi**

1. Masuk ke konsol OpenSearch Layanan di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Di navigasi kiri, pilih *Kebijakan jaringan*. Kemudian lakukan salah satu hal berikut:
   + Pilih nama kebijakan yang ada dan pilih *Edit*
   + Pilih *Buat kebijakan jaringan* dan konfigurasikan detail kebijakan

1. Di area *tipe Access*, pilih *Private (recommended)*, lalu pilih *AWS Service Private Access*.

1. Di kolom pencarian, pilih *Layanan*, lalu pilih *aoss.amazonaws.com*.

1. Di area *Jenis sumber daya*, pilih kotak *Aktifkan akses ke OpenSearch titik akhir*.

1. Untuk *koleksi Penelusuran, atau masukan istilah awalan tertentu*, di kolom pencarian, pilih *Nama Koleksi*. Kemudian masukkan atau pilih nama koleksi untuk dikaitkan dengan kebijakan jaringan.

1. Pilih *Buat* untuk kebijakan jaringan baru atau *Perbarui* untuk kebijakan jaringan yang ada.

## Penulisan Ulang Kueri
<a name="serverless-collection-query-rewrite"></a>

Pengayaan semantik otomatis secara otomatis mengonversi kueri “kecocokan” yang ada menjadi kueri penelusuran semantik tanpa memerlukan modifikasi kueri. Jika kueri pencocokan adalah bagian dari kueri gabungan, sistem akan melintasi struktur kueri Anda, menemukan kueri kecocokan, dan menggantinya dengan kueri jarang saraf. Saat ini, fitur tersebut hanya mendukung penggantian kueri “match”, apakah itu kueri mandiri atau bagian dari kueri gabungan. “multi\$1match” tidak didukung. Selain itu, fitur ini mendukung semua kueri gabungan untuk menggantikan kueri pencocokan bersarang mereka. Kueri majemuk meliputi: bool, boosting, constant\$1score, dis\$1max, function\$1score, dan hybrid. 

## Keterbatasan pengayaan semantik otomatis
<a name="serverless-collection-ase-limitation"></a>

Pencarian semantik otomatis paling efektif bila diterapkan pada bidang small-to-medium berukuran yang berisi konten bahasa alami, seperti judul film, deskripsi produk, ulasan, dan ringkasan. Meskipun pencarian semantik meningkatkan relevansi untuk sebagian besar kasus penggunaan, itu mungkin tidak optimal untuk skenario tertentu. Pertimbangkan batasan berikut saat memutuskan apakah akan menerapkan pengayaan semantik otomatis untuk kasus penggunaan spesifik Anda. 
+ Dokumen yang sangat panjang — Model sparse saat ini hanya memproses 8.192 token pertama dari setiap dokumen untuk bahasa Inggris. Untuk dokumen multibahasa, itu 512 token. Untuk artikel yang panjang, pertimbangkan untuk menerapkan potongan dokumen untuk memastikan pemrosesan konten lengkap.
+ Beban kerja analisis log — Pengayaan semantik secara signifikan meningkatkan ukuran indeks, yang mungkin tidak diperlukan untuk analisis log di mana pencocokan yang tepat biasanya cukup. Konteks semantik tambahan jarang meningkatkan efektivitas pencarian log yang cukup untuk membenarkan peningkatan persyaratan penyimpanan. 
+ Pengayaan semantik otomatis tidak kompatibel dengan fitur Sumber Derived. 
+ Throttling — Permintaan inferensi pengindeksan saat ini dibatasi pada 100 TPS untuk Tanpa Server. OpenSearch Ini adalah batas lunak; menjangkau AWS Support untuk batas yang lebih tinggi.

## Harga
<a name="serverless-collection-ase-pricing"></a>

 OpenSearch Tagihan tanpa server pengayaan semantik otomatis berdasarkan OpenSearch Compute Units (OCUs) yang dikonsumsi selama pembuatan vektor jarang pada waktu pengindeksan. Anda dikenakan biaya hanya untuk penggunaan aktual selama pengindeksan. Anda dapat memantau konsumsi ini menggunakan SemanticSearch OCU CloudWatch metrik Amazon. Untuk detail spesifik tentang batas token model, throughput volume per OCU, dan contoh perhitungan sampel, kunjungi Harga [ OpenSearch Layanan](https://aws.amazon.com/opensearch-service/pricing/). 

# Membuat koleksi
<a name="serverless-create"></a>

Anda dapat menggunakan konsol atau AWS CLI untuk membuat koleksi tanpa server. Langkah-langkah ini mencakup cara membuat koleksi *pencarian* atau *deret waktu*. Untuk membuat koleksi *pencarian vektor*, lihat[Bekerja dengan koleksi pencarian vektor](serverless-vector-search.md). 

**Topics**
+ [Buat koleksi (konsol)](serverless-create-console.md)
+ [Buat koleksi (CLI)](serverless-create-cli.md)

# Buat koleksi (konsol)
<a name="serverless-create-console"></a>

Gunakan prosedur di bagian ini untuk membuat koleksi dengan menggunakan Konsol Manajemen AWS. Langkah-langkah ini mencakup cara membuat koleksi *pencarian* atau *deret waktu*. Untuk membuat koleksi *pencarian vektor*, lihat[Bekerja dengan koleksi pencarian vektor](serverless-vector-search.md). 

**Topics**
+ [Konfigurasikan pengaturan koleksi](#serverless-create-console-step-2)
+ [Konfigurasikan bidang pencarian tambahan](#serverless-create-console-step-3)

## Konfigurasikan pengaturan koleksi
<a name="serverless-create-console-step-2"></a>

Gunakan prosedur berikut untuk mengonfigurasi informasi tentang koleksi Anda. 

**Untuk mengkonfigurasi pengaturan koleksi menggunakan konsol**

1. Arahkan ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah/](https://console.aws.amazon.com/aos/home/).

1. **Perluas **Tanpa Server** di panel navigasi kiri dan pilih Koleksi.** 

1. Pilih **Buat koleksi**.

1. Berikan nama dan deskripsi untuk koleksi. Versi harus memenuhi kriteria berikut:
   + Ini unik untuk akun Anda dan Wilayah AWS
   + Berisi hanya huruf kecil a-z, angka 0-9, dan tanda hubung (-)
   + Berisi antara 3 dan 32 karakter

1. Pilih jenis koleksi:
   + **Time series** — Segmen analisis log yang berfokus pada analisis volume besar data semi-terstruktur yang dihasilkan mesin. Setidaknya 24 jam data disimpan pada indeks panas, dan sisanya tetap dalam penyimpanan hangat.
   + **Pencarian — Pencarian** teks lengkap yang mendukung aplikasi di jaringan internal Anda dan aplikasi yang menghadap ke internet. Semua data pencarian disimpan dalam penyimpanan panas untuk memastikan waktu respons kueri yang cepat.
**catatan**  
Pilih opsi ini jika Anda mengaktifkan pencarian semantik otomatis, seperti yang dijelaskan dalam. [Konfigurasikan pengaturan koleksi](#serverless-create-console-step-2)
   + **Pencarian vektor — Pencarian** semantik pada penyematan vektor yang menyederhanakan manajemen data vektor. Memberdayakan pembelajaran mesin (ML) menambah pengalaman pencarian dan aplikasi AI generatif seperti chatbots, asisten pribadi, dan deteksi penipuan.

   Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](serverless-overview.md#serverless-usecase).

1. Untuk **jenis Deployment**, pilih pengaturan redundansi untuk koleksi Anda. Secara default, setiap koleksi memiliki redundansi, yang berarti bahwa pengindeksan dan pencarian OpenSearch Compute Units (OCUs) masing-masing memiliki replika siaga sendiri di Availability Zone yang berbeda. Untuk tujuan pengembangan dan pengujian, Anda dapat memilih untuk menonaktifkan redundansi, yang mengurangi jumlah OCUs koleksi Anda menjadi dua. Untuk informasi selengkapnya, lihat [Cara kerjanya](serverless-overview.md#serverless-process).

1. Untuk **Keamanan**, pilih **Standard create**.

1. Untuk **Enkripsi**, pilih AWS KMS kunci untuk mengenkripsi data Anda. OpenSearch Tanpa server memberi tahu Anda jika nama koleksi yang Anda masukkan cocok dengan pola yang ditentukan dalam kebijakan enkripsi. Anda dapat memilih untuk menyimpan kecocokan ini atau menggantinya dengan pengaturan enkripsi unik. Untuk informasi selengkapnya, lihat [Enkripsi di Amazon Tanpa OpenSearch Server](serverless-encryption.md).

1. Untuk **pengaturan akses Jaringan**, konfigurasikan akses jaringan untuk koleksi.
   + Untuk **jenis Akses**, pilih publik atau pribadi. 

     Jika Anda memilih pribadi, tentukan titik akhir VPC mana dan Layanan AWS dapat mengakses koleksi.
     + **Titik akhir VPC untuk akses — Tentukan satu atau beberapa titik** akhir VPC untuk memungkinkan akses melalui. Untuk membuat titik akhir VPC, lihat. [Akses pesawat data melalui AWS PrivateLink](serverless-vpc.md)
     + **Layanan AWS akses pribadi** — Pilih satu atau beberapa layanan yang didukung untuk memungkinkan akses ke.
   + *Untuk **tipe Sumber Daya**, pilih apakah pengguna dapat mengakses koleksi melalui *OpenSearch*titik akhir (untuk melakukan panggilan API melalui cURL, Postman, dan sebagainya), melalui OpenSearch titik akhir Dasbor (untuk bekerja dengan visualisasi dan melakukan panggilan API melalui konsol), atau keduanya.*
**catatan**  
Layanan AWS akses pribadi hanya berlaku untuk OpenSearch titik akhir, bukan ke titik akhir OpenSearch Dasbor.

   OpenSearch Tanpa server memberi tahu Anda jika nama koleksi yang Anda masukkan cocok dengan pola yang ditentukan dalam kebijakan jaringan. Anda dapat memilih untuk mempertahankan kecocokan ini atau menggantinya dengan pengaturan jaringan khusus. Untuk informasi selengkapnya, lihat [Akses jaringan untuk Amazon Tanpa OpenSearch Server](serverless-network.md).

1. (Opsional) Tambahkan satu atau lebih tag ke koleksi. Untuk informasi selengkapnya, lihat [Menandai koleksi Amazon Tanpa OpenSearch Server](tag-collection.md).

1. Pilih **Berikutnya**.

## Konfigurasikan bidang pencarian tambahan
<a name="serverless-create-console-step-3"></a>

Opsi yang Anda lihat di halaman dua alur kerja koleksi buat bergantung pada jenis koleksi yang Anda buat. Bagian ini menjelaskan cara mengonfigurasi bidang pencarian tambahan untuk setiap jenis koleksi. Bagian ini juga menjelaskan cara mengkonfigurasi pengayaan semantik otomatis. Lewati bagian mana pun yang tidak berlaku untuk jenis koleksi Anda.

**Topics**
+ [Konfigurasikan pengayaan semantik otomatis](#serverless-create-console-step-3-semantic-enrichment-fields)
+ [Konfigurasikan bidang pencarian deret waktu](#serverless-create-console-step-3-time-series-fields)
+ [Konfigurasikan bidang pencarian leksikal](#serverless-create-console-step-3-lexical-fields)
+ [Konfigurasikan bidang pencarian vektor](#serverless-create-console-step-3-vector-search-fields)

### Konfigurasikan pengayaan semantik otomatis
<a name="serverless-create-console-step-3-semantic-enrichment-fields"></a>

Saat membuat atau mengedit koleksi, Anda dapat mengonfigurasi pengayaan semantik otomatis, yang menyederhanakan implementasi dan kemampuan penelusuran semantik di Amazon Service. OpenSearch Pencarian semantik mengembalikan hasil kueri yang menggabungkan tidak hanya pencocokan kata kunci, tetapi maksud dan arti kontekstual dari pencarian pengguna. Untuk informasi selengkapnya, lihat [Pengayaan semantik otomatis untuk Tanpa Server](serverless-semantic-enrichment.md).

**Untuk mengkonfigurasi pengayaan semantik otomatis**

1. Di bagian **Detail indeks**, untuk **nama Indeks**, tentukan nama.

1. Di bagian bidang **pengayaan semantik otomatis, pilih **Tambahkan** bidang** pencarian semantik.

1. Di **bidang nama bidang Input untuk pengayaan semantik**, masukkan nama bidang yang ingin Anda perkaya.

1. **Tipe data** adalah **Teks**. Kau tak bisa mengubah ini.

1. Untuk **Bahasa**, pilih Bahasa **Inggris** atau **Multilingual**.

1. Pilih **Tambahkan bidang**.

1. Setelah Anda selesai mengonfigurasi bidang opsional untuk koleksi Anda, pilih **Berikutnya**. Tinjau perubahan Anda dan pilih **Kirim** untuk membuat koleksi.

### Konfigurasikan bidang pencarian deret waktu
<a name="serverless-create-console-step-3-time-series-fields"></a>

Opsi di bagian **bidang pencarian deret waktu** berkaitan dengan data deret waktu dan aliran data. Untuk informasi lebih lanjut tentang mata pelajaran ini, lihat[Mengelola data deret waktu di Amazon OpenSearch Service dengan aliran data](data-streams.md).

**Untuk mengkonfigurasi bidang pencarian deret waktu**

1. Di bagian **Bidang pencarian deret waktu**, pilih **bidang Tambahkan deret waktu**.

1. Untuk **nama Field**, masukkan nama.

1. Untuk **tipe Data**, pilih tipe dari daftar.

1. Pilih **Tambah bidang**

1. Setelah Anda selesai mengonfigurasi bidang opsional untuk koleksi Anda, pilih **Berikutnya**. Tinjau perubahan Anda dan pilih **Kirim** untuk membuat koleksi.

### Konfigurasikan bidang pencarian leksikal
<a name="serverless-create-console-step-3-lexical-fields"></a>

Pencarian leksikal mencari kecocokan yang tepat antara kueri penelusuran dan istilah atau kata kunci yang diindeks.

**Untuk mengkonfigurasi bidang pencarian leksikal**

1. Di bagian **Kolom pencarian leksikal**, pilih **Tambahkan bidang pencarian**.

1. Untuk **nama Field**, masukkan nama.

1. Untuk **tipe Data**, pilih tipe dari daftar.

1. Pilih **Tambah bidang**

1. Setelah Anda selesai mengonfigurasi bidang opsional untuk koleksi Anda, pilih **Berikutnya**. Tinjau perubahan Anda dan pilih **Kirim** untuk membuat koleksi.

### Konfigurasikan bidang pencarian vektor
<a name="serverless-create-console-step-3-vector-search-fields"></a>

**Untuk mengkonfigurasi bidang pencarian vektor**

1. Di bagian **Bidang vektor**, pilih **Tambahkan bidang vektor**.

1. Untuk **nama Field**, masukkan nama.

1. Untuk **Engine**, pilih jenis dari daftar.

1. Masukkan jumlah dimensi.

1. Untuk **Metrik Jarak**, pilih jenis dari daftar.

1. Setelah Anda selesai mengonfigurasi bidang opsional untuk koleksi Anda, pilih **Berikutnya**.

1. Tinjau perubahan Anda dan pilih **Kirim** untuk membuat koleksi.

# Buat koleksi (CLI)
<a name="serverless-create-cli"></a>

Gunakan prosedur di bagian ini untuk membuat koleksi OpenSearch Tanpa Server menggunakan file. AWS CLI

**Topics**
+ [Sebelum Anda mulai](#serverless-create-cli-before-you-begin)
+ [Membuat koleksi](#serverless-create-cli-creating)
+ [Membuat koleksi dengan indeks pengayaan semantik otomatis](#serverless-create-cli-automatic-semantic-enrichment)

## Sebelum Anda mulai
<a name="serverless-create-cli-before-you-begin"></a>

Sebelum Anda membuat koleksi menggunakan AWS CLI, gunakan prosedur berikut untuk membuat kebijakan yang diperlukan untuk koleksi.

**catatan**  
Dalam setiap prosedur berikut, ketika Anda menentukan nama untuk koleksi, nama harus memenuhi kriteria berikut:  
Ini unik untuk akun Anda dan Wilayah AWS
Berisi hanya huruf kecil a-z, angka 0-9, dan tanda hubung (-)
Berisi antara 3 dan 32 karakter

**Untuk membuat kebijakan yang diperlukan untuk koleksi**

1. Buka AWS CLI dan jalankan perintah berikut untuk membuat [kebijakan enkripsi](serverless-encryption.md) dengan pola sumber daya yang cocok dengan nama koleksi yang diinginkan. 

   ```
   &aws opensearchserverless create-security-policy \
     --name policy name \
     --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/collection name\"]}],\"AWSOwnedKey\":true}"
   ```

   Misalnya, jika Anda berencana memberi nama *aplikasi log* koleksi, Anda dapat membuat kebijakan enkripsi seperti ini:

   ```
   &aws opensearchserverless create-security-policy \
     --name logs-policy \
     --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AWSOwnedKey\":true}"
   ```

   Jika Anda berencana untuk menggunakan kebijakan untuk koleksi tambahan, Anda dapat membuat aturan lebih luas, seperti `collection/logs*` atau`collection/*`.

1. Jalankan perintah berikut untuk mengkonfigurasi pengaturan jaringan untuk koleksi menggunakan [kebijakan jaringan](serverless-network.md). Anda dapat membuat kebijakan jaringan setelah membuat koleksi, tetapi sebaiknya lakukan terlebih dahulu.

   ```
   &aws opensearchserverless create-security-policy \
     --name policy name \
     --type network --policy "[{\"Description\":\"description\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/collection name\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/collection name\"]}],\"AllowFromPublic\":true}]"
   ```

   Menggunakan contoh *aplikasi log sebelumnya*, Anda dapat membuat kebijakan jaringan berikut:

   ```
   &aws opensearchserverless create-security-policy \
     --name logs-policy \
     --type network --policy "[{\"Description\":\"Public access for logs collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/logs-application\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AllowFromPublic\":true}]"
   ```

## Membuat koleksi
<a name="serverless-create-cli-creating"></a>

Prosedur berikut menggunakan tindakan [CreateCollection](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateCollection.html)API untuk membuat koleksi tipe `SEARCH` atau`TIMESERIES`. Jika Anda tidak menentukan jenis koleksi dalam permintaan, defaultnya adalah. `TIMESERIES` Untuk informasi lebih lanjut tentang jenis ini, lihat[Memilih jenis koleksi](serverless-overview.md#serverless-usecase). Untuk membuat koleksi *pencarian vektor*, lihat[Bekerja dengan koleksi pencarian vektor](serverless-vector-search.md). 

Jika koleksi Anda dienkripsi dengan Kunci milik AWS, itu `kmsKeyArn` `auto` bukan ARN.

**penting**  
Setelah membuat koleksi, Anda tidak akan dapat mengaksesnya kecuali cocok dengan kebijakan akses data. Untuk informasi selengkapnya, lihat [Kontrol akses data untuk Amazon Tanpa OpenSearch Server](serverless-data-access.md).

**Untuk membuat koleksi**

1. Verifikasi bahwa Anda membuat kebijakan yang diperlukan yang dijelaskan dalam[Sebelum Anda mulai](#serverless-create-cli-before-you-begin).

1. Jalankan perintah berikut. Untuk `type` menentukan salah satu `SEARCH` atau`TIMESERIES`.

   ```
   &aws opensearchserverless create-collection --name "collection name" --type collection type --description "description"
   ```

## Membuat koleksi dengan indeks pengayaan semantik otomatis
<a name="serverless-create-cli-automatic-semantic-enrichment"></a>

Gunakan prosedur berikut untuk membuat koleksi OpenSearch Tanpa Server baru dengan indeks yang dikonfigurasi untuk pengayaan [semantik otomatis](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-semantic-enrichment.html). Prosedur ini menggunakan aksi [CreateIndex](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateIndex.html)API OpenSearch Tanpa Server.

**Untuk membuat koleksi baru dengan indeks yang dikonfigurasi untuk pengayaan semantik otomatis**

Jalankan perintah berikut untuk membuat koleksi dan indeks.

```
&aws opensearchserverless create-index \
--region Region ID \
--id collection name --index-name index name \
--index-schema \
'mapping in json'
```

Inilah contohnya.

```
&aws opensearchserverless create-index \
--region us-east-1 \
--id conversation_history --index-name conversation_history_index \
--index-schema \ 
'{
    "mappings": {
        "properties": {
            "age": {
                "type": "integer"
            },
            "name": {
                "type": "keyword"
            },
            "user_description": {
                "type": "text"
            },
            "conversation_history": {
                "type": "text",
                "semantic_enrichment": {
                    "status": "ENABLED",
                    // Specifies the sparse tokenizer for processing multi-lingual text
                    "language_option": "MULTI-LINGUAL", 
                    // If embedding_field is provided, the semantic embedding field will be set to the given name rather than original field name + "_embedding"
                    "embedding_field": "conversation_history_user_defined" 
                }
            },
            "book_title": {
                "type": "text",
                "semantic_enrichment": {
                    // No embedding_field is provided, so the semantic embedding field is set to "book_title_embedding"
                    "status": "ENABLED",
                    "language_option": "ENGLISH"
                }
            },
            "abstract": {
                "type": "text",
                "semantic_enrichment": {
                    // If no language_option is provided, it will be set to English.
                    // No embedding_field is provided, so the semantic embedding field is set to "abstract_embedding"
                    "status": "ENABLED" 
                }
            }
        }
    }
}'
```

# Mengakses Dasbor OpenSearch
<a name="serverless-dashboards"></a>

Setelah Anda membuat koleksi dengan Konsol Manajemen AWS, Anda dapat menavigasi ke URL OpenSearch Dasbor koleksi. Anda dapat menemukan URL Dasbor dengan memilih **Koleksi** di panel navigasi kiri dan memilih koleksi untuk membuka halaman detailnya. URL mengambil format`https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc`. Setelah Anda menavigasi ke URL, Anda akan secara otomatis masuk ke Dasbor.

Jika Anda sudah memiliki URL OpenSearch Dasbor yang tersedia tetapi tidak ada Konsol Manajemen AWS, memanggil URL Dasbor dari browser akan dialihkan ke konsol. Setelah Anda memasukkan AWS kredensyal Anda, Anda akan secara otomatis masuk ke Dasbor. Untuk informasi tentang mengakses koleksi untuk SAMP, lihat [Mengakses OpenSearch Dasbor dengan](serverless-saml.md#serverless-saml-dashboards) SAMP.

Batas waktu konsol OpenSearch Dasbor adalah satu jam dan tidak dapat dikonfigurasi.

**catatan**  
Pada 10 Mei 2023, OpenSearch memperkenalkan titik akhir global umum untuk OpenSearch Dasbor. Anda sekarang dapat menavigasi ke OpenSearch Dasbor di browser dengan URL yang mengambil format`https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc`. Untuk memastikan kompatibilitas mundur, kami akan terus mendukung titik akhir OpenSearch Dasbor khusus koleksi yang ada dengan formatnya. `https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards`

# Melihat koleksi
<a name="serverless-list"></a>

Anda dapat melihat koleksi yang ada Akun AWS di tab **Koleksi** di konsol OpenSearch Layanan Amazon.

Untuk daftar koleksi bersama dengan mereka IDs, kirim [ListCollections](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListCollections.html)permintaan.

```
&aws opensearchserverless list-collections
```

**Sampel respon**

```
{
   "collectionSummaries":[
      {
         "arn":"arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc",
         "id":"07tjusf2h91cunochc",
         "name":"my-collection",
         "status":"CREATING"
      }
   ]
}
```

Untuk membatasi hasil pencarian, gunakan filter koleksi. Permintaan ini memfilter respons terhadap koleksi di `ACTIVE` negara bagian: 

```
&aws opensearchserverless list-collections --collection-filters '{ "status": "ACTIVE" }'
```

Untuk mendapatkan informasi lebih rinci tentang satu atau beberapa koleksi, termasuk OpenSearch titik akhir dan titik akhir OpenSearch Dasbor, kirim permintaan: [BatchGetCollection](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_BatchGetCollection.html)

```
&aws opensearchserverless batch-get-collection --ids "07tjusf2h91cunochc" "1iu5usc4rame"
```

**catatan**  
Anda dapat memasukkan `--names` atau `--ids` dalam permintaan, tetapi tidak keduanya.

**Sampel respon**

```
{
   "collectionDetails":[
      {
         "id": "07tjusf2h91cunochc",
         "name": "my-collection",
         "status": "ACTIVE",
         "type": "SEARCH",
         "description": "",
         "arn": "arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc",
         "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab",
         "createdDate": 1667446262828,
         "lastModifiedDate": 1667446300769,
         "collectionEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com",
         "dashboardEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards"
      },
      {
         "id": "178ukvtg3i82dvopdid",
         "name": "another-collection",
         "status": "ACTIVE",
         "type": "TIMESERIES",
         "description": "",
         "arn": "arn:aws:aoss:us-east-1:123456789012:collection/178ukvtg3i82dvopdid",
         "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab",
         "createdDate": 1667446262828,
         "lastModifiedDate": 1667446300769,
         "collectionEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com",
         "dashboardEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com/_dashboards"
      }
   ],
   "collectionErrorDetails":[]
}
```

# Menghapus koleksi
<a name="serverless-delete"></a>

Menghapus koleksi akan menghapus semua data dan indeks dalam koleksi. Anda tidak dapat memulihkan koleksi setelah Anda menghapusnya.

**Untuk menghapus koleksi menggunakan konsol**

1. Dari panel **Koleksi** konsol OpenSearch Layanan Amazon, pilih koleksi yang ingin Anda hapus.

1. Pilih **Hapus** dan konfirmasikan penghapusan.

Untuk menghapus koleksi menggunakan AWS CLI, kirim [DeleteCollection](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_DeleteCollection.html)permintaan:

```
&aws opensearchserverless delete-collection --id 07tjusf2h91cunochc
```

**Sampel respon**

```
{
   "deleteCollectionDetail":{
      "id":"07tjusf2h91cunochc",
      "name":"my-collection",
      "status":"DELETING"
   }
}
```

# Bekerja dengan koleksi pencarian vektor
<a name="serverless-vector-search"></a>

Jenis koleksi *pencarian vektor* di OpenSearch Tanpa Server memberikan kemampuan pencarian kesamaan yang dapat diskalakan dan berkinerja tinggi. Ini memudahkan Anda untuk membangun pengalaman pencarian tambahan pembelajaran mesin (ML) modern dan aplikasi kecerdasan buatan (AI) generatif tanpa harus mengelola infrastruktur basis data vektor yang mendasarinya. 

Kasus penggunaan untuk koleksi pencarian vektor meliputi pencarian gambar, pencarian dokumen, pengambilan musik, rekomendasi produk, pencarian video, pencarian berbasis lokasi, deteksi penipuan, dan deteksi anomali. 

Karena mesin vektor untuk OpenSearch Tanpa Server ditenagai oleh [fitur pencarian k-nearest neighbor (k-NN)](https://opensearch.org/docs/latest/search-plugins/knn/index/) di OpenSearch, Anda mendapatkan fungsionalitas yang sama dengan kesederhanaan lingkungan tanpa server. Mesin mendukung [K-nn plugin API](https://opensearch.org/docs/latest/search-plugins/knn/api/). Dengan operasi ini, Anda dapat memanfaatkan pencarian teks lengkap, pemfilteran lanjutan, agregasi, kueri geospasial, kueri bersarang untuk pengambilan data yang lebih cepat, dan hasil pencarian yang disempurnakan.

Mesin vektor menyediakan metrik jarak seperti jarak Euclidean, kesamaan kosinus, dan kesamaan produk titik, dan dapat menampung 16.000 dimensi. Anda dapat menyimpan bidang dengan berbagai tipe data untuk metadata, seperti angka, Boolean, tanggal, kata kunci, dan geopoint. Anda juga dapat menyimpan bidang dengan teks untuk informasi deskriptif untuk menambahkan lebih banyak konteks ke vektor yang disimpan. Colocating tipe data mengurangi kompleksitas, meningkatkan pemeliharaan, dan menghindari duplikasi data, tantangan kompatibilitas versi, dan masalah lisensi. 

**catatan**  
Perhatikan informasi berikut:  
Amazon OpenSearch Serverless mendukung kuantisasi skalar 16-bit Faiss yang dapat digunakan untuk melakukan konversi antara vektor mengambang 32-bit dan 16-bit. Untuk mempelajari lebih lanjut, lihat Kuantisasi [skalar 16-bit Faiss](https://opensearch.org/docs/latest/search-plugins/knn/knn-vector-quantization/#faiss-16-bit-scalar-quantization). Anda juga dapat menggunakan vektor biner untuk mengurangi biaya memori. Untuk informasi lebih lanjut, lihat [Vektor biner](https://opensearch.org/docs/latest/field-types/supported-field-types/knn-vector#binary-vectors).
Amazon OpenSearch Serverless mendukung pencarian vektor berbasis disk. Pencarian vektor berbasis disk secara signifikan mengurangi biaya operasional untuk beban kerja vektor di lingkungan memori rendah. Untuk informasi selengkapnya, lihat [Pencarian vektor berbasis disk](https://docs.opensearch.org/2.19/vector-search/optimizing-storage/disk-based-vector-search/).

## Memulai dengan koleksi pencarian vektor
<a name="serverless-vector-tutorial"></a>

Dalam tutorial ini, Anda menyelesaikan langkah-langkah berikut untuk menyimpan, mencari, dan mengambil embeddings vektor secara real time:

1. [Konfigurasikan izin](#serverless-vector-permissions)

1. [Buat koleksi](#serverless-vector-create)

1. [Unggah dan cari data](#serverless-vector-index)

1. [Hapus koleksi](#serverless-vector-delete)

### Langkah 1: Konfigurasikan izin
<a name="serverless-vector-permissions"></a>

Untuk menyelesaikan tutorial ini (dan menggunakan OpenSearch Tanpa Server secara umum), Anda harus memiliki izin AWS Identity and Access Management (IAM) yang benar. Dalam tutorial ini, Anda membuat koleksi, mengunggah dan mencari data, dan kemudian menghapus koleksi.

Pengguna atau peran Anda harus memiliki [kebijakan berbasis identitas terlampir dengan izin](security-iam-serverless.md#security-iam-serverless-id-based-policies) minimum berikut:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "aoss:CreateCollection",
        "aoss:ListCollections",
        "aoss:BatchGetCollection",
        "aoss:DeleteCollection",
        "aoss:CreateAccessPolicy",
        "aoss:ListAccessPolicies",
        "aoss:UpdateAccessPolicy",
        "aoss:CreateSecurityPolicy",
        "iam:ListUsers",
        "iam:ListRoles"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

------

Untuk informasi selengkapnya tentang izin IAM OpenSearch Tanpa Server, lihat. [Identity and Access Management untuk Amazon OpenSearch Serverless](security-iam-serverless.md)

### Langkah 2: Buat koleksi
<a name="serverless-vector-create"></a>

*Koleksi* adalah sekelompok OpenSearch indeks yang bekerja sama untuk mendukung beban kerja atau kasus penggunaan tertentu.

**Untuk membuat koleksi OpenSearch Tanpa Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. Pilih **Koleksi** di panel navigasi kiri dan pilih **Buat koleksi**.

1. Beri nama **perumahan** koleksi.

1. Untuk jenis koleksi, pilih **Pencarian vektor**. Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](serverless-overview.md#serverless-usecase).

1. Di bawah **Jenis Deployment**, hapus **Aktifkan redundansi (replika aktif)**. Ini membuat koleksi dalam mode pengembangan atau pengujian, dan mengurangi jumlah OpenSearch Compute Units (OCUs) dalam koleksi Anda menjadi dua. Jika Anda ingin membuat lingkungan produksi dalam tutorial ini, biarkan kotak centang dipilih. 

1. Di bawah **Keamanan**, pilih **Mudah buat** untuk merampingkan konfigurasi keamanan Anda. Semua data dalam mesin vektor dienkripsi dalam perjalanan dan diam secara default. Mesin vektor mendukung izin IAM berbutir halus sehingga Anda dapat menentukan siapa yang dapat membuat, memperbarui, dan menghapus enkripsi, jaringan, koleksi, dan indeks.

1. Pilih **Berikutnya**.

1. Tinjau pengaturan koleksi Anda dan pilih **Kirim**. Tunggu beberapa menit hingga status koleksi menjadi`Active`.

### Langkah 3: Unggah dan cari data
<a name="serverless-vector-index"></a>

*Indeks* adalah kumpulan dokumen dengan skema data umum yang menyediakan cara bagi Anda untuk menyimpan, mencari, dan mengambil embeddings vektor dan bidang lainnya. [https://www.postman.com/downloads/](https://www.postman.com/downloads/) Tutorial ini menggunakan Dev Tools.

**Untuk mengindeks dan mencari data dalam koleksi perumahan**

1. Untuk membuat indeks tunggal untuk koleksi baru Anda, kirim permintaan berikut di konsol [Alat Dev](https://opensearch.org/docs/latest/dashboards/dev-tools/index-dev/). Secara default, ini menciptakan indeks dengan `nmslib` mesin dan jarak Euclidean.

   ```
   PUT housing-index
   {
      "settings": {
         "index.knn": true
      },
      "mappings": {
         "properties": {
            "housing-vector": {
               "type": "knn_vector",
               "dimension": 3
            },
            "title": {
               "type": "text"
            },
            "price": {
               "type": "long"
            },
            "location": {
               "type": "geo_point"
            }
         }
      }
   }
   ```

1. Untuk mengindeks satu dokumen ke *indeks perumahan*, kirim permintaan berikut:

   ```
   POST housing-index/_doc
   {
     "housing-vector": [
       10,
       20,
       30
     ],
     "title": "2 bedroom in downtown Seattle",
     "price": "2800",
     "location": "47.71, 122.00"
   }
   ```

1. Untuk mencari properti yang mirip dengan yang ada di indeks Anda, kirim kueri berikut:

   ```
   GET housing-index/_search
   {
       "size": 5,
       "query": {
           "knn": {
               "housing-vector": {
                   "vector": [
                       10,
                       20,
                       30
                   ],
                   "k": 5
               }
           }
       }
   }
   ```

### Langkah 4: Hapus koleksi
<a name="serverless-vector-delete"></a>

Karena koleksi *perumahan* adalah untuk tujuan pengujian, pastikan untuk menghapusnya ketika Anda selesai bereksperimen.

**Untuk menghapus koleksi OpenSearch Tanpa Server**

1. Kembali ke konsol ** OpenSearch Layanan Amazon**.

1. Pilih **Koleksi** di panel navigasi kiri dan pilih koleksi **properti**.

1. Pilih **Hapus** dan konfirmasikan penghapusan.

## Pencarian yang difilter
<a name="serverless-vector-filter"></a>

Anda dapat menggunakan filter untuk menyempurnakan hasil pencarian semantik Anda. Untuk membuat indeks dan melakukan pencarian yang difilter pada dokumen Anda, ganti [Upload dan cari data](#serverless-vector-index) di tutorial sebelumnya dengan instruksi berikut. Langkah-langkah lainnya tetap sama. Untuk informasi selengkapnya tentang filter, lihat [Penelusuran K-nn dengan](https://opensearch.org/docs/latest/search-plugins/knn/filter-search-knn/) filter.

**Untuk mengindeks dan mencari data dalam koleksi perumahan**

1. Untuk membuat indeks tunggal untuk koleksi Anda, kirim permintaan berikut di konsol [Alat Dev](https://opensearch.org/docs/latest/dashboards/dev-tools/index-dev/):

   ```
   PUT housing-index-filtered
   {
     "settings": {
       "index.knn": true
     },
     "mappings": {
       "properties": {
         "housing-vector": {
           "type": "knn_vector",
           "dimension": 3,
           "method": {
             "engine": "faiss",
             "name": "hnsw"
           }
         },
         "title": {
           "type": "text"
         },
         "price": {
           "type": "long"
         },
         "location": {
           "type": "geo_point"
         }
       }
     }
   }
   ```

1. Untuk mengindeks satu dokumen ke dalam *housing-index-filtered*, kirim permintaan berikut:

   ```
   POST housing-index-filtered/_doc
   {
     "housing-vector": [
       10,
       20,
       30
     ],
     "title": "2 bedroom in downtown Seattle",
     "price": "2800",
     "location": "47.71, 122.00"
   }
   ```

1. Untuk mencari data Anda untuk sebuah apartemen di Seattle dengan harga tertentu dan dalam jarak tertentu dari titik geografis, kirim permintaan berikut:

   ```
   GET housing-index-filtered/_search
   {
     "size": 5,
     "query": {
       "knn": {
         "housing-vector": {
           "vector": [
             0.1,
             0.2,
             0.3
           ],
           "k": 5,
           "filter": {
             "bool": {
               "must": [
                 {
                   "query_string": {
                     "query": "Find me 2 bedroom apartment in Seattle under $3000 ",
                     "fields": [
                       "title"
                     ]
                   }
                 },
                 {
                   "range": {
                     "price": {
                       "lte": 3000
                     }
                   }
                 },
                 {
                   "geo_distance": {
                     "distance": "100miles",
                     "location": {
                       "lat": 48,
                       "lon": 121
                     }
                   }
                 }
               ]
             }
           }
         }
       }
     }
   }
   ```

## Beban kerja skala miliar
<a name="serverless-vector-billion"></a>

Koleksi pencarian vektor mendukung beban kerja dengan miliaran vektor. Anda tidak perlu mengindeks ulang untuk tujuan penskalaan karena penskalaan otomatis melakukan ini untuk Anda. Jika Anda memiliki jutaan vektor (atau lebih) dengan jumlah dimensi yang tinggi dan membutuhkan lebih dari 200 OCUs, hubungi [AWS Support](https://aws.amazon.com/premiumsupport/) untuk meningkatkan OpenSearch Compute Units (OCUs) maksimum untuk akun Anda. 

## Batasan
<a name="serverless-vector-limitations"></a>

Koleksi pencarian vektor memiliki batasan sebagai berikut:
+ Koleksi pencarian vektor tidak mendukung mesin Apache Lucene ANN.
+ Koleksi pencarian vektor hanya mendukung algoritma HNSW dengan Faiss dan tidak mendukung IVF dan IVFQ.
+ Koleksi pencarian vektor tidak mendukung pemanasan, statistik, dan operasi API pelatihan model.
+ Koleksi pencarian vektor tidak mendukung skrip sebaris atau tersimpan.
+ Informasi jumlah indeks tidak tersedia di koleksi Konsol Manajemen AWS pencarian vektor. 
+ Interval penyegaran untuk indeks pada koleksi pencarian vektor adalah 60 detik.

## Langkah selanjutnya
<a name="serverless-vector-next"></a>

Sekarang setelah Anda tahu cara membuat koleksi pencarian vektor dan data indeks, Anda mungkin ingin mencoba beberapa latihan berikut:
+ Gunakan klien OpenSearch Python untuk bekerja dengan koleksi pencarian vektor. Lihat tutorial ini di [GitHub](https://github.com/opensearch-project/opensearch-py/blob/main/guides/plugins/knn.md). 
+ Gunakan klien OpenSearch Java untuk bekerja dengan koleksi pencarian vektor. Lihat tutorial ini di [GitHub](https://github.com/opensearch-project/opensearch-java/blob/main/guides/plugins/knn.md). 
+ Siapkan LangChain untuk digunakan OpenSearch sebagai penyimpanan vektor. LangChain adalah kerangka kerja open source untuk mengembangkan aplikasi yang didukung oleh model bahasa. Lihat informasi yang lebih lengkap dalam [dokumentasi LangChain ](https://python.langchain.com/docs/integrations/vectorstores/opensearch).

# Menggunakan kebijakan siklus hidup data dengan Amazon Serverless OpenSearch
<a name="serverless-lifecycle"></a>

Kebijakan siklus hidup data di Amazon Tanpa OpenSearch Server menentukan berapa lama Tanpa Server menyimpan data dalam pengumpulan OpenSearch deret waktu. Misalnya, Anda dapat menetapkan kebijakan untuk menyimpan data log selama 30 hari sebelum OpenSearch Tanpa Server menghapusnya.

Anda dapat mengonfigurasi kebijakan terpisah untuk setiap indeks dalam setiap koleksi deret waktu Akun AWS. OpenSearch Tanpa server menyimpan dokumen setidaknya selama durasi yang Anda tentukan dalam kebijakan. Kemudian menghapus dokumen secara otomatis dengan upaya terbaik, biasanya dalam waktu 48 jam atau 10% dari periode retensi, mana yang lebih lama.

Hanya koleksi deret waktu yang mendukung kebijakan siklus hidup data. Koleksi pencarian pencarian dan vektor tidak.

**Topics**
+ [Kebijakan siklus hidup data](#serverless-lifecycle-policies)
+ [Izin yang diperlukan](#serverless-lifecycle-permissions)
+ [Prioritas kebijakan](#serverless-lifecycle-precedence)
+ [Sintaksis kebijakan](#serverless-lifecycle-syntax)
+ [Membuat kebijakan siklus hidup data](#serverless-lifecycle-create)
+ [Memperbarui kebijakan siklus hidup data](#serverless-lifecycle-update)
+ [Menghapus kebijakan siklus hidup data](#serverless-lifecycle-delete)

## Kebijakan siklus hidup data
<a name="serverless-lifecycle-policies"></a>

Dalam kebijakan siklus hidup data, Anda menentukan serangkaian aturan. Kebijakan siklus hidup data memungkinkan Anda mengelola periode penyimpanan data yang terkait dengan indeks atau koleksi yang cocok dengan aturan ini. Aturan-aturan ini menentukan periode retensi untuk data dalam indeks atau kelompok indeks. Setiap aturan terdiri dari tipe sumber daya (`index`), periode retensi, dan daftar sumber daya (indeks) yang berlaku untuk periode retensi.

Anda menentukan periode retensi dengan salah satu format berikut:
+ `"MinIndexRetention": "24h"`— OpenSearch Tanpa server menyimpan data indeks untuk periode yang ditentukan dalam jam atau hari. Anda dapat mengatur periode ini menjadi dari `24h` ke`3650d`.
+ `"NoMinIndexRetention": true`— OpenSearch Tanpa server mempertahankan data indeks tanpa batas waktu.

Dalam kebijakan sampel berikut, aturan pertama menetapkan periode retensi 15 hari untuk semua indeks dalam koleksi. `marketing` Aturan kedua menetapkan bahwa semua nama indeks yang dimulai dengan `log` `finance` koleksi tidak memiliki periode retensi yang ditetapkan dan akan dipertahankan tanpa batas waktu.

```
{
   "lifeCyclePolicyDetail": {
      "type": "retention",
      "name": "my-policy",
      "policyVersion": "MTY4ODI0NTM2OTk1N18x",
      "policy": {
         "Rules": [
            {
            "ResourceType":"index",
            "Resource":[
               "index/marketing/*"
            ],
            "MinIndexRetention": "15d"
         },
         {
            "ResourceType":"index",
            "Resource":[
               "index/finance/log*"
            ],
            "NoMinIndexRetention": true
         }
         ]
      },
      "createdDate": 1688245369957,
      "lastModifiedDate": 1688245369957
   }
}
```

Dalam aturan kebijakan contoh berikut, OpenSearch Tanpa Server menyimpan data di semua indeks untuk semua koleksi dalam akun tanpa batas waktu.

```
{
   "Rules": [
      {
         "ResourceType": "index",
         "Resource": [
            "index/*/*"
         ]
      }
   ],
   "NoMinIndexRetention": true
}
```

## Izin yang diperlukan
<a name="serverless-lifecycle-permissions"></a>

Kebijakan siklus hidup untuk OpenSearch Tanpa Server menggunakan izin AWS Identity and Access Management (IAM) berikut. Anda dapat menentukan kondisi IAM untuk membatasi pengguna ke kebijakan siklus hidup data yang terkait dengan koleksi dan indeks tertentu.
+ `aoss:CreateLifecyclePolicy`— Buat kebijakan siklus hidup data.
+ `aoss:ListLifecyclePolicies`— Buat daftar semua kebijakan siklus hidup data di akun saat ini.
+ `aoss:BatchGetLifecyclePolicy`— Melihat kebijakan siklus hidup data yang terkait dengan akun atau nama kebijakan.
+ `aoss:BatchGetEffectiveLifecyclePolicy`— Melihat kebijakan siklus hidup data untuk sumber daya tertentu (`index`adalah satu-satunya sumber daya yang didukung).
+ `aoss:UpdateLifecyclePolicy`— Ubah kebijakan siklus hidup data tertentu, dan ubah setelan retensi atau sumber dayanya.
+ `aoss:DeleteLifecyclePolicy`— Hapus kebijakan siklus hidup data.

Kebijakan akses berbasis identitas berikut memungkinkan pengguna untuk melihat semua kebijakan siklus hidup data, dan memperbarui kebijakan dengan pola sumber daya: `index/application-logs`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "aoss:UpdateLifecyclePolicy"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aoss:collection": "application-logs"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "aoss:ListLifecyclePolicies",
                "aoss:BatchGetLifecyclePolicy"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Prioritas kebijakan
<a name="serverless-lifecycle-precedence"></a>

Mungkin ada situasi di mana aturan kebijakan siklus hidup data tumpang tindih, di dalam atau di seluruh kebijakan. *Ketika ini terjadi, aturan dengan nama sumber daya yang lebih spesifik atau pola untuk indeks mengesampingkan aturan dengan nama sumber daya yang lebih umum atau pola untuk setiap indeks yang umum untuk kedua aturan.*

Misalnya, dalam kebijakan berikut, dua aturan berlaku untuk indeks`index/sales/logstash`. Dalam situasi ini, aturan kedua diutamakan karena `index/sales/log*` merupakan pertandingan terpanjang. `index/sales/logstash` Oleh karena itu, OpenSearch Tanpa Server tidak menetapkan periode retensi untuk indeks.

```
{
      "Rules":[
         {
            "ResourceType":"index",
            "Resource":[
               "index/sales/*",
            ],
            "MinIndexRetention": "15d"
         },
         {
            "ResourceType":"index",
            "Resource":[
               "index/sales/log*",
            ],
            "NoMinIndexRetention": true
         }
      ]
   }
```

## Sintaksis kebijakan
<a name="serverless-lifecycle-syntax"></a>

Berikan satu atau lebih *aturan*. Aturan ini menentukan pengaturan siklus hidup data untuk indeks Tanpa OpenSearch Server Anda.

Setiap aturan berisi elemen-elemen berikut. Anda dapat memberikan `MinIndexRetention` atau `NoMinIndexRetention` dalam setiap aturan, tetapi tidak keduanya. 


| Elemen | Deskripsi | 
| --- | --- | 
| Tipe sumber daya | Jenis sumber daya yang berlaku untuk aturan tersebut. Satu-satunya opsi yang didukung untuk kebijakan siklus hidup data adalah. index | 
| Sumber Daya | Daftar and/or pola nama sumber daya. Pola terdiri dari awalan dan wildcard (\$1), yang memungkinkan izin terkait diterapkan ke beberapa sumber daya. Misalnya, index/<collection-name\$1pattern>/<index-name\$1pattern>. | 
| MinIndexRetention | Periode minimum, dalam hari (d) atau jam (h), untuk menyimpan dokumen dalam indeks. Batas bawah adalah 24h dan batas atas adalah3650d. | 
| NoMinIndexRetention | Jikatrue, OpenSearch Tanpa Server menyimpan dokumen tanpa batas waktu. | 

Dalam contoh berikut, aturan pertama berlaku untuk semua indeks di bawah `autoparts-inventory` pola (`index/autoparts-inventory/*`) dan mengharuskan data disimpan setidaknya selama 20 hari sebelum tindakan apa pun, seperti penghapusan atau pengarsipan, dapat terjadi. 

Aturan kedua menargetkan indeks yang cocok dengan `auto*/gear` pola (`index/auto*/gear`), menetapkan periode retensi minimum 24 jam.

Aturan ketiga berlaku khusus untuk `tires` indeks dan tidak memiliki periode retensi minimum, yang berarti bahwa data dalam indeks ini dapat dihapus atau diarsipkan segera atau berdasarkan kriteria lain. Aturan ini membantu mengelola retensi data indeks dengan waktu retensi yang bervariasi atau tanpa batasan retensi.

```
{
  "Rules": [
    {
      "ResourceType": "index",
      "Resource": [
        "index/autoparts-inventory/*"
      ],
      "MinIndexRetention": "20d"
    },
    {
      "ResourceType": "index",
      "Resource": [
        "index/auto*/gear"
      ],
      "MinIndexRetention": "24h"
    },
    {
      "ResourceType": "index",
      "Resource": [
        "index/autoparts-inventory/tires"
      ],
      "NoMinIndexRetention": true
    }
  ]
}
```

## Membuat kebijakan siklus hidup data
<a name="serverless-lifecycle-create"></a>

Untuk membuat kebijakan siklus hidup data, Anda menentukan aturan yang mengelola penyimpanan dan penghapusan data berdasarkan kriteria yang ditentukan. 

### Konsol
<a name="serverless-lifecycle-create-console"></a>

**Untuk membuat kebijakan siklus hidup data**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Di panel navigasi kiri, pilih Kebijakan **siklus hidup data**.

1. Pilih **Buat kebijakan siklus hidup data**.

1. Masukkan nama deskriptif untuk kebijakan tersebut.

1. Untuk **siklus hidup Data**, pilih **Tambah** dan pilih koleksi dan indeks untuk kebijakan tersebut. 

   Mulailah dengan memilih koleksi yang menjadi milik indeksnya. Kemudian, pilih indeks dari daftar atau masukkan pola indeks. Untuk memilih semua koleksi sebagai sumber, masukkan tanda bintang (`*`).

1. Untuk **penyimpanan data**, Anda dapat memilih untuk menyimpan data tanpa batas waktu, atau membatalkan pilihan **Tidak Terbatas (jangan pernah menghapus)** dan menentukan periode waktu setelah OpenSearch Tanpa Server secara otomatis menghapus data dari Amazon S3.

1. Pilih **Simpan**, lalu **Buat**.

### AWS CLI
<a name="serverless-lifecycle-create-cli"></a>

Untuk membuat kebijakan siklus hidup data menggunakan AWS CLI, gunakan [create-lifecycle-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/create-lifecycle-policy.html)perintah dengan opsi berikut:
+ `--name`- Nama kebijakan.
+ `--type`Jenis kebijakan. Saat ini, satu-satunya nilai yang tersedia adalah`retention`.
+ `--policy`— Kebijakan siklus hidup data. Parameter ini menerima kebijakan sebaris dan file.json. Anda harus menyandikan kebijakan sebaris sebagai string yang lolos JSON. Untuk memberikan kebijakan dalam file, gunakan formatnya`--policy file://my-policy.json`.

**Example**  

```
aws opensearchserverless create-lifecycle-policy \
  --name my-policy \
  --type retention \
  --policy "{\"Rules\":[{\"ResourceType\":\"index\",\"Resource\":[\"index/autoparts-inventory/*\"],\"MinIndexRetention\": \"81d\"},{\"ResourceType\":\"index\",\"Resource\":[\"index/sales/orders*\"],\"NoMinIndexRetention\":true}]}"
```

## Memperbarui kebijakan siklus hidup data
<a name="serverless-lifecycle-update"></a>

Untuk memperbarui kebijakan siklus hidup data, Anda dapat mengubah aturan yang ada untuk mencerminkan perubahan dalam persyaratan penyimpanan atau penghapusan data Anda. Ini memungkinkan Anda untuk menyesuaikan kebijakan Anda saat kebutuhan manajemen data Anda berkembang.

Mungkin ada jeda waktu beberapa menit antara saat Anda memperbarui kebijakan dan saat OpenSearch Tanpa Server mulai menerapkan periode retensi baru.

### Konsol
<a name="serverless-lifecycle-update-console"></a>

**Untuk memperbarui kebijakan siklus hidup data**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Di panel navigasi kiri, pilih Kebijakan **siklus hidup data**.

1. **Pilih kebijakan siklus hidup data yang ingin Anda perbarui, lalu pilih Edit.**

1. Ubah kebijakan menggunakan editor visual atau editor JSON.

1. Pilih **Simpan**.

### AWS CLI
<a name="serverless-lifecycle-update-cli"></a>

Untuk memperbarui kebijakan siklus hidup data menggunakan AWS CLI, gunakan perintah. [update-lifecycle-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/update-lifecycle-policy.html) 

Anda harus memasukkan `--policy-version` parameter dalam permintaan. Anda dapat mengambil versi kebijakan dengan menggunakan [batch-get-lifecycle-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/batch-get-lifecycle-policy.html)perintah [list-lifecycle-policies](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/list-lifecycle-policies.html)atau. Sebaiknya sertakan versi kebijakan terbaru untuk mencegah perubahan yang dilakukan oleh orang lain secara tidak sengaja.

Permintaan berikut memperbarui kebijakan siklus hidup data dengan dokumen JSON kebijakan baru.

**Example**  

```
aws opensearchserverless update-lifecycle-policy \
  --name my-policy \
  --type retention \
  --policy-version MTY2MzY5MTY1MDA3Ml8x \
  --policy file://my-new-policy.json
```

## Menghapus kebijakan siklus hidup data
<a name="serverless-lifecycle-delete"></a>

Saat Anda menghapus kebijakan siklus hidup data, OpenSearch Tanpa Server tidak lagi memaksakannya pada indeks yang cocok.

### Konsol
<a name="serverless-lifecycle-delete-console"></a>

**Untuk menghapus kebijakan siklus hidup data**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Di panel navigasi kiri, pilih Kebijakan **siklus hidup data**.

1. Pilih kebijakan yang ingin dihapus, lalu pilih **Hapus** dan konfirmasi penghapusan.

### AWS CLI
<a name="serverless-lifecycle-delete-cli"></a>

Untuk menghapus kebijakan siklus hidup data menggunakan AWS CLI, gunakan perintah. [delete-lifecycle-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/delete-lifecycle-policy.html)

**Example**  

```
aws opensearchserverless delete-lifecycle-policy \
  --name my-policy \
  --type retention
```

# Menggunakan AWS SDKs untuk berinteraksi dengan Amazon Tanpa OpenSearch Server
<a name="serverless-sdk"></a>

Bagian ini mencakup contoh cara menggunakan AWS SDKs untuk berinteraksi dengan Amazon Tanpa OpenSearch Server. Contoh kode ini menunjukkan cara membuat kebijakan dan koleksi keamanan, serta cara menanyakan koleksi.

**catatan**  
Saat ini kami sedang membangun contoh kode ini. Jika Anda ingin menyumbangkan contoh kode (Java, Go, dll.), Silakan buka permintaan tarik langsung di dalam [GitHub repositori](https://github.com/awsdocs/amazon-opensearch-service-developer-guide/blob/master/doc_source/serverless-sdk.md).

**Topics**
+ [Python](#serverless-sdk-python)
+ [JavaScript](#serverless-sdk-javascript)

## Python
<a name="serverless-sdk-python"></a>

Contoh skrip berikut menggunakan [AWS SDK untuk Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/opensearchserverless.html), serta klien [opensearch-py](https://pypi.org/project/opensearch-py/) untuk Python, untuk membuat kebijakan enkripsi, jaringan, dan akses data, membuat koleksi yang cocok, dan mengindeks beberapa data sampel.

Untuk menginstal dependensi yang diperlukan, jalankan perintah berikut:

```
pip install opensearch-py
pip install boto3
pip install botocore
pip install requests-aws4auth
```

Dalam skrip, ganti `Principal` elemen dengan Amazon Resource Name (ARN) dari pengguna atau peran yang menandatangani permintaan. Anda juga dapat secara opsional memodifikasi. `region`

```
from opensearchpy import OpenSearch, RequestsHttpConnection
from requests_aws4auth import AWS4Auth
import boto3
import botocore
import time

# Build the client using the default credential configuration.
# You can use the CLI and run 'aws configure' to set access key, secret
# key, and default region.

client = boto3.client('opensearchserverless')
service = 'aoss'
region = 'us-east-1'
credentials = boto3.Session().get_credentials()
awsauth = AWS4Auth(credentials.access_key, credentials.secret_key,
                   region, service, session_token=credentials.token)


def createEncryptionPolicy(client):
    """Creates an encryption policy that matches all collections beginning with tv-"""
    try:
        response = client.create_security_policy(
            description='Encryption policy for TV collections',
            name='tv-policy',
            policy="""
                {
                    \"Rules\":[
                        {
                            \"ResourceType\":\"collection\",
                            \"Resource\":[
                                \"collection\/tv-*\"
                            ]
                        }
                    ],
                    \"AWSOwnedKey\":true
                }
                """,
            type='encryption'
        )
        print('\nEncryption policy created:')
        print(response)
    except botocore.exceptions.ClientError as error:
        if error.response['Error']['Code'] == 'ConflictException':
            print(
                '[ConflictException] The policy name or rules conflict with an existing policy.')
        else:
            raise error


def createNetworkPolicy(client):
    """Creates a network policy that matches all collections beginning with tv-"""
    try:
        response = client.create_security_policy(
            description='Network policy for TV collections',
            name='tv-policy',
            policy="""
                [{
                    \"Description\":\"Public access for TV collection\",
                    \"Rules\":[
                        {
                            \"ResourceType\":\"dashboard\",
                            \"Resource\":[\"collection\/tv-*\"]
                        },
                        {
                            \"ResourceType\":\"collection\",
                            \"Resource\":[\"collection\/tv-*\"]
                        }
                    ],
                    \"AllowFromPublic\":true
                }]
                """,
            type='network'
        )
        print('\nNetwork policy created:')
        print(response)
    except botocore.exceptions.ClientError as error:
        if error.response['Error']['Code'] == 'ConflictException':
            print(
                '[ConflictException] A network policy with this name already exists.')
        else:
            raise error


def createAccessPolicy(client):
    """Creates a data access policy that matches all collections beginning with tv-"""
    try:
        response = client.create_access_policy(
            description='Data access policy for TV collections',
            name='tv-policy',
            policy="""
                [{
                    \"Rules\":[
                        {
                            \"Resource\":[
                                \"index\/tv-*\/*\"
                            ],
                            \"Permission\":[
                                \"aoss:CreateIndex\",
                                \"aoss:DeleteIndex\",
                                \"aoss:UpdateIndex\",
                                \"aoss:DescribeIndex\",
                                \"aoss:ReadDocument\",
                                \"aoss:WriteDocument\"
                            ],
                            \"ResourceType\": \"index\"
                        },
                        {
                            \"Resource\":[
                                \"collection\/tv-*\"
                            ],
                            \"Permission\":[
                                \"aoss:CreateCollectionItems\"
                            ],
                            \"ResourceType\": \"collection\"
                        }
                    ],
                    \"Principal\":[
                        \"arn:aws:iam::123456789012:role\/Admin\"
                    ]
                }]
                """,
            type='data'
        )
        print('\nAccess policy created:')
        print(response)
    except botocore.exceptions.ClientError as error:
        if error.response['Error']['Code'] == 'ConflictException':
            print(
                '[ConflictException] An access policy with this name already exists.')
        else:
            raise error


def createCollection(client):
    """Creates a collection"""
    try:
        response = client.create_collection(
            name='tv-sitcoms',
            type='SEARCH'
        )
        return(response)
    except botocore.exceptions.ClientError as error:
        if error.response['Error']['Code'] == 'ConflictException':
            print(
                '[ConflictException] A collection with this name already exists. Try another name.')
        else:
            raise error


def waitForCollectionCreation(client):
    """Waits for the collection to become active"""
    response = client.batch_get_collection(
        names=['tv-sitcoms'])
    # Periodically check collection status
    while (response['collectionDetails'][0]['status']) == 'CREATING':
        print('Creating collection...')
        time.sleep(30)
        response = client.batch_get_collection(
            names=['tv-sitcoms'])
    print('\nCollection successfully created:')
    print(response["collectionDetails"])
    # Extract the collection endpoint from the response
    host = (response['collectionDetails'][0]['collectionEndpoint'])
    final_host = host.replace("https://", "")
    indexData(final_host)


def indexData(host):
    """Create an index and add some sample data"""
    # Build the OpenSearch client
    client = OpenSearch(
        hosts=[{'host': host, 'port': 443}],
        http_auth=awsauth,
        use_ssl=True,
        verify_certs=True,
        connection_class=RequestsHttpConnection,
        timeout=300
    )
    # It can take up to a minute for data access rules to be enforced
    time.sleep(45)

    # Create index
    response = client.indices.create('sitcoms-eighties')
    print('\nCreating index:')
    print(response)

    # Add a document to the index.
    response = client.index(
        index='sitcoms-eighties',
        body={
            'title': 'Seinfeld',
            'creator': 'Larry David',
            'year': 1989
        },
        id='1',
    )
    print('\nDocument added:')
    print(response)


def main():
    createEncryptionPolicy(client)
    createNetworkPolicy(client)
    createAccessPolicy(client)
    createCollection(client)
    waitForCollectionCreation(client)


if __name__ == "__main__":
    main()
```

## JavaScript
<a name="serverless-sdk-javascript"></a>

Contoh skrip berikut menggunakan [SDK untuk JavaScript di Node.js](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-opensearchserverless/), serta klien [opensearch-js](https://www.npmjs.com/package/@opensearch-project/opensearch) untuk JavaScript, untuk membuat kebijakan enkripsi, jaringan, dan akses data, membuat koleksi yang cocok, membuat indeks, dan mengindeks beberapa data sampel.

Untuk menginstal dependensi yang diperlukan, jalankan perintah berikut:

```
npm i aws-sdk
npm i aws4
npm i @opensearch-project/opensearch
```

Dalam skrip, ganti `Principal` elemen dengan Amazon Resource Name (ARN) dari pengguna atau peran yang menandatangani permintaan. Anda juga dapat secara opsional memodifikasi. `region`

```
var AWS = require('aws-sdk');
var aws4 = require('aws4');
var {
    Client,
    Connection
} = require("@opensearch-project/opensearch");
var {
    OpenSearchServerlessClient,
    CreateSecurityPolicyCommand,
    CreateAccessPolicyCommand,
    CreateCollectionCommand,
    BatchGetCollectionCommand
} = require("@aws-sdk/client-opensearchserverless");
var client = new OpenSearchServerlessClient();

async function execute() {
    await createEncryptionPolicy(client)
    await createNetworkPolicy(client)
    await createAccessPolicy(client)
    await createCollection(client)
    await waitForCollectionCreation(client)
}

async function createEncryptionPolicy(client) {
    // Creates an encryption policy that matches all collections beginning with 'tv-'
    try {
        var command = new CreateSecurityPolicyCommand({
            description: 'Encryption policy for TV collections',
            name: 'tv-policy',
            type: 'encryption',
            policy: " \
        { \
            \"Rules\":[ \
                { \
                    \"ResourceType\":\"collection\", \
                    \"Resource\":[ \
                        \"collection\/tv-*\" \
                    ] \
                } \
            ], \
            \"AWSOwnedKey\":true \
        }"
        });
        const response = await client.send(command);
        console.log("Encryption policy created:");
        console.log(response['securityPolicyDetail']);
    } catch (error) {
        if (error.name === 'ConflictException') {
            console.log('[ConflictException] The policy name or rules conflict with an existing policy.');
        } else
            console.error(error);
    };
}

async function createNetworkPolicy(client) {
    // Creates a network policy that matches all collections beginning with 'tv-'
    try {
        var command = new CreateSecurityPolicyCommand({
            description: 'Network policy for TV collections',
            name: 'tv-policy',
            type: 'network',
            policy: " \
            [{ \
                \"Description\":\"Public access for television collection\", \
                \"Rules\":[ \
                    { \
                        \"ResourceType\":\"dashboard\", \
                        \"Resource\":[\"collection\/tv-*\"] \
                    }, \
                    { \
                        \"ResourceType\":\"collection\", \
                        \"Resource\":[\"collection\/tv-*\"] \
                    } \
                ], \
                \"AllowFromPublic\":true \
            }]"
        });
        const response = await client.send(command);
        console.log("Network policy created:");
        console.log(response['securityPolicyDetail']);
    } catch (error) {
        if (error.name === 'ConflictException') {
            console.log('[ConflictException] A network policy with that name already exists.');
        } else
            console.error(error);
    };
}

async function createAccessPolicy(client) {
    // Creates a data access policy that matches all collections beginning with 'tv-'
    try {
        var command = new CreateAccessPolicyCommand({
            description: 'Data access policy for TV collections',
            name: 'tv-policy',
            type: 'data',
            policy: " \
            [{ \
                \"Rules\":[ \
                    { \
                        \"Resource\":[ \
                            \"index\/tv-*\/*\" \
                        ], \
                        \"Permission\":[ \
                            \"aoss:CreateIndex\", \
                            \"aoss:DeleteIndex\", \
                            \"aoss:UpdateIndex\", \
                            \"aoss:DescribeIndex\", \
                            \"aoss:ReadDocument\", \
                            \"aoss:WriteDocument\" \
                        ], \
                        \"ResourceType\": \"index\" \
                    }, \
                    { \
                        \"Resource\":[ \
                            \"collection\/tv-*\" \
                        ], \
                        \"Permission\":[ \
                            \"aoss:CreateCollectionItems\" \
                        ], \
                        \"ResourceType\": \"collection\" \
                    } \
                ], \
                \"Principal\":[ \
                    \"arn:aws:iam::123456789012:role\/Admin\" \
                ] \
            }]"
        });
        const response = await client.send(command);
        console.log("Access policy created:");
        console.log(response['accessPolicyDetail']);
    } catch (error) {
        if (error.name === 'ConflictException') {
            console.log('[ConflictException] An access policy with that name already exists.');
        } else
            console.error(error);
    };
}

async function createCollection(client) {
    // Creates a collection to hold TV sitcoms indexes
    try {
        var command = new CreateCollectionCommand({
            name: 'tv-sitcoms',
            type: 'SEARCH'
        });
        const response = await client.send(command);
        return (response)
    } catch (error) {
        if (error.name === 'ConflictException') {
            console.log('[ConflictException] A collection with this name already exists. Try another name.');
        } else
            console.error(error);
    };
}

async function waitForCollectionCreation(client) {
    // Waits for the collection to become active
    try {
        var command = new BatchGetCollectionCommand({
            names: ['tv-sitcoms']
        });
        var response = await client.send(command);
        while (response.collectionDetails[0]['status'] == 'CREATING') {
            console.log('Creating collection...')
            await sleep(30000) // Wait for 30 seconds, then check the status again
            function sleep(ms) {
                return new Promise((resolve) => {
                    setTimeout(resolve, ms);
                });
            }
            var response = await client.send(command);
        }
        console.log('Collection successfully created:');
        console.log(response['collectionDetails']);
        // Extract the collection endpoint from the response
        var host = (response.collectionDetails[0]['collectionEndpoint'])
        // Pass collection endpoint to index document request
        indexDocument(host)
    } catch (error) {
        console.error(error);
    };
}

async function indexDocument(host) {

    var client = new Client({
        node: host,
        Connection: class extends Connection {
            buildRequestObject(params) {
                var request = super.buildRequestObject(params)
                request.service = 'aoss';
                request.region = 'us-east-1'; // e.g. us-east-1
                var body = request.body;
                request.body = undefined;
                delete request.headers['content-length'];
                request.headers['x-amz-content-sha256'] = 'UNSIGNED-PAYLOAD';
                request = aws4.sign(request, AWS.config.credentials);
                request.body = body;

                return request
            }
        }
    });

    // Create an index
    try {
        var index_name = "sitcoms-eighties";

        var response = await client.indices.create({
            index: index_name
        });

        console.log("Creating index:");
        console.log(response.body);

        // Add a document to the index
        var document = "{ \"title\": \"Seinfeld\", \"creator\": \"Larry David\", \"year\": \"1989\" }\n";

        var response = await client.index({
            index: index_name,
            body: document
        });

        console.log("Adding document:");
        console.log(response.body);
    } catch (error) {
        console.error(error);
    };
}

execute()
```

# Menggunakan CloudFormation untuk membuat koleksi Amazon OpenSearch Tanpa Server
<a name="serverless-cfn"></a>

Anda dapat menggunakan CloudFormation untuk membuat sumber daya Amazon OpenSearch Tanpa Server seperti koleksi, kebijakan keamanan, dan titik akhir VPC. *Untuk CloudFormation referensi OpenSearch tanpa server yang komprehensif, lihat [Amazon OpenSearch Tanpa Server](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_OpenSearchServerless.html) di Panduan Pengguna.CloudFormation *

Contoh CloudFormation template berikut membuat kebijakan akses data sederhana, kebijakan jaringan, dan kebijakan keamanan, serta koleksi yang cocok. Ini adalah cara yang baik untuk bangun dan berjalan cepat dengan Amazon OpenSearch Tanpa Server dan menyediakan elemen yang diperlukan untuk membuat dan menggunakan koleksi.

**penting**  
Contoh ini menggunakan akses jaringan publik, yang tidak direkomendasikan untuk beban kerja produksi. Sebaiknya gunakan akses VPC untuk melindungi koleksi Anda. Lihat informasi yang lebih lengkap di [AWS::OpenSearchServerless::VpcEndpoint](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-vpcendpoint.html) dan [Akses pesawat data melalui AWS PrivateLink](serverless-vpc.md).

```
AWSTemplateFormatVersion: 2010-09-09
Description: 'Amazon OpenSearch Serverless template to create an IAM user, encryption policy, data access policy and collection'
Resources:
  IAMUSer:
    Type: 'AWS::IAM::User'
    Properties:
      UserName:  aossadmin
  DataAccessPolicy:
    Type: 'AWS::OpenSearchServerless::AccessPolicy'
    Properties:
      Name: quickstart-access-policy
      Type: data
      Description: Access policy for quickstart collection
      Policy: !Sub >-
        [{"Description":"Access for cfn user","Rules":[{"ResourceType":"index","Resource":["index/*/*"],"Permission":["aoss:*"]},
        {"ResourceType":"collection","Resource":["collection/quickstart"],"Permission":["aoss:*"]}],
        "Principal":["arn:aws:iam::${AWS::AccountId}:user/aossadmin"]}]
  NetworkPolicy:
    Type: 'AWS::OpenSearchServerless::SecurityPolicy'
    Properties:
      Name: quickstart-network-policy
      Type: network
      Description: Network policy for quickstart collection
      Policy: >-
        [{"Rules":[{"ResourceType":"collection","Resource":["collection/quickstart"]}, {"ResourceType":"dashboard","Resource":["collection/quickstart"]}],"AllowFromPublic":true}]
  EncryptionPolicy:
    Type: 'AWS::OpenSearchServerless::SecurityPolicy'
    Properties:
      Name: quickstart-security-policy
      Type: encryption
      Description: Encryption policy for quickstart collection
      Policy: >-
        {"Rules":[{"ResourceType":"collection","Resource":["collection/quickstart"]}],"AWSOwnedKey":true}
  Collection:
    Type: 'AWS::OpenSearchServerless::Collection'
    Properties:
      Name: quickstart
      Type: TIMESERIES
      Description: Collection to holds timeseries data
    DependsOn: EncryptionPolicy
Outputs:
  IAMUser:
    Value: !Ref IAMUSer
  DashboardURL:
    Value: !GetAtt Collection.DashboardEndpoint
  CollectionARN:
    Value: !GetAtt Collection.Arn
```

# Mencadangkan koleksi menggunakan snapshot
<a name="serverless-snapshots"></a>

Snapshot adalah point-in-time cadangan koleksi Amazon OpenSearch Tanpa Server Anda yang menyediakan kemampuan pemulihan bencana. OpenSearch Tanpa server secara otomatis membuat dan mengelola snapshot koleksi Anda, memastikan kelangsungan bisnis dan perlindungan data. Setiap snapshot berisi metadata indeks (pengaturan dan pemetaan untuk indeks Anda), metadata cluster (templat indeks dan alias), dan data indeks (semua dokumen dan data yang disimpan dalam indeks Anda).

OpenSearch Tanpa server menyediakan pencadangan per jam otomatis tanpa konfigurasi manual, overhead pemeliharaan nol, tanpa biaya penyimpanan tambahan, pemulihan cepat dari kehilangan data yang tidak disengaja, dan kemampuan untuk memulihkan indeks tertentu dari snapshot.

Sebelum bekerja dengan snapshot, pahami pertimbangan penting ini. Membuat snapshot membutuhkan waktu untuk diselesaikan dan tidak instan. Dokumen atau pembaruan baru selama pembuatan snapshot tidak akan disertakan dalam snapshot. Anda dapat mengembalikan snapshot hanya ke koleksi aslinya dan bukan ke yang baru. Ketika dipulihkan, indeks menerima baru UUIDs yang berbeda dari versi aslinya. Mengembalikan ke indeks terbuka yang ada di OpenSearch Tanpa Server akan menimpa data indeks tersebut asalkan nama indeks baru atau pola awalan tidak disediakan.Ini berbeda dari perilaku inti. OpenSearch Anda hanya dapat menjalankan satu operasi pemulihan pada satu waktu, dan Anda tidak dapat memulai beberapa operasi pemulihan pada koleksi yang sama secara bersamaan. Mencoba mengembalikan indeks selama operasi pemulihan aktif menyebabkan operasi gagal. Selama operasi pemulihan, permintaan Anda ke indeks gagal.

## Izin yang diperlukan
<a name="serverless-snapshots-permissions"></a>

Untuk bekerja dengan snapshot, konfigurasikan izin berikut dalam kebijakan akses data Anda. Untuk informasi selengkapnya tentang kebijakan akses data, lihat[Kebijakan akses data versus kebijakan IAM](serverless-data-access.md#serverless-data-access-vs-iam).


****  

| Kebijakan Akses Data | APIs | 
| --- | --- | 
| aoss: DescribeSnapshot | DAPATKAN /\$1 -otomatis cat/snapshots/aossDAPATKAN \$1snapshot/aoss-automated/snapshot/ | 
| aoss: RestoreSnapshot | POSTING /\$1 /\$1restore snapshot/aoss-automated/snapshot | 
| aoss: DescribeCollectionItems | DAPATKAN /\$1cat/pemulihan | 

Anda dapat mengonfigurasi kebijakan menggunakan AWS CLI perintah berikut:

1.  [ create-access-policy](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/create-access-policy.html) 

1.  [ delete-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/delete-access-policy.html) 

1. [ get-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/get-access-policy.html)

1. [ update-access-policy ](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/update-access-policy.html)

Berikut adalah contoh perintah CLI untuk membuat kebijakan akses. Dalam perintah, ganti *example* konten dengan informasi spesifik Anda.

```
aws opensearchserverless create-access-policy \
--type data \
--name Example-data-access-policy \
--region aws-region \
--policy '[
  {
    "Rules": [
      {
        "Resource": [
          "collection/Example-collection"
        ],
        "Permission": [
          "aoss:DescribeSnapshot",
          "aoss:RestoreSnapshot",
          "aoss:DescribeCollectionItems"
        ],
        "ResourceType": "collection"
      }
    ],
    "Principal": [
      "arn:aws:iam::111122223333:user/UserName"
    ],
    "Description": "Data policy to support snapshot operations."
  }
]'
```

## Cara menggunakan snapshot
<a name="serverless-snapshots-working-with"></a>

Secara default, saat Anda membuat koleksi baru, OpenSearch Tanpa Server secara otomatis membuat snapshot setiap jam. Anda tidak perlu mengambil tindakan apa pun. Setiap snapshot mencakup semua indeks dalam koleksi. Setelah OpenSearch Tanpa Server membuat snapshot, Anda dapat mencantumkannya dan meninjau detail snapshot menggunakan prosedur berikut.

### Daftar snapshot
<a name="serverless-snapshots-listing"></a>

Gunakan prosedur berikut untuk mencantumkan semua snapshot dalam koleksi dan meninjau detailnya.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi.**

1. Pilih nama koleksi Anda untuk membuka halaman detailnya.

1. Pilih tab **Snapshots** untuk menampilkan semua snapshot yang dihasilkan.

1. Tinjau informasi snapshot termasuk:
   + **ID Snapshot** - Pengidentifikasi unik untuk snapshot
   + **Status - Status** saat ini (Tersedia, Sedang Berlangsung)
   + **Waktu yang dibuat** - Saat snapshot diambil

------
#### [ AWS CLI ]
+ Gunakan perintah berikut untuk membuat daftar semua snapshot dalam koleksi:

  ```
  GET /_cat/snapshots/aoss-automated
  ```

  OpenSearch Serverless mengembalikan respons seperti berikut:

  ```
  id                                 status  start_epoch start_time end_epoch  end_time    duration    indexes successful_shards failed_shards total_shards
  snapshot-ExampleSnapshotID1     SUCCESS 1737964331  07:52:11   1737964382 07:53:02    50.4s       1                                             
  snapshot-ExampleSnapshotID2     SUCCESS 1737967931  08:52:11   1737967979 08:52:59    47.7s       2                                             
  snapshot-ExampleSnapshotID3     SUCCESS 1737971531  09:52:11   1737971581 09:53:01    49.1s       3                                             
  snapshot-ExampleSnapshotID4 IN_PROGRESS 1737975131  10:52:11   -          -            4.8d       3
  ```

------

### Dapatkan detail snapshot
<a name="serverless-snapshots-get-details"></a>

Gunakan prosedur berikut untuk mengambil informasi rinci tentang snapshot tertentu.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi.**

1. Pilih nama koleksi Anda untuk membuka halaman detailnya.

1. Pilih tab **Snapshot**.

1. Pilih ID pekerjaan snapshot untuk menampilkan informasi terperinci tentang snapshot, termasuk metadata, indeks yang disertakan, dan informasi waktu.

------
#### [ AWS CLI ]
+ Gunakan perintah berikut untuk mengambil informasi tentang snapshot. Dalam perintah, ganti *example* konten dengan informasi spesifik Anda.

  ```
  GET _snapshot/aoss-automated/snapshot/
  ```

  Contoh Permintaan:

  ```
  GET _snapshot/aoss-automated/snapshot-ExampleSnapshotID1/
  ```

  Contoh Respon:

  ```
  {
      "snapshots": [
          {
              "snapshot": "snapshot-ExampleSnapshotID1-5e01-4423-9833Example",
              "uuid": "Example-5e01-4423-9833-9e9eb757Example",
              "version_id": 136327827,
              "version": "2.11.0",
              "remote_store_index_shallow_copy": true,
              "indexes": [
                  "Example-index-0117"
              ],
              "data_streams": [],
              "include_global_state": true,
              "metadata": {},
              "state": "SUCCESS",
              "start_time": "2025-01-27T09:52:11.953Z",
              "start_time_in_millis": 1737971531953,
              "end_time": "2025-01-27T09:53:01.062Z",
              "end_time_in_millis": 1737971581062,
              "duration_in_millis": 49109,
              "failures": [],
              "shards": {
                  "total": 0,
                  "failed": 0,
                  "successful": 0
              }
          }
      ]
  }
  ```

------

Respons snapshot mencakup beberapa bidang kunci: `id` menyediakan pengenal unik untuk operasi snapshot, `status` mengembalikan status saat ini `SUCCESS` atau`IN_PROGRESS`, `duration` menunjukkan waktu yang dibutuhkan untuk menyelesaikan operasi snapshot, dan `indexes` mengembalikan jumlah indeks yang disertakan dalam snapshot.

## Memulihkan dari snapshot
<a name="serverless-snapshots-restoring"></a>

Memulihkan dari snapshot memulihkan data dari cadangan yang diambil sebelumnya. Proses ini sangat penting untuk pemulihan bencana dan manajemen data di Tanpa OpenSearch Server. Sebelum memulihkan, pahami bahwa indeks yang dipulihkan akan berbeda UUIDs dari versi aslinya, memulihkan ke indeks terbuka yang ada di OpenSearch Tanpa Server akan menimpa data indeks tersebut asalkan nama indeks baru atau pola awalan tidak disediakan, snapshot hanya dapat dikembalikan ke koleksi aslinya (restorasi pengumpulan silang tidak didukung), dan operasi pemulihan akan memengaruhi kinerja klaster sehingga rencanakan sesuai.

Gunakan prosedur berikut untuk memulihkan indeks yang dicadangkan dari snapshot.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi.**

1. Pilih nama koleksi Anda untuk membuka halaman detailnya.

1. Pilih tab **Snapshots** untuk menampilkan snapshot yang tersedia.

1. Pilih snapshot yang ingin Anda pulihkan, lalu pilih **Pulihkan dari snapshot**.

1. Dalam dialog **Pulihkan dari snapshot**:
   + Untuk **nama Snapshot**, verifikasi ID snapshot yang dipilih.
   + Untuk **cakupan Snapshot**, pilih salah satu:
     + **Semua indeks dalam koleksi** - Kembalikan semua indeks dari snapshot
     + **Indeks spesifik** - Pilih indeks individu untuk dipulihkan
   + Untuk **Tujuan**, pilih koleksi yang akan dikembalikan.
   + (Opsional) Konfigurasikan **pengaturan Ganti nama** untuk mengganti nama indeks yang dipulihkan:
     + **Jangan ganti nama** - Simpan nama indeks asli
     + **Tambahkan awalan ke nama indeks yang dipulihkan** - Tambahkan awalan untuk menghindari konflik
     + **Ganti nama menggunakan ekspresi reguler** - Gunakan pola penggantian nama lanjutan
   + (Opsional) Konfigurasikan pengaturan **Pemberitahuan** untuk diberi tahu saat pemulihan selesai atau mengalami kesalahan.

1. Pilih **Simpan** untuk memulai operasi pemulihan.

------
#### [ OpenSearch API ]

1. Jalankan perintah berikut untuk mengidentifikasi snapshot yang sesuai.

   ```
   GET /_snapshot/aoss-automated/_all
   ```

   Untuk daftar snapshot yang lebih kecil, jalankan perintah berikut.

   ```
   GET /_cat/snapshots/aoss-automated
   ```

1. Jalankan perintah berikut untuk memverifikasi detail snapshot sebelum memulihkan. Dalam perintah, ganti *example* konten dengan informasi spesifik Anda.

   ```
   GET _snapshot/aoss-automated/snapshot-ExampleSnapshotID1/
   ```

1. Jalankan perintah berikut untuk memulihkan dari snapshot tertentu.

   ```
   POST /_snapshot/aoss-automated/snapshot-ID/_restore
   ```

   Anda dapat menyesuaikan operasi pemulihan dengan menyertakan badan permintaan. Inilah contohnya.

   ```
   POST /_snapshot/aoss-automated/snapshot-ExampleSnapshotID1-5e01-4423-9833Example/_restore
   {
     "indices": "opensearch-dashboards*,my-index*",
     "ignore_unavailable": true,
     "include_global_state": false,
     "include_aliases": false,
     "rename_pattern": "opensearch-dashboards(.+)",
     "rename_replacement": "restored-opensearch-dashboards$1"
   }
   ```

1. Jalankan perintah berikut untuk melihat kemajuan pemulihan.

   ```
   GET /_cat/recovery
   ```

------

**catatan**  
Saat memulihkan snapshot dengan perintah yang menyertakan badan permintaan, Anda dapat menggunakan beberapa parameter untuk mengontrol perilaku pemulihan. `indices`Parameter menentukan indeks mana yang akan dipulihkan dan mendukung pola wildcard. Setel `ignore_unavailable` untuk melanjutkan operasi pemulihan meskipun indeks dalam snapshot tidak ada. Gunakan `include_global_state` untuk menentukan apakah akan memulihkan status cluster, dan `include_aliases` untuk mengontrol apakah akan memulihkan alias terkait. `rename_replacement`Parameter `rename_pattern` dan mengganti nama indeks selama operasi pemulihan.

# Dukungan Codec Zstandard di Amazon Tanpa Server OpenSearch
<a name="serverless-zstd-compression"></a>

Codec indeks menentukan bagaimana bidang tersimpan indeks dikompresi dan disimpan pada disk dan di S3. Codec indeks dikendalikan oleh `index.codec` pengaturan statis yang menentukan algoritma kompresi. Pengaturan ini berdampak pada ukuran pecahan indeks dan kinerja operasi indeks.

Secara default, indeks di OpenSearch Serverless menggunakan codec default dengan algoritma kompresi. LZ4 OpenSearch Serverless juga mendukung `zstd` dan `zstd_no_dict` codec dengan tingkat kompresi yang dapat dikonfigurasi dari 1 hingga 6.

**penting**  
Karena `index.codec` adalah pengaturan statis, itu tidak dapat diubah setelah pembuatan indeks.

Untuk detail selengkapnya, lihat dokumentasi [Codec OpenSearch Indeks](https://opensearch.org/docs/latest/im-plugin/index-codecs/).

## Membuat indeks dengan codec ZSTD
<a name="serverless-zstd-create-index"></a>

Anda dapat menentukan codec ZSTD selama pembuatan indeks menggunakan pengaturan: `index.codec`

```
PUT /your_index
{
  "settings": {
    "index.codec": "zstd"
  }
}
```

## Tingkat kompresi
<a name="serverless-zstd-compression-levels"></a>

Codec ZSTD mendukung tingkat kompresi opsional melalui `index.codec.compression_level` pengaturan, menerima bilangan bulat dalam kisaran [1, 6]. Tingkat kompresi yang lebih tinggi menghasilkan rasio kompresi yang lebih baik (penyimpanan yang lebih kecil) tetapi kecepatan kompresi dan dekompresi yang lebih lambat. Tingkat kompresi default adalah 3.

```
PUT /your_index
{
  "settings": {
    "index.codec": "zstd",
    "index.codec.compression_level": 2
  }
}
```

## Benchmarking kinerja
<a name="serverless-zstd-performance"></a>

Berdasarkan pengujian benchmark dengan dataset nyc\$1taxi, kompresi ZSTD mencapai kompresi 26-32% lebih baik dibandingkan dengan baseline di berbagai kombinasi,, dan tingkat kompresi. `zstd` `zstd_no_dict`


| Metrik | ZSTD L1 | ZSTD L6 | ZSTD\$1NO\$1DICT L1 | ZSTD\$1NO\$1DICT L6 | 
| --- | --- | --- | --- | --- | 
| Pengurangan Ukuran Indeks | 28,10% | 32% | 26,90% | 28,70% | 
| Perubahan Throughput Pengindeksan | -0,50% | -23,80% | -0,50% | -5,30% | 
| Perbaikan Latensi Match-all Query p90 | -16,40% | 29,50% | -16,40% | 23,40% | 
| Rentang Kueri p90 Peningkatan Latensi | 90,90% | 92,40% | -282,90% | 92,50% | 
| Jumlah Jarak p90 Peningkatan Latensi Agg | 2% | 24,70% | 2% | 13,80% | 

Untuk lebih jelasnya, lihat [AWS OpenSearch blog](https://aws.amazon.com/blogs/big-data/optimize-storage-costs-in-amazon-opensearch-service-using-zstandard-compression/).

# Simpan Penyimpanan dengan Menggunakan Sumber Derived
<a name="serverless-derived-source"></a>

Secara default, OpenSearch Tanpa Server menyimpan setiap dokumen yang dicerna di `_source` bidang, yang berisi badan dokumen JSON asli, dan mengindeks bidang individual untuk pencarian. Meskipun `_source` bidang tidak dapat dicari, itu dipertahankan sehingga dokumen lengkap dapat dikembalikan saat menjalankan permintaan pengambilan, seperti get dan search. Saat sumber turunan diaktifkan, OpenSearch Tanpa Server melewatkan penyimpanan `_source` bidang dan sebagai gantinya merekonstruksinya secara dinamis sesuai permintaan — misalnya, selama operasi pencarian, dapatkan, mget, indeks ulang, atau pembaruan. Menggunakan pengaturan sumber turunan dapat mengurangi penggunaan penyimpanan hingga 50%.

## Konfigurasi
<a name="serverless-derived-source-config"></a>

Untuk mengonfigurasi sumber turunan untuk indeks Anda, buat indeks menggunakan `index.derived_source.enabled` pengaturan:

```
PUT my-index1
{
  "settings": {
    "index": {
      "derived_source": {
        "enabled": true
      }
    }
  }
}
```

## Pertimbangan penting
<a name="serverless-derived-source-considerations"></a>
+ Hanya jenis bidang tertentu yang didukung. Untuk daftar bidang dan batasan yang didukung, lihat [OpenSearch dokumentasi](https://docs.opensearch.org/latest/mappings/metadata-fields/source/#supported-fields-and-parameters). Jika Anda membuat indeks dengan sumber turunan dan bidang yang tidak didukung, pembuatan indeks akan gagal. Jika Anda mencoba menyerap dokumen dengan bidang yang tidak didukung dalam indeks berkemampuan sumber turunan, penyerapan akan gagal. Gunakan fitur ini hanya jika Anda mengetahui jenis bidang yang akan ditambahkan ke indeks Anda.
+ `index.derived_source.enabled`Pengaturannya adalah pengaturan statis. Ini tidak dapat diubah setelah indeks dibuat.

## Keterbatasan tanggapan kueri
<a name="serverless-derived-source-limitations"></a>

Ketika sumber turunan diaktifkan, itu memberlakukan batasan tertentu pada bagaimana respons kueri dihasilkan dan dikembalikan.
+ Bidang tanggal dengan beberapa format yang ditentukan selalu menggunakan format pertama dalam daftar untuk semua dokumen yang diminta, terlepas dari format asli yang dicerna.
+ Nilai geopoint dikembalikan dalam `{"lat": lat_val, "lon": lon_val}` format tetap dan mungkin kehilangan beberapa presisi.
+ Array multi-nilai dapat diurutkan, dan bidang kata kunci dapat di-deduplikasi.

Untuk lebih jelasnya, lihat [OpenSearch blog](https://opensearch.org/blog/save-up-to-2x-on-storage-with-derived-source/).

## Benchmarking kinerja
<a name="serverless-derived-source-performance"></a>

Berdasarkan pengujian benchmark dengan dataset nyc\$1taxi, sumber turunan mencapai pengurangan 58% dalam ukuran indeks dibandingkan dengan baseline.


| Metrik | Sumber turunan | 
| --- | --- | 
| Pengurangan Ukuran Indeks | 58,3% | 
| Perubahan Throughput Pengindeksan | 3,7% | 
| Pengindeksan p90 Perubahan Latensi | 6,9% | 
| Perbaikan Latensi Match-all Query p90 | 19% | 
| Rentang Kueri p90 Peningkatan Latensi | -18,8% | 
| Jumlah Jarak p90 Peningkatan Latensi Agg | -7,3% | 

Untuk lebih jelasnya, lihat [OpenSearch blog](https://opensearch.org/blog/save-up-to-2x-on-storage-with-derived-source/).

# Grup OpenSearch koleksi Amazon Tanpa Server
<a name="serverless-collection-groups"></a>

*Grup koleksi* di Amazon OpenSearch Tanpa Server mengatur beberapa koleksi dan mengaktifkan berbagi sumber daya komputasi di seluruh koleksi dengan kunci KMS yang berbeda. Model komputasi bersama ini mengurangi biaya dengan menghilangkan kebutuhan akan Unit OpenSearch Komputasi (OCUs) terpisah untuk setiap kunci KMS.

Setiap koleksi OpenSearch Tanpa Server yang Anda buat dilindungi dengan enkripsi data saat istirahat menggunakan AWS KMS untuk menyimpan dan mengelola kunci enkripsi Anda. Koleksi dalam grup koleksi yang sama berbagi sumber daya komputasi dan ruang memori OCU, bahkan ketika mereka menggunakan kunci KMS yang berbeda untuk enkripsi.

Grup koleksi menyediakan isolasi untuk persyaratan keamanan dan kinerja. Anda dapat mengelompokkan koleksi dengan kunci KMS yang sama ke dalam satu grup koleksi untuk isolasi keamanan, atau menggabungkan koleksi dengan kunci KMS yang berbeda dalam grup yang sama untuk pengoptimalan biaya. Fleksibilitas ini memungkinkan Anda menyeimbangkan persyaratan keamanan dengan efisiensi sumber daya.

Saat Anda menambahkan koleksi ke grup koleksi, OpenSearch Tanpa Server menetapkannya ke sumber daya komputasi bersama grup. Sistem secara otomatis mengelola distribusi beban kerja di seluruh sumber daya ini sambil menjaga keamanan dengan mengenkripsi data setiap koleksi dengan kunci KMS yang ditunjuk. Kontrol akses terus berlaku di tingkat pengumpulan, dan sumber daya komputasi bersama mengakses beberapa kunci KMS sesuai kebutuhan untuk menyajikan koleksi dalam grup.

Anda mengontrol alokasi sumber daya dengan menetapkan batas OCU minimum dan maksimum di tingkat grup koleksi. Batasan ini berlaku untuk semua koleksi dalam grup dan membantu Anda mengelola biaya sambil memastikan kinerja yang konsisten.

Secara default, ada kuota layanan (limit) untuk jumlah koleksi dalam grup koleksi, jumlah indeks dalam koleksi, dan jumlah OCUs dalam grup koleksi. Untuk informasi selengkapnya, lihat [OpenSearch Kuota tanpa server](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-limits-serverless).

## Konsep utama
<a name="collection-groups-concepts"></a>

Grup koleksi  
 AWS Sumber daya yang bertindak sebagai wadah untuk satu atau lebih koleksi. Setiap grup koleksi memiliki pengidentifikasi unik dan dapat memiliki batas kapasitas dan pengaturan konfigurasi sendiri.

Komputasi bersama  
Koleksi dalam grup koleksi yang sama berbagi set yang sama OCUs, terlepas dari kunci KMS yang mereka gunakan. Berbagi ini mengurangi biaya dengan menghilangkan kebutuhan akan sumber daya komputasi terpisah untuk setiap kunci KMS.

Batas kapasitas  
Anda dapat menetapkan batas OCU minimum dan maksimum untuk operasi pengindeksan dan pencarian di tingkat grup koleksi. Batasan ini membantu mengendalikan biaya dan memastikan kinerja yang konsisten.

# Batas kapasitas kelompok pengumpulan
<a name="collection-groups-capacity-limits"></a>

Kelompok pengumpulan memberikan kontrol granular atas alokasi sumber daya melalui batas OCU minimum dan maksimum. Batasan ini berlaku untuk semua koleksi dalam grup dan beroperasi secara independen dari pengaturan kapasitas tingkat akun.

Secara default, ada kuota layanan (limit) untuk jumlah koleksi dalam grup koleksi, jumlah indeks dalam koleksi, dan jumlah OCUs dalam grup koleksi. Untuk informasi selengkapnya, lihat [OpenSearch Kuota tanpa server](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-limits-serverless).

## Memahami batas kapasitas kelompok pengumpulan
<a name="collection-groups-capacity-overview"></a>

Anda dapat mengonfigurasi batas OCU minimum dan maksimum untuk operasi pengindeksan dan pencarian di tingkat grup koleksi. Batasan ini mengontrol cara OpenSearch Tanpa Server menskalakan sumber daya untuk koleksi dalam grup:
+ **Minimum OCU** - Jumlah minimum OCUs yang dipertahankan OpenSearch Tanpa Server untuk grup koleksi, memastikan kinerja dasar yang konsisten.
  + Jika beban kerja membutuhkan lebih sedikit OCU daripada nilai minimum yang ditentukan, OpenSearch Tanpa Server akan tetap mempertahankan nilai minimum OCU yang ditentukan dan penagihan akan mencerminkan hal yang sama.
  + Jika beban kerja membutuhkan jumlah OCU yang lebih tinggi daripada nilai minimum yang ditentukan, OpenSearch Tanpa Server akan mempertahankan tingkat OCU yang diperlukan untuk beban kerja dan penagihan akan mencerminkan pemanfaatan OCU yang lebih tinggi.
+ **OCU Maksimum** — Jumlah maksimum OpenSearch Serverless OCUs yang dapat ditingkatkan untuk grup koleksi, membantu Anda mengontrol biaya.

Batas kapasitas grup koleksi dipisahkan dari batas tingkat akun. Setelan OCU maksimum tingkat akun hanya berlaku untuk koleksi yang tidak terkait dengan grup koleksi apa pun, sementara pengaturan OCU maksimum grup koleksi berlaku untuk koleksi dalam grup tertentu tersebut.

## Nilai batas kapasitas yang valid
<a name="collection-groups-capacity-values"></a>

Saat menetapkan batas OCU minimum dan maksimum untuk grup koleksi, Anda hanya dapat menggunakan nilai dari set berikut: 1, 2, 4, 8, 16, dan kelipatan 16 (seperti 32, 48, 64, 80, 96) hingga maksimum 1.696. OCUs

Batas OCU minimum dan maksimum bersifat opsional saat Anda membuat grup koleksi. Jika Anda tidak menentukan batas OCU maksimum, OpenSearch Tanpa Server menggunakan nilai default 96. OCUs

Batas OCU minimum harus kurang dari atau sama dengan batas OCU maksimum.

## Memahami hubungan antara batas OCU tingkat akun dan grup koleksi
<a name="collection-groups-capacity-relationship"></a>

Saat merencanakan kapasitas OpenSearch Tanpa Server Anda, penting untuk memahami bagaimana batas OCU tingkat akun dan batas OCU grup pengumpulan berinteraksi. Jumlah pengaturan OCU maksimum di semua grup koleksi ditambah pengaturan OCU maksimum di tingkat akun harus kurang dari atau sama dengan batas kuota layanan per akun. Untuk nilai batas saat ini, lihat [OpenSearch Kuota tanpa server](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-limits-serverless).

**catatan**  
Pengaturan OCU maksimum tingkat akun hanya berlaku untuk koleksi yang tidak terkait dengan grup koleksi apa pun. Koleksi dalam grup koleksi diatur oleh batas grup koleksi masing-masing, bukan batas tingkat akun.

Kendala ini berlaku untuk pengindeksan dan pencarian secara independen. OCUs Misalnya, jika Anda mengonfigurasi pengaturan tingkat akun dan grup koleksi, Anda harus memastikan total tidak melebihi batas kuota layanan untuk pengindeksan OCUs dan secara terpisah tidak melebihi batas kuota layanan untuk pencarian. OCUs Selain itu, Anda dapat membuat maksimal 300 grup koleksi per akun.

**Contoh: Kapasitas perencanaan dengan batas tingkat akun dan grup penagihan**  
Jika Anda menetapkan OCU pencarian maksimum tingkat akun menjadi 500 dan batas kuota layanan adalah 1.700:
+ Dan buat 2 grup koleksi, jumlah OCU maksimum untuk 2 grup koleksi harus tidak lebih dari 1.200 (1.700 - 500)
+ Anda dapat meninggalkan setiap grup koleksi pada OCU maksimum default 96 (96\$196\$1500 = 692), meninggalkan ruang kepala untuk pertumbuhan masa depan
+ Atau Anda dapat meningkatkan maksimum setiap grup koleksi menjadi 600 (600\$1600\$1500 = 1.700), menggunakan kapasitas penuh yang diizinkan oleh kuota layanan

Hubungan ini sangat penting untuk perencanaan kapasitas. Sebelum membuat grup koleksi baru atau meningkatkan batas OCU maksimum, verifikasi bahwa total alokasi Anda tidak melebihi batas kuota layanan. Jika Anda mencapai batas ini, Anda harus mengurangi pengaturan OCU maksimum pada grup koleksi yang ada atau mengurangi pengaturan OCU maksimum tingkat akun Anda untuk memberi ruang bagi alokasi baru.

## Mengkonfigurasi batas kapasitas
<a name="collection-groups-capacity-configure"></a>

Anda dapat menetapkan batas kapasitas saat membuat grup koleksi atau memperbaruinya nanti. Untuk mengkonfigurasi batas kapasitas menggunakan AWS CLI, gunakan [UpdateCollectionGroup](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateCollectionGroup.html)perintah [CreateCollectionGroup](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateCollectionGroup.html)atau:

```
aws opensearchserverless create-collection-group \
    --name my-collection-group \
    --capacity-limits maxIndexingCapacityInOCU=32,maxSearchCapacityInOCU=32,minIndexingCapacityInOCU=4,minSearchCapacityInOCU=4
```

Untuk memperbarui batas kapasitas untuk grup koleksi yang ada:

```
aws opensearchserverless update-collection-group \
    --id abcdef123456 \
    --capacity-limits maxIndexingCapacityInOCU=48,maxSearchCapacityInOCU=48,minIndexingCapacityInOCU=8,minSearchCapacityInOCU=8
```

## Memantau kapasitas kelompok pengumpulan
<a name="collection-groups-capacity-monitoring"></a>

OpenSearch Tanpa server memancarkan metrik Amazon CloudWatch Logs berikut pada interval satu menit untuk membantu Anda memantau pemanfaatan OCU dan batas kapasitas di tingkat grup pengumpulan:
+ `IndexingOCU`— Jumlah pengindeksan yang OCUs saat ini digunakan oleh grup koleksi.
+ `SearchOCU`— Jumlah pencarian yang OCUs saat ini digunakan oleh grup koleksi.

OpenSearch Tanpa server juga memancarkan metrik OCU di tingkat akun untuk koleksi yang tidak terkait dengan grup koleksi apa pun. Anda dapat menggabungkan metrik ini CloudWatch untuk memvisualisasikan jumlah OCUs di semua grup koleksi dan koleksi tingkat akun.

Konfigurasikan alarm untuk memberi tahu Anda saat grup koleksi mendekati batas kapasitasnya sehingga Anda dapat menyesuaikan pengaturan sesuai kebutuhan. Untuk informasi selengkapnya tentang metrik OpenSearch Tanpa Server, lihat. [Memantau Amazon Tanpa OpenSearch Server](serverless-monitoring.md)

## Bagaimana batas kapasitas ditegakkan
<a name="collection-groups-capacity-enforcement"></a>

OpenSearch Tanpa server memberlakukan batas kapasitas grup pengumpulan selama operasi penskalaan. Jika koleksi Anda membutuhkan sumber daya tambahan, OpenSearch tanpa server menskalakan hingga batas OCU maksimum. Ketika permintaan menurun, OpenSearch Serverless menurunkan skala tetapi mempertahankan setidaknya batas OCU minimum untuk memastikan kinerja yang konsisten.

Batas kapasitas diberlakukan hanya jika grup koleksi berisi setidaknya satu koleksi. Grup koleksi kosong tidak mengkonsumsi OCUs atau menegakkan batas kapasitas.

Jika operasi penskalaan akan melebihi batas OCU maksimum atau melanggar persyaratan OCU minimum, OpenSearch Tanpa Server menolak operasi untuk mempertahankan kepatuhan terhadap batas yang dikonfigurasi.

# Enkripsi dan kunci KMS dalam grup koleksi
<a name="collection-groups-kms-keys"></a>

Setiap koleksi OpenSearch Tanpa Server yang Anda buat dilindungi dengan enkripsi data saat istirahat menggunakan AWS KMS untuk menyimpan dan mengelola kunci enkripsi Anda. Saat bekerja dengan grup koleksi, Anda memiliki fleksibilitas dalam menentukan kunci KMS untuk koleksi Anda.

Anda dapat memberikan kunci KMS yang terkait dengan koleksi dalam dua cara:
+ **Dalam CreateCollection permintaan** - Tentukan kunci KMS secara langsung saat Anda membuat koleksi menggunakan `encryption-config` parameter.
+ **Dalam kebijakan keamanan** — Tentukan asosiasi kunci KMS dalam kebijakan keamanan enkripsi.

Bila Anda menentukan kunci KMS di kedua lokasi, kunci KMS yang disediakan dalam CreateCollection permintaan akan diutamakan daripada konfigurasi kebijakan keamanan.

Fleksibilitas ini menyederhanakan pengelolaan koleksi dalam skala besar, terutama ketika Anda perlu membuat beberapa koleksi dengan kunci KMS yang unik. Alih-alih membuat dan mengelola ribuan kebijakan enkripsi, Anda dapat menentukan kunci KMS secara langsung selama pembuatan koleksi.

## Berbagi OCUs di berbagai kunci KMS
<a name="collection-groups-kms-sharing"></a>

Grup koleksi memungkinkan berbagi sumber daya komputasi di seluruh koleksi dengan kunci KMS yang berbeda. Koleksi dalam grup koleksi yang sama berbagi ruang memori OCU, terlepas dari kunci enkripsi mereka. Model komputasi bersama ini mengurangi biaya dengan menghilangkan kebutuhan terpisah OCUs untuk setiap kunci KMS.

Grup koleksi menyediakan isolasi untuk persyaratan keamanan dan kinerja. Anda dapat mengelompokkan koleksi dengan kunci KMS yang sama ke dalam satu grup koleksi untuk isolasi keamanan, atau menggabungkan koleksi dengan kunci KMS yang berbeda dalam grup yang sama untuk pengoptimalan biaya. Fleksibilitas ini memungkinkan Anda menyeimbangkan persyaratan keamanan dengan efisiensi sumber daya.

Sistem menjaga keamanan dengan mengenkripsi data setiap koleksi dengan kunci KMS yang ditunjuk. Kontrol akses terus berlaku di tingkat pengumpulan, dan sumber daya komputasi bersama mengakses beberapa kunci KMS sesuai kebutuhan untuk menyajikan koleksi dalam grup.

## Izin KMS yang diperlukan
<a name="collection-groups-kms-permissions"></a>

Saat Anda menentukan kunci KMS dalam CreateCollection permintaan, Anda memerlukan izin tambahan berikut:
+ `kms:DescribeKey`— Memungkinkan OpenSearch Tanpa Server untuk mengambil informasi tentang kunci KMS.
+ `kms:CreateGrant`— Memungkinkan OpenSearch Tanpa Server untuk membuat hibah untuk kunci KMS untuk mengaktifkan operasi enkripsi.

Izin ini tidak diperlukan saat menggunakan kunci yang AWS dimiliki.

# Buat grup koleksi
<a name="serverless-collection-groups-procedures"></a>

Topik ini menjelaskan cara membuat, mengonfigurasi, dan mengelola grup koleksi di Amazon Tanpa OpenSearch Server. Gunakan grup koleksi untuk mengatur koleksi dan berbagi sumber daya komputasi untuk mengoptimalkan biaya. Tetapkan batas OCU minimum dan maksimum di tingkat kelompok pengumpulan untuk mengontrol kinerja dan pengeluaran.

## Buat grup koleksi
<a name="collection-groups-create"></a>

Gunakan prosedur berikut untuk membuat grup koleksi baru dan mengonfigurasi pengaturannya. Buat grup koleksi menggunakan konsol OpenSearch Tanpa Server, AWS CLI, atau. AWS SDKs Saat membuat grup koleksi, Anda menentukan batas kapasitas dan opsi konfigurasi lainnya.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Grup koleksi**

1. Pilih **Buat grup koleksi**.

1. Untuk **nama grup Koleksi**, masukkan nama untuk grup koleksi Anda. Nama harus 3-32 karakter panjang, dimulai dengan huruf kecil, dan hanya berisi huruf kecil, angka, dan tanda hubung.

1. (Opsional) Untuk **Deskripsi**, masukkan deskripsi untuk grup koleksi Anda.

1. Di bagian **Manajemen kapasitas**, konfigurasikan batas OCU:
   + **Kapasitas pengindeksan** maksimum — Jumlah maksimum pengindeksan OCUs yang dapat ditingkatkan oleh koleksi dalam grup ini.
   + **Kapasitas pencarian maksimum** — Jumlah maksimum pencarian OCUs yang dapat ditingkatkan oleh koleksi dalam grup ini.
   + **Kapasitas pengindeksan minimum** — Jumlah minimum pengindeksan OCUs untuk mempertahankan kinerja yang konsisten.
   + **Kapasitas pencarian minimum** — Jumlah minimum pencarian OCUs untuk mempertahankan kinerja yang konsisten.

1. (Opsional) Di bagian **Tag**, tambahkan tag untuk membantu mengatur dan mengidentifikasi grup koleksi Anda.

1. Pilih **Buat grup koleksi**.

------
#### [ AWS CLI ]
+ Gunakan [create-collection-group](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/create-collection-group.html)perintah untuk membuat grup koleksi baru. Dalam perintah, ganti *example* konten dengan informasi spesifik Anda sendiri.

  ```
  aws opensearchserverless create-collection-group \
      --name my-collection-group \
      --description "Collection group for production workloads" \
      --capacity-limits maxIndexingCapacityInOCU=20,maxSearchCapacityInOCU=20,minIndexingCapacityInOCU=2,minSearchCapacityInOCU=2 \
      --tags key=Environment,value=Production key=Team,value=DataEngineering
  ```

  Perintah mengembalikan detail tentang grup koleksi yang dibuat, termasuk ID unik dan ARN.

------

## Menambahkan koleksi baru ke grup koleksi
<a name="create-collection-in-group"></a>

Saat membuat koleksi baru, tentukan nama grup koleksi yang ada untuk mengaitkan koleksi dengan. Gunakan prosedur berikut untuk menambahkan koleksi baru ke grup koleksi. 

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi**

1. Pilih **Buat koleksi**.

1. Untuk **nama Koleksi**, masukkan nama untuk koleksi Anda. Nama harus panjang 3-28 karakter, dimulai dengan huruf kecil, dan hanya berisi huruf kecil, angka, dan tanda hubung.

1. (Opsional) Untuk **Deskripsi**, masukkan deskripsi untuk koleksi Anda.

1. Di bagian **Grup koleksi**, pilih grup koleksi tempat Anda ingin koleksi ditetapkan. Koleksi hanya dapat dimiliki oleh satu grup koleksi pada satu waktu.

   (Opsional) Anda juga dapat memilih untuk **membuat grup baru**. Ini akan mengarahkan Anda ke alur kerja **grup Create collection**. Setelah Anda selesai membuat grup koleksi, kembali ke langkah 1 dari prosedur ini untuk mulai membuat koleksi baru Anda.

1. Lanjutkan melalui alur kerja untuk membuat koleksi.
**penting**  
Jangan menavigasi jauh dari alur kerja **Create collection**. Melakukannya akan menghentikan pengaturan koleksi. Halaman **Detail Koleksi** muncul setelah penyiapan selesai.

------
#### [ AWS CLI ]
+ Gunakan perintah [create-collection](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/create-collection.html) untuk membuat koleksi baru dan menambahkannya ke grup koleksi yang ada. Dalam perintah, ganti *example* konten dengan informasi spesifik Anda sendiri.

  ```
  aws opensearchserverless create-collection \
      --name my-collection \
      --type SEARCH \
      --collection-group-name my-collection-group \
      --description "Collection for search workloads"
  ```

------

# Kelola grup OpenSearch koleksi Amazon Tanpa Server
<a name="manage-collection-group"></a>

Setelah membuat grup koleksi Amazon OpenSearch Tanpa Server, Anda dapat mengubah pengaturannya saat kebutuhan Anda berubah. Gunakan operasi manajemen ini untuk memperbarui batas kapasitas dan melihat detail grup koleksi. Perubahan ini membantu Anda mengoptimalkan alokasi sumber daya dan mempertahankan organisasi koleksi yang efisien.

## Lihat grup koleksi
<a name="view-collection-groups"></a>

Menampilkan grup koleksi OpenSearch Tanpa Server Anda untuk meninjau konfigurasi, koleksi terkait, dan status saat ini.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi**

1. Pilih **tab Grup koleksi**. Grup koleksi akun Anda akan ditampilkan.

1.  Pilih **Nama** grup koleksi untuk menampilkan detailnya.

------
#### [ AWS CLI ]
+ Gunakan [list-collection-groups](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/list-collection-groups.html)perintah untuk mencantumkan semua grup koleksi di akun Anda. Gunakan [batch-get-collection-group](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/batch-get-collection-group.html)perintah untuk melihat detail tentang grup koleksi tertentu. Dalam perintah berikut, ganti *example* konten dengan informasi spesifik Anda sendiri.

  Untuk mencantumkan semua grup koleksi:

  ```
  aws opensearchserverless list-collection-groups
  ```

  Untuk mendapatkan detail tentang grup koleksi tertentu:

  ```
  aws opensearchserverless batch-get-collection-group \
      --names my-collection-group another-group
  ```

------

## Perbarui pengaturan grup koleksi
<a name="update-collection-group"></a>

Perbarui pengaturan grup koleksi OpenSearch Tanpa Server Anda untuk mengubah konfigurasi seperti batas kapasitas dan deskripsi.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi**

1. Pilih **tab Grup koleksi**. Grup koleksi akun Anda akan ditampilkan.

1.  Pilih **Nama** grup koleksi untuk menampilkan detailnya.

1. Di **Detail grup Koleksi**, pilih **Edit**.

1. Buat perubahan apa pun, lalu pilih **Simpan**.

------
#### [ AWS CLI ]
+ Gunakan [update-collection-group](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/update-collection-group.html)perintah untuk memperbarui deskripsi dan batas kapasitas grup koleksi yang ada. Dalam perintah berikut, ganti *example* konten dengan informasi Anda sendiri.

  ```
  aws opensearchserverless update-collection-group \
      --id abcdef123456 \
      --description "Updated description for production workloads" \
      --capacity-limits maxIndexingCapacityInOCU=30,maxSearchCapacityInOCU=30,minIndexingCapacityInOCU=4,minSearchCapacityInOCU=4
  ```

------

Perubahan batas kapasitas segera berlaku dan dapat memengaruhi perilaku penskalaan koleksi dalam grup.

## Hapus grup koleksi
<a name="delete-collection-group"></a>

Sebelum Anda dapat menghapus grup koleksi, Anda harus terlebih dahulu menghapus semua koleksi dari grup. Anda tidak dapat menghapus grup koleksi yang berisi koleksi.

------
#### [ Console ]

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/](https://console.aws.amazon.com/aos/).

1. **Di panel navigasi kiri, pilih **Tanpa Server**, lalu pilih Koleksi**

1. Pilih **tab Grup koleksi**. Grup koleksi akun Anda akan ditampilkan.

1.  Pilih **Nama** grup koleksi yang ingin Anda hapus.
**penting**  
Hapus semua koleksi dari grup koleksi dengan memperbarui setiap koleksi untuk menghapus asosiasi grup koleksi atau dengan memindahkannya ke grup koleksi lainnya.

1. Pilih **Hapus** di bagian atas halaman.

1. **Konfirmasikan penghapusan, lalu pilih Hapus.**

------
#### [ AWS CLI ]
+ Gunakan [delete-collection-group](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/delete-collection-group.html)perintah untuk menghapus grup koleksi.
**penting**  
Hapus semua koleksi dari grup koleksi dengan memperbarui setiap koleksi untuk menghapus asosiasi grup koleksi atau dengan memindahkannya ke grup koleksi lainnya.

  Dalam perintah berikut, ganti *example* konten dengan informasi Anda sendiri.

  Hapus grup koleksi kosong:

  ```
  aws opensearchserverless delete-collection-group \
      --id abcdef123456
  ```

------

# Mengelola batas kapasitas untuk Amazon Tanpa OpenSearch Server
<a name="serverless-scaling"></a>

Dengan Amazon OpenSearch Serverless, Anda tidak perlu mengelola kapasitas sendiri. OpenSearch Tanpa server secara otomatis menskalakan kapasitas komputasi untuk akun Anda berdasarkan beban kerja saat ini. Kapasitas komputasi tanpa server diukur dalam *OpenSearch Compute* Units (). OCUs Setiap OCU adalah kombinasi dari 6 GiB memori dan CPU virtual yang sesuai (vCPU), serta transfer data ke Amazon S3. Untuk informasi selengkapnya tentang arsitektur terpisah di Tanpa OpenSearch Server, lihat. [Cara kerjanya](serverless-overview.md#serverless-process)

Saat Anda membuat koleksi pertama, OpenSearch tanpa server membuat instance OCUs berdasarkan pengaturan redundansi Anda. Secara default, replika aktif redundan diaktifkan, yang membuat instance empat OCUs (dua untuk pengindeksan dan dua untuk pencarian). Ini memastikan ketersediaan tinggi dengan node siaga di Availability Zone lain.

Untuk pengembangan dan pengujian, Anda dapat menonaktifkan pengaturan **Aktifkan redundansi** untuk koleksi. Ini menghapus replika siaga dan hanya menggunakan dua OCUs (satu untuk pengindeksan dan satu untuk pencarian).

Ini OCUs selalu ada, bahkan ketika tidak ada aktivitas pengindeksan atau pencarian. Semua koleksi berikutnya dapat berbagi ini OCUs, kecuali untuk koleksi dengan AWS KMS kunci unik, yang membuat instance set mereka sendiri. OCUs Semua koleksi yang terkait dengan grup koleksi dapat berbagi kumpulan yang sama OCUs. Hanya satu jenis koleksi (pencarian, deret waktu, atau pencarian vektor) yang dapat dimasukkan dalam satu grup koleksi. Untuk informasi selengkapnya, lihat [Grup OpenSearch koleksi Amazon Tanpa Server](serverless-collection-groups.md).

OpenSearch Tanpa server secara otomatis menskalakan dan menambahkan OCUs seiring dengan bertambahnya penggunaan pengindeksan dan penelusuran Anda. Ketika lalu lintas menurun, skala kapasitas kembali ke jumlah minimum yang OCUs diperlukan untuk ukuran data Anda.

Untuk koleksi pencarian dan deret waktu, jumlah yang OCUs diperlukan saat idle sebanding dengan ukuran data dan jumlah indeks. Untuk koleksi vektor, persyaratan OCU bergantung pada memori (RAM) untuk menyimpan grafik vektor dan ruang disk untuk menyimpan indeks. Saat tidak menganggur, persyaratan OCU memperhitungkan kedua faktor tersebut.

Koleksi vektor menyimpan data indeks di penyimpanan lokal OCU. Batas RAM OCU dicapai lebih cepat dari batas disk, yang membatasi koleksi vektor oleh ruang RAM.

Dengan redundansi diaktifkan, kapasitas OCU turun ke minimum 1 OCU (0,5 OCU x 2) untuk pengindeksan dan 1 OCU (0,5 OCU x 2) untuk pencarian. Saat Anda menonaktifkan redundansi, koleksi Anda dapat menurunkan skala menjadi 0,5 OCU untuk pengindeksan dan 0,5 OCU untuk pencarian.

Penskalaan juga faktor dalam jumlah pecahan yang dibutuhkan untuk koleksi atau indeks Anda. Setiap OCU mendukung sejumlah pecahan tertentu, dan jumlah indeks harus sebanding dengan jumlah pecahan. Jumlah total basis yang OCUs diperlukan adalah maksimum persyaratan data, memori, dan pecahan Anda. *Untuk informasi selengkapnya, lihat [kemampuan penelusuran hemat biaya Amazon OpenSearch Tanpa Server, pada skala apa pun di](https://aws.amazon.com/blogs/big-data/amazon-opensearch-serverless-cost-effective-search-capabilities-at-any-scale/) Blog Big Data.AWS * 

Untuk koleksi *pencarian* dan *pencarian vektor*, semua data disimpan pada indeks panas untuk memastikan waktu respons kueri yang cepat. Koleksi *deret waktu* menggunakan kombinasi penyimpanan panas dan hangat, menyimpan data terbaru dalam penyimpanan panas untuk mengoptimalkan waktu respons kueri untuk data yang lebih sering diakses. Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](serverless-overview.md#serverless-usecase). 

**catatan**  
Koleksi pencarian vektor tidak dapat dibagikan OCUs dengan koleksi *penelusuran* dan *deret waktu*, meskipun koleksi pencarian vektor menggunakan kunci KMS yang sama dengan koleksi *penelusuran* atau *deret waktu*. Satu set baru OCUs akan dibuat untuk koleksi vektor pertama Anda. Koleksi vektor dibagi di antara koleksi kunci KMS yang sama. OCUs 

Untuk mengelola kapasitas koleksi Anda dan untuk mengontrol biaya, Anda dapat menentukan pengindeksan maksimum keseluruhan dan kapasitas pencarian untuk akun saat ini dan Wilayah, dan OpenSearch Tanpa Server menskalakan sumber daya koleksi Anda secara otomatis berdasarkan spesifikasi ini.

Karena skala kapasitas pengindeksan dan penelusuran secara terpisah, Anda menentukan batas tingkat akun untuk masing-masing:
+ **Kapasitas pengindeksan maksimum** — OpenSearch Tanpa server dapat meningkatkan kapasitas pengindeksan hingga jumlah ini. OCUs
+ **Kapasitas pencarian maksimum** — OpenSearch Tanpa server dapat meningkatkan kapasitas pencarian hingga jumlah ini. OCUs

**catatan**  
Pada saat ini, pengaturan kapasitas hanya berlaku di tingkat akun. Anda tidak dapat mengonfigurasi batas kapasitas per koleksi.

Tujuan Anda harus memastikan bahwa kapasitas maksimum cukup tinggi untuk menangani lonjakan beban kerja. Berdasarkan pengaturan Anda, OpenSearch Tanpa Server secara otomatis mengukur jumlah koleksi Anda OCUs untuk memproses beban kerja pengindeksan dan penelusuran.

**Topics**
+ [Mengkonfigurasi pengaturan kapasitas](#serverless-scaling-configure)
+ [Batas kapasitas maksimum](#serverless-scaling-limits)
+ [Pemantauan penggunaan kapasitas](#serverless-scaling-monitoring)

## Mengkonfigurasi pengaturan kapasitas
<a name="serverless-scaling-configure"></a>

**Untuk mengonfigurasi pengaturan kapasitas di konsol OpenSearch Tanpa Server, perluas **Tanpa Server** di panel navigasi kiri dan pilih Dasbor.** Tentukan pengindeksan maksimum dan kapasitas pencarian di bawah **Manajemen kapasitas**:

![\[Capacity management dashboard showing indexing and search capacity graphs with 10 OCU limits.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/ServerlessCapacity.png)


Untuk mengkonfigurasi kapasitas menggunakan AWS CLI, kirim [UpdateAccountSettings](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateAccountSettings.html)permintaan:

```
aws opensearchserverless update-account-settings \
    --capacity-limits '{ "maxIndexingCapacityInOCU": 8,"maxSearchCapacityInOCU": 9 }'
```

## Batas kapasitas maksimum
<a name="serverless-scaling-limits"></a>

Total maksimum indeks yang dapat berisi koleksi adalah 1000. Untuk ketiga jenis koleksi, kapasitas OCU maksimum default adalah 10 OCUs untuk pengindeksan dan 10 OCUs untuk pencarian. Kapasitas OCU minimum yang diizinkan untuk akun adalah 1 OCU [0,5 OCU x 2] untuk pengindeksan dan 1 OCU [0,5 OCU x 2] untuk pencarian. Untuk semua koleksi, kapasitas maksimum yang diizinkan adalah 1.700 OCUs untuk pengindeksan dan 1.700 OCUs untuk pencarian. Anda dapat mengonfigurasi jumlah OCU menjadi angka apa pun dari 2 hingga kapasitas maksimum yang diizinkan, dalam kelipatan 2. 

Setiap OCU mencakup penyimpanan singkat panas yang cukup untuk 120 GiB data indeks. OpenSearch *Tanpa server mendukung hingga 1 TiB data per indeks dalam koleksi *pencarian dan pencarian* *vektor*, dan 100 TiB data panas per indeks dalam koleksi deret waktu.* Untuk koleksi deret waktu, Anda masih dapat menelan lebih banyak data, yang dapat disimpan sebagai data hangat di S3.

Untuk daftar semua kuota, lihat Kuota tanpa [OpenSearch server](https://docs.aws.amazon.com/general/latest/gr/opensearch-service.html#opensearch-limits-serverless).

## Pemantauan penggunaan kapasitas
<a name="serverless-scaling-monitoring"></a>

Anda dapat memantau CloudWatch metrik `SearchOCU` dan `IndexingOCU` tingkat akun untuk memahami bagaimana penskalaan koleksi Anda. Kami menyarankan Anda mengonfigurasi alarm untuk memberi tahu Anda jika akun Anda mendekati ambang batas untuk metrik yang terkait dengan kapasitas, sehingga Anda dapat menyesuaikan pengaturan kapasitas sesuai dengan itu.

Anda juga dapat menggunakan metrik ini untuk menentukan apakah pengaturan kapasitas maksimum Anda sesuai, atau apakah Anda perlu menyesuaikannya. Analisis metrik ini untuk memfokuskan upaya Anda mengoptimalkan efisiensi koleksi Anda. Untuk informasi selengkapnya tentang metrik yang dikirimkan OpenSearch Tanpa Server, lihat. CloudWatch [Memantau Amazon Tanpa OpenSearch Server](serverless-monitoring.md)

# Menyerap data ke dalam koleksi Amazon Tanpa OpenSearch Server
<a name="serverless-clients"></a>

Bagian ini memberikan detail tentang saluran pipa konsumsi yang didukung untuk konsumsi data ke dalam koleksi Amazon OpenSearch Tanpa Server. Mereka juga mencakup beberapa klien yang dapat Anda gunakan untuk berinteraksi dengan operasi OpenSearch API. Klien Anda harus kompatibel dengan OpenSearch 2.x untuk berintegrasi dengan Tanpa OpenSearch Server.

**Topics**
+ [Izin minimum yang diperlukan](#serverless-ingestion-permissions)
+ [OpenSearch Tertelan](#serverless-osis-ingestion)
+ [Fluent Bit](#serverless-fluentbit)
+ [Amazon Data Firehose](#serverless-kdf)
+ [Go](#serverless-go)
+ [Java](#serverless-java)
+ [JavaScript](#serverless-javascript)
+ [Logstash](#serverless-logstash)
+ [Python](#serverless-python)
+ [Ruby](#serverless-ruby)
+ [Menandatangani permintaan HTTP dengan klien lain](#serverless-signing)

## Izin minimum yang diperlukan
<a name="serverless-ingestion-permissions"></a>

[Untuk memasukkan data ke dalam koleksi OpenSearch Tanpa Server, prinsipal yang menulis data harus memiliki izin minimum berikut yang ditetapkan dalam kebijakan akses data:](serverless-data-access.md)

```
[
   {
      "Rules":[
         {
            "ResourceType":"index",
            "Resource":[
               "index/target-collection/logs"
            ],
            "Permission":[
               "aoss:CreateIndex",
               "aoss:WriteDocument",
               "aoss:UpdateIndex"
            ]
         }
      ],
      "Principal":[
         "arn:aws:iam::123456789012:user/my-user"
      ]
   }
]
```

Izin bisa lebih luas jika Anda berencana untuk menulis ke indeks tambahan. Misalnya, daripada menentukan indeks target tunggal, Anda dapat mengizinkan izin untuk semua indeks (index/ *target-collection* /\$1), atau subset indeks (index//). *target-collection* *logs\$1*

Untuk referensi semua operasi OpenSearch API yang tersedia dan izin terkait, lihat[Operasi dan plugin yang didukung di Amazon Tanpa Server OpenSearch](serverless-genref.md).

## OpenSearch Tertelan
<a name="serverless-osis-ingestion"></a>

Daripada menggunakan klien pihak ketiga untuk mengirim data langsung ke koleksi OpenSearch Tanpa Server, Anda dapat menggunakan Amazon OpenSearch Ingestion. Anda mengonfigurasi produsen data Anda untuk mengirim data ke OpenSearch Ingestion, dan secara otomatis mengirimkan data ke koleksi yang Anda tentukan. Anda juga dapat mengonfigurasi OpenSearch Ingestion untuk mengubah data Anda sebelum mengirimkannya. Untuk informasi selengkapnya, lihat [Sekilas tentang Amazon OpenSearch Ingestion](ingestion.md).

Pipeline OpenSearch Ingestion memerlukan izin untuk menulis ke koleksi OpenSearch Tanpa Server yang dikonfigurasi sebagai wastafelnya. Izin ini mencakup kemampuan untuk mendeskripsikan koleksi dan mengirim permintaan HTTP ke dalamnya. Untuk petunjuk penggunaan OpenSearch Ingestion untuk menambahkan data ke koleksi, lihat. [Memberikan akses saluran pipa Amazon OpenSearch Ingestion ke koleksi](pipeline-collection-access.md)

Untuk memulai dengan OpenSearch Ingestion, lihat. [Tutorial: Menelan data ke dalam koleksi menggunakan Amazon OpenSearch Ingestion](osis-serverless-get-started.md)

## Fluent Bit
<a name="serverless-fluentbit"></a>

Anda dapat menggunakan [AWS gambar Fluent Bit](https://github.com/aws/aws-for-fluent-bit#public-images) dan [plugin OpenSearch output](https://docs.fluentbit.io/manual/pipeline/outputs/opensearch) untuk mencerna data ke dalam koleksi Tanpa OpenSearch Server.

**catatan**  
Anda harus memiliki versi 2.30.0 atau yang lebih baru dari image AWS for Fluent Bit agar dapat diintegrasikan dengan Tanpa Server. OpenSearch 

**Contoh konfigurasi**:

Bagian keluaran sampel dari file konfigurasi ini menunjukkan cara menggunakan koleksi OpenSearch Tanpa Server sebagai tujuan. Penambahan penting adalah `AWS_Service_Name` parameter, yaitu`aoss`. `Host`adalah titik akhir koleksi.

```
[OUTPUT]
    Name  opensearch
    Match *
    Host  collection-endpoint.us-west-2.aoss.amazonaws.com
    Port  443
    Index  my_index
    Trace_Error On
    Trace_Output On
    AWS_Auth On
    AWS_Region <region>
    AWS_Service_Name aoss
    tls     On
    Suppress_Type_Name On
```

## Amazon Data Firehose
<a name="serverless-kdf"></a>

Firehose mendukung OpenSearch Tanpa Server sebagai tujuan pengiriman. *Untuk petunjuk pengiriman data ke OpenSearch Tanpa Server, lihat [Membuat Aliran Pengiriman Firehose Data Kinesis](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html) [dan OpenSearch Pilih Tanpa Server untuk Tujuan](https://docs.aws.amazon.com/firehose/latest/dev/create-destination.html#create-destination-opensearch-serverless) Anda di Panduan Pengembang Amazon Data Firehose.*

Peran IAM yang Anda berikan kepada Firehose untuk pengiriman harus ditentukan dalam kebijakan akses data dengan `aoss:WriteDocument` izin minimum untuk pengumpulan target, dan Anda harus memiliki indeks yang sudah ada sebelumnya untuk mengirim data. Untuk informasi selengkapnya, lihat [Izin minimum yang diperlukan](#serverless-ingestion-permissions).

Sebelum mengirim data ke OpenSearch Tanpa Server, Anda mungkin perlu melakukan transformasi pada data. Untuk mempelajari selengkapnya tentang penggunaan fungsi Lambda untuk menjalankan tugas ini, lihat Transformasi Data [Amazon Kinesis Data Firehose](https://docs.aws.amazon.com/firehose/latest/dev/data-transformation.html) dalam panduan yang sama.

## Go
<a name="serverless-go"></a>

Kode contoh berikut menggunakan klien [opensearch-go untuk Go](https://github.com/opensearch-project/opensearch-go) untuk membuat koneksi aman ke koleksi OpenSearch Tanpa Server yang ditentukan dan membuat indeks tunggal. Anda harus memberikan nilai untuk `region` dan `host`.

```
package main

import (
  "context"
  "log"
  "strings"
  "github.com/aws/aws-sdk-go-v2/aws"
  "github.com/aws/aws-sdk-go-v2/config"
  opensearch "github.com/opensearch-project/opensearch-go/v2"
  opensearchapi "github.com/opensearch-project/opensearch-go/v2/opensearchapi"
  requestsigner "github.com/opensearch-project/opensearch-go/v2/signer/awsv2"
)

const endpoint = "" // serverless collection endpoint

func main() {
	ctx := context.Background()

	awsCfg, err := config.LoadDefaultConfig(ctx,
		config.WithRegion("<AWS_REGION>"),
		config.WithCredentialsProvider(
			getCredentialProvider("<AWS_ACCESS_KEY>", "<AWS_SECRET_ACCESS_KEY>", "<AWS_SESSION_TOKEN>"),
		),
	)
	if err != nil {
		log.Fatal(err) // don't log.fatal in a production-ready app
	}

	// create an AWS request Signer and load AWS configuration using default config folder or env vars.
	signer, err := requestsigner.NewSignerWithService(awsCfg, "aoss") // "aoss" for Amazon OpenSearch Serverless
	if err != nil {
		log.Fatal(err) // don't log.fatal in a production-ready app
	}

	// create an opensearch client and use the request-signer
	client, err := opensearch.NewClient(opensearch.Config{
		Addresses: []string{endpoint},
		Signer:    signer,
	})
	if err != nil {
		log.Fatal("client creation err", err)
	}

	indexName := "go-test-index"

  // define index mapping
	mapping := strings.NewReader(`{
	 "settings": {
	   "index": {
	        "number_of_shards": 4
	        }
	      }
	 }`)

	// create an index
	createIndex := opensearchapi.IndicesCreateRequest{
		Index: indexName,
    Body: mapping,
	}
	createIndexResponse, err := createIndex.Do(context.Background(), client)
	if err != nil {
		log.Println("Error ", err.Error())
		log.Println("failed to create index ", err)
		log.Fatal("create response body read err", err)
	}
	log.Println(createIndexResponse)

	// delete the index
	deleteIndex := opensearchapi.IndicesDeleteRequest{
		Index: []string{indexName},
	}

	deleteIndexResponse, err := deleteIndex.Do(context.Background(), client)
	if err != nil {
		log.Println("failed to delete index ", err)
		log.Fatal("delete index response body read err", err)
	}
	log.Println("deleting index", deleteIndexResponse)
}

func getCredentialProvider(accessKey, secretAccessKey, token string) aws.CredentialsProviderFunc {
	return func(ctx context.Context) (aws.Credentials, error) {
		c := &aws.Credentials{
			AccessKeyID:     accessKey,
			SecretAccessKey: secretAccessKey,
			SessionToken:    token,
		}
		return *c, nil
	}
}
```

## Java
<a name="serverless-java"></a>

Kode contoh berikut menggunakan klien [opensearch-java](https://search.maven.org/artifact/org.opensearch.client/opensearch-java) untuk Java untuk membuat koneksi aman ke koleksi OpenSearch Serverless tertentu dan membuat indeks tunggal. Anda harus memberikan nilai untuk `region` dan `host`.

Perbedaan penting dibandingkan dengan *domain OpenSearch * Layanan adalah nama layanan (`aoss`bukan`es`).

```
// import OpenSearchClient to establish connection to OpenSearch Serverless collection
import org.opensearch.client.opensearch.OpenSearchClient;

SdkHttpClient httpClient = ApacheHttpClient.builder().build();
// create an opensearch client and use the request-signer
OpenSearchClient client = new OpenSearchClient(
    new AwsSdk2Transport(
        httpClient,
        "...us-west-2.aoss.amazonaws.com", // serverless collection endpoint
        "aoss" // signing service name
        Region.US_WEST_2, // signing service region
        AwsSdk2TransportOptions.builder().build()
    )
);

String index = "sample-index";

// create an index
CreateIndexRequest createIndexRequest = new CreateIndexRequest.Builder().index(index).build();
CreateIndexResponse createIndexResponse = client.indices().create(createIndexRequest);
System.out.println("Create index reponse: " + createIndexResponse);

// delete the index
DeleteIndexRequest deleteIndexRequest = new DeleteIndexRequest.Builder().index(index).build();
DeleteIndexResponse deleteIndexResponse = client.indices().delete(deleteIndexRequest);
System.out.println("Delete index reponse: " + deleteIndexResponse);

httpClient.close();
```

Kode sampel berikut lagi membuat koneksi aman, dan kemudian mencari indeks.

```
import org.opensearch.client.opensearch.OpenSearchClient;

SdkHttpClient httpClient = ApacheHttpClient.builder().build();

OpenSearchClient client = new OpenSearchClient(
    new AwsSdk2Transport(
        httpClient,
        "...us-west-2.aoss.amazonaws.com", // serverless collection endpoint
        "aoss" // signing service name
        Region.US_WEST_2, // signing service region
        AwsSdk2TransportOptions.builder().build()
    )
);

Response response = client.generic()
    .execute(
        Requests.builder()
            .endpoint("/" + "users" + "/_search?typed_keys=true")
            .method("GET")
            .json("{"
                + "    \"query\": {"
                + "        \"match_all\": {}"
                + "    }"
                + "}")
            .build());

httpClient.close();
```

## JavaScript
<a name="serverless-javascript"></a>

Kode contoh berikut menggunakan klien [opensearch-js](https://www.npmjs.com/package/@opensearch-project/opensearch) untuk membuat koneksi aman JavaScript ke koleksi OpenSearch Tanpa Server yang ditentukan, membuat indeks tunggal, menambahkan dokumen, dan menghapus indeks. Anda harus memberikan nilai untuk `node` dan `region`.

Perbedaan penting dibandingkan dengan *domain OpenSearch * Layanan adalah nama layanan (`aoss`bukan`es`).

------
#### [ Version 3 ]

Contoh ini menggunakan SDK [versi 3](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/) untuk JavaScript di Node.js.

```
const { defaultProvider } = require('@aws-sdk/credential-provider-node');
const { Client } = require('@opensearch-project/opensearch');
const { AwsSigv4Signer } = require('@opensearch-project/opensearch/aws');

async function main() {
    // create an opensearch client and use the request-signer
    const client = new Client({
        ...AwsSigv4Signer({
            region: 'us-west-2',
            service: 'aoss',
            getCredentials: () => {
                const credentialsProvider = defaultProvider();
                return credentialsProvider();
            },
        }),
        node: '' # // serverless collection endpoint
    });

    const index = 'movies';

    // create index if it doesn't already exist
    if (!(await client.indices.exists({ index })).body) {
        console.log((await client.indices.create({ index })).body);
    }

    // add a document to the index
    const document = { foo: 'bar' };
    const response = await client.index({
        id: '1',
        index: index,
        body: document,
    });
    console.log(response.body);

    // delete the index
    console.log((await client.indices.delete({ index })).body);
}

main();
```

------
#### [ Version 2 ]

Contoh ini menggunakan SDK [versi 2](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/) untuk JavaScript di Node.js.

```
const AWS = require('aws-sdk');
const { Client } = require('@opensearch-project/opensearch');
const { AwsSigv4Signer } = require('@opensearch-project/opensearch/aws');

async function main() {
    // create an opensearch client and use the request-signer
    const client = new Client({
        ...AwsSigv4Signer({
            region: 'us-west-2',
            service: 'aoss',
            getCredentials: () =>
                new Promise((resolve, reject) => {
                    AWS.config.getCredentials((err, credentials) => {
                        if (err) {
                            reject(err);
                        } else {
                            resolve(credentials);
                        }
                    });
                }),
        }),
        node: '' # // serverless collection endpoint
    });

    const index = 'movies';

    // create index if it doesn't already exist
    if (!(await client.indices.exists({ index })).body) {
        console.log((await client.indices.create({
            index
        })).body);
    }

    // add a document to the index
    const document = {
        foo: 'bar'
    };
    const response = await client.index({
        id: '1',
        index: index,
        body: document,
    });
    console.log(response.body);

    // delete the index
    console.log((await client.indices.delete({ index })).body);
}

main();
```

------

## Logstash
<a name="serverless-logstash"></a>

Anda dapat menggunakan [ OpenSearch plugin Logstash](https://github.com/opensearch-project/logstash-output-opensearch) untuk mempublikasikan log ke koleksi Tanpa OpenSearch Server. 

**Untuk menggunakan Logstash untuk mengirim data ke Tanpa Server OpenSearch**

1. Instal [logstash-output-opensearch](https://github.com/opensearch-project/logstash-output-opensearch)plugin versi *2.0.0 atau yang lebih baru* menggunakan Docker atau Linux.

------
#### [ Docker ]

   [Docker meng-host perangkat lunak Logstash OSS dengan plugin output yang sudah diinstal sebelumnya: opensearchproject/ OpenSearch -output-plugin. logstash-oss-with-opensearch](https://hub.docker.com/r/opensearchproject/logstash-oss-with-opensearch-output-plugin/tags?page=1&ordering=last_updated&name=8.4.0) Anda dapat menarik gambar seperti gambar lainnya:

   ```
   docker pull opensearchproject/logstash-oss-with-opensearch-output-plugin:latest
   ```

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

   Pertama, [instal versi terbaru Logstash](https://www.elastic.co/guide/en/logstash/current/installing-logstash.html) jika Anda belum melakukannya. Kemudian, instal versi 2.0.0 dari plugin output:

   ```
   cd logstash-8.5.0/
   bin/logstash-plugin install --version 2.0.0 logstash-output-opensearch
   ```

   Jika plugin sudah diinstal, perbarui ke versi terbaru:

   ```
   bin/logstash-plugin update logstash-output-opensearch 
   ```

   Dimulai dengan versi 2.0.0 plugin, AWS SDK menggunakan versi 3. Jika Anda menggunakan versi Logstash lebih awal dari 8.4.0, Anda harus menghapus plugin pra-instal dan menginstal AWS plugin: `logstash-integration-aws`

   ```
   /usr/share/logstash/bin/logstash-plugin remove logstash-input-s3
   /usr/share/logstash/bin/logstash-plugin remove logstash-input-sqs
   /usr/share/logstash/bin/logstash-plugin remove logstash-output-s3
   /usr/share/logstash/bin/logstash-plugin remove logstash-output-sns
   /usr/share/logstash/bin/logstash-plugin remove logstash-output-sqs
   /usr/share/logstash/bin/logstash-plugin remove logstash-output-cloudwatch
   
   /usr/share/logstash/bin/logstash-plugin install --version 0.1.0.pre logstash-integration-aws
   ```

------

1. Agar plugin OpenSearch output berfungsi dengan OpenSearch Tanpa Server, Anda harus membuat modifikasi berikut pada bagian `opensearch` output logstash.conf:
   + Tentukan `aoss` sebagai di `service_name` bawah`auth_type`.
   + Tentukan titik akhir koleksi Anda untuk`hosts`.
   + Tambahkan parameter `default_server_major_version` dan`legacy_template`. Parameter ini diperlukan agar plugin dapat bekerja dengan Tanpa OpenSearch Server.

   ```
   output {
     opensearch {
       hosts => "collection-endpoint:443"
       auth_type => {
         ...
         service_name => 'aoss'
       }
       default_server_major_version => 2
       legacy_template => false
     }
   }
   ```

   Contoh file konfigurasi ini mengambil inputnya dari file dalam bucket S3 dan mengirimkannya ke koleksi Tanpa OpenSearch Server:

   ```
   input {
     s3  {
       bucket => "my-s3-bucket"
       region => "us-east-1"
     }
   }
   
   output {
     opensearch {
       ecs_compatibility => disabled
       hosts => "https://my-collection-endpoint.us-east-1.aoss.amazonaws.com:443"
       index => my-index
       auth_type => {
         type => 'aws_iam'
         aws_access_key_id => 'your-access-key'
         aws_secret_access_key => 'your-secret-key'
         region => 'us-east-1'
         service_name => 'aoss'
       }
       default_server_major_version => 2
       legacy_template => false
     }
   }
   ```

1. Kemudian, jalankan Logstash dengan konfigurasi baru untuk menguji plugin:

   ```
   bin/logstash -f config/test-plugin.conf
   ```

## Python
<a name="serverless-python"></a>

Kode contoh berikut menggunakan klien [opensearch-py](https://pypi.org/project/opensearch-py/) untuk Python untuk membuat koneksi aman ke koleksi OpenSearch Tanpa Server yang ditentukan, membuat indeks tunggal, dan mencari indeks itu. Anda harus memberikan nilai untuk `region` dan `host`.

Perbedaan penting dibandingkan dengan *domain OpenSearch * Layanan adalah nama layanan (`aoss`bukan`es`).

```
from opensearchpy import OpenSearch, RequestsHttpConnection, AWSV4SignerAuth
import boto3

host = ''  # serverless collection endpoint, without https://
region = ''  # e.g. us-east-1

service = 'aoss'
credentials = boto3.Session().get_credentials()
auth = AWSV4SignerAuth(credentials, region, service)

# create an opensearch client and use the request-signer
client = OpenSearch(
    hosts=[{'host': host, 'port': 443}],
    http_auth=auth,
    use_ssl=True,
    verify_certs=True,
    connection_class=RequestsHttpConnection,
    pool_maxsize=20,
)

# create an index
index_name = 'books-index'
create_response = client.indices.create(
    index_name
)

print('\nCreating index:')
print(create_response)

# index a document
document = {
  'title': 'The Green Mile',
  'director': 'Stephen King',
  'year': '1996'
}

response = client.index(
    index = 'books-index',
    body = document,
    id = '1'
)


# delete the index
delete_response = client.indices.delete(
    index_name
)

print('\nDeleting index:')
print(delete_response)
```

## Ruby
<a name="serverless-ruby"></a>

`opensearch-aws-sigv4`Permata menyediakan akses ke OpenSearch Tanpa Server, bersama dengan OpenSearch Layanan, di luar kotak. Ini memiliki semua fitur klien [opensearch-ruby](https://rubygems.org/gems/opensearch-ruby) karena merupakan ketergantungan permata ini.

Saat membuat instance Sigv4 signer, tentukan `aoss` sebagai nama layanan:

```
require 'opensearch-aws-sigv4'
require 'aws-sigv4'

signer = Aws::Sigv4::Signer.new(service: 'aoss',
                                region: 'us-west-2',
                                access_key_id: 'key_id',
                                secret_access_key: 'secret')

# create an opensearch client and use the request-signer
client = OpenSearch::Aws::Sigv4Client.new(
  { host: 'https://your.amz-opensearch-serverless.endpoint',
    log: true },
  signer)

# create an index
index = 'prime'
client.indices.create(index: index)

# insert data
client.index(index: index, id: '1', body: { name: 'Amazon Echo', 
                                            msrp: '5999', 
                                            year: 2011 })

# query the index
client.search(body: { query: { match: { name: 'Echo' } } })

# delete index entry
client.delete(index: index, id: '1')

# delete the index
client.indices.delete(index: index)
```

## Menandatangani permintaan HTTP dengan klien lain
<a name="serverless-signing"></a>

Persyaratan berikut berlaku saat [menandatangani permintaan](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) ke koleksi OpenSearch Tanpa Server saat Anda membuat permintaan HTTP dengan klien lain.
+ Anda harus menentukan nama layanan sebagai`aoss`.
+ `x-amz-content-sha256`Header diperlukan untuk semua permintaan AWS Signature Version 4. Ini menyediakan hash dari payload permintaan. Jika ada payload permintaan, tetapkan nilainya ke hash kriptografi Secure Hash Algorithm (SHA). SHA256 Jika tidak ada payload permintaan, tetapkan nilainya`e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855`, yang merupakan hash dari string kosong.

**Topics**
+ [Pengindeksan dengan cURL](#serverless-signing-curl)
+ [Pengindeksan dengan Tukang Pos](#serverless-signing-postman)

### Pengindeksan dengan cURL
<a name="serverless-signing-curl"></a>

Contoh permintaan berikut menggunakan Client URL Request Library (cURL) untuk mengirim satu dokumen ke indeks bernama `movies-index` dalam koleksi:

```
curl -XPOST \
    --user "$AWS_ACCESS_KEY_ID":"$AWS_SECRET_ACCESS_KEY" \
    --aws-sigv4 "aws:amz:us-east-1:aoss" \
    --header "x-amz-content-sha256: $REQUEST_PAYLOAD_SHA_HASH" \
    --header "x-amz-security-token: $AWS_SESSION_TOKEN" \
    "https://my-collection-endpoint.us-east-1.aoss.amazonaws.com/movies-index/_doc" \
    -H "Content-Type: application/json" -d '{"title": "Shawshank Redemption"}'
```

### Pengindeksan dengan Tukang Pos
<a name="serverless-signing-postman"></a>

Gambar berikut menunjukkan cara mengirim permintaan ke koleksi menggunakan Postman. Untuk petunjuk mengautentikasi, lihat Mengautentikasi [dengan alur kerja autentikasi AWS Tanda Tangan di Tukang](https://learning.postman.com/docs/sending-requests/authorization/aws-signature/) Pos.

![\[JSON response showing creation of a "movies-index" with successful result and no shards.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/ServerlessPostman.png)


# Konfigurasikan Machine Learning di Amazon Tanpa OpenSearch Server
<a name="serverless-configure-machine-learning"></a>

## Machine Learning
<a name="serverless-configure-machine-learning-what-is"></a>

Machine Learning (ML) menyediakan kemampuan ML dalam bentuk algoritma ML dan model jarak jauh. Dengan akses ke model ini, Anda dapat menjalankan beberapa alur kerja AI seperti RAG atau pencarian semantik. ML mendukung eksperimen dan penyebaran produksi kasus penggunaan AI generatif menggunakan model terbaru yang dihosting secara eksternal yang dapat Anda konfigurasikan dengan konektor. Setelah Anda mengonfigurasi konektor, Anda harus mengonfigurasinya ke model dan kemudian menerapkannya untuk melakukan prediksi.

## Konektor
<a name="serverless-configure-machine-learning-connectors"></a>

Konektor memfasilitasi akses ke model yang dihosting di platform pihak ketiga. Mereka berfungsi sebagai pintu gerbang antara OpenSearch cluster Anda dan model jarak jauh. Untuk informasi selengkapnya, lihat dokumentasi berikut ini:
+ [Membuat konektor untuk platform ML pihak ketiga](https://docs.opensearch.org/latest/ml-commons-plugin/remote-models/connectors/) di situs web *OpenSearch Dokumentasi*
+ [Konektor untuk platform eksternal](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-external-connector.html)
+ [Konektor untuk Layanan AWS](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html)
**penting**  
Saat Anda membuat kebijakan kepercayaan, tambahkan **ml.opensearchservice.amazonaws.com** sebagai prinsip OpenSearch Layanan.
Lewati langkah-langkah di halaman [Konektor](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html) yang menampilkan cara mengonfigurasi domain dalam kebijakan.
Tambahkan `iam:PassRole` pernyataan di langkah [Konfigurasi izin](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html#connector-sagemaker-prereq).
Lewati langkah **peran Map the ML** di OpenSearch Dasbor. Konfigurasi peran backend tidak diperlukan. Ini berlaku untuk [Konektor untuk Layanan AWS](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-amazon-connector.html), dan untuk [Konektor untuk platform eksternal](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ml-external-connector.html).
Dalam permintaan SigV4 Anda ke titik akhir koleksi, setel nama layanan menjadi **aoss** bukan. **es**

## Model
<a name="serverless-configure-machine-learning-models"></a>

Model adalah fungsionalitas inti yang digunakan di berbagai alur kerja AI. Umumnya, Anda mengaitkan konektor dengan model untuk melakukan prediksi menggunakan konektor. Setelah model dalam status dikerahkan, Anda dapat menjalankan prediksi. Untuk informasi selengkapnya, lihat [Mendaftarkan model yang dihosting di platform pihak ketiga](https://docs.opensearch.org/latest/ml-commons-plugin/api/model-apis/register-model/#register-a-model-hosted-on-a-third-party-platform) di situs web *OpenSearch Dokumentasi*.

**catatan**  
Tidak semua fitur model didukung di OpenSearch Tanpa Server, seperti model lokal. Untuk informasi selengkapnya, lihat [Machine Learning APIs dan fitur yang tidak didukung](serverless-machine-learning-unsupported-features.md).

## Mengkonfigurasi izin untuk Machine Learning
<a name="serverless-configure-machine-learning-permissions"></a>

Bagian berikut menjelaskan kebijakan akses data pengumpulan yang diperlukan untuk Machine Learning (ML). Ganti *placeholder values* dengan informasi spesifik Anda. Untuk informasi selengkapnya, lihat [Izin kebijakan yang didukung](serverless-data-access.md#serverless-data-supported-permissions).

```
{
    "Rules": [
        {
            "Resource": [
                "model/collection_name/*"
            ],
            "Permission": [
                "aoss:DescribeMLResource",
                "aoss:CreateMLResource",
                "aoss:UpdateMLResource",
                "aoss:DeleteMLResource",
                "aoss:ExecuteMLResource"
            ],
            "ResourceType": "model"
        }
    ],
    "Principal": [
        "arn:aws:iam::account_id:role/role_name"
    ],
    "Description": "ML full access policy for collection_name"
}
```
+ **AOS: deskripsikan MLResource** - Memberikan izin untuk mencari dan meminta konektor, model, dan grup model.
+ **AOS: Create MLResource** - Memberikan izin untuk membuat konektor, model, dan grup model.
+ **AOS: Perbarui MLResource** - Memberikan izin untuk memperbarui konektor, model, dan grup model.
+ **AOS: Hapus MLResource - Memberikan** izin untuk menghapus konektor, model, dan grup model.
+ **AOS: Execute MLResource** - Memberikan izin untuk melakukan prediksi pada model.

# Machine Learning APIs dan fitur yang tidak didukung
<a name="serverless-machine-learning-unsupported-features"></a>

## Tidak didukung APIs
<a name="serverless-unsupported-ml-api"></a>

Machine Learning (ML) berikut APIs ini tidak didukung di Amazon Tanpa OpenSearch Server:
+ Fungsionalitas Model Lokal
+ Model Kereta API
+ Model Prediksi algoritma API
+ Model Batch Prediksi API
+ Agen API dan alat yang sesuai
+ MCP Server APIs
+ Memori APIs
+ Pengendali APIs
+ Jalankan API Algoritma
+ Profil ML AP
+ API statistik ML

Untuk informasi selengkapnya tentang ML APIs, lihat [ML APIs](https://docs.opensearch.org/latest/ml-commons-plugin/api/index/) di situs web *OpenSearch Dokumentasi*.

## Fitur yang tidak didukung
<a name="serverless-unsupported-ml-features"></a>

Fitur ML berikut tidak didukung di Amazon Tanpa OpenSearch Server:
+ Agen dan alat
+ Model lokal
+ Prosesor Inferensi ML dalam Search and Ingest Pipelines
  + Prosesor Pencerapan Inferensi ML
  + Prosesor Respon Pencarian Inferensi ML
  + Prosesor Permintaan Pencarian Inferensi

Untuk informasi selengkapnya tentang fitur-fitur ini, lihat dokumentasi berikut di situs web *OpenSearch Dokumentasi*:
+ [Pembelajaran mesin](https://docs.opensearch.org/latest/ml-commons-plugin)
+ [Prosesor inferensi mL](https://docs.opensearch.org/latest/ingest-pipelines/processors/ml-inference/)
+ [Cari saluran pipa](https://docs.opensearch.org/latest/search-plugins/search-pipelines/index/)

# Konfigurasikan Pencarian Neural dan Pencarian Hibrida di Tanpa OpenSearch Server
<a name="serverless-configure-neural-search"></a>

## Pencarian Saraf
<a name="serverless-configure-neural-search-what-is"></a>

Amazon OpenSearch Serverless mendukung fungsionalitas Pencarian Neural untuk operasi penelusuran semantik pada data Anda. Neural Search menggunakan model pembelajaran mesin untuk memahami makna semantik dan konteks kueri Anda, memberikan hasil pencarian yang lebih relevan daripada pencarian berbasis kata kunci tradisional. Bagian ini menjelaskan cara mengonfigurasi Pencarian Neural di OpenSearch Tanpa Server, termasuk izin yang diperlukan, prosesor yang didukung, dan perbedaan utama dari implementasi standar. OpenSearch 

Dengan Neural Search, Anda dapat melakukan penelusuran semantik pada data Anda, yang mempertimbangkan makna semantik untuk memahami maksud kueri penelusuran Anda. Kemampuan ini didukung oleh komponen-komponen berikut:
+ Prosesor pipa menelan penyematan teks
+ Permintaan saraf
+ Kueri jarang saraf

## Pencarian Hibrida
<a name="serverless-configure-hybrid-search"></a>

Dengan pencarian hybrid, Anda dapat meningkatkan relevansi pencarian dengan menggabungkan kata kunci dan kemampuan pencarian semantik. Untuk menggunakan pencarian hybrid, buat pipeline penelusuran yang memproses hasil penelusuran Anda dan menggabungkan skor dokumen. Untuk informasi selengkapnya, lihat [Cari saluran pipa](https://docs.opensearch.org/latest/search-plugins/search-pipelines/index/) di situs web *OpenSearch Dokumentasi*. Gunakan komponen berikut untuk mengimplementasikan pencarian hybrid:
+ Prosesor pipa pencarian normalisasi

**Teknik normalisasi yang didukung**
  + `min_max`
  + `l2`

**Teknik kombinasi yang didukung**
  + `arithmetic_mean`
  + `geometric_mean`
  + `harmonic_mean`

  Untuk informasi selengkapnya tentang teknik normalisasi dan kombinasi, lihat [Meminta kolom isi](https://docs.opensearch.org/latest/search-plugins/search-pipelines/normalization-processor/#request-body-fields) di situs web *OpenSearchDokumentasi*.
+ Kueri hibrida

## Kueri saraf dan hibrida
<a name="serverless-configure-neural-search-hybrid-queries"></a>

Secara default, OpenSearch menghitung skor dokumen menggunakan BM25 algoritma Okapi berbasis kata kunci, yang berfungsi dengan baik untuk kueri penelusuran yang berisi kata kunci. Neural Search menyediakan jenis kueri baru untuk kueri bahasa alami dan kemampuan untuk menggabungkan pencarian semantik dan kata kunci.

**Example : `neural`**  

```
"neural": {
  "vector_field": {
    "query_text": "query_text",
    "query_image": "image_binary",
    "model_id": "model_id",
    "k": 100
  }
}
```

Untuk informasi selengkapnya, lihat [Kueri saraf](https://docs.opensearch.org/latest/query-dsl/specialized/neural/) di situs web *OpenSearch Dokumentasi*.

**Example : `hybrid`**  

```
"hybrid": {
      "queries": [
        array of lexical, neural, or combined queries
      ]
    }
```

Untuk informasi selengkapnya, lihat [Kueri hibrida](https://docs.opensearch.org/latest/query-dsl/compound/hybrid/) di situs web *OpenSearch Dokumentasi*.

*Untuk mengonfigurasi komponen pencarian semantik di Amazon OpenSearch Tanpa Server, ikuti langkah-langkah dalam [tutorial Pencarian Neural di situs web Dokumentasi](https://docs.opensearch.org/latest/tutorials/vector-search/neural-search-tutorial/). OpenSearch * Ingatlah perbedaan-perbedaan penting ini:
+ OpenSearch Tanpa server hanya mendukung model jarak jauh. Anda harus mengonfigurasi konektor ke model yang dihosting dari jarak jauh. Anda tidak perlu menerapkan atau menghapus model jarak jauh. Untuk informasi selengkapnya, lihat [Memulai pencarian semantik dan hibrida](https://docs.opensearch.org/latest/tutorials/vector-search/neural-search-tutorial/) di situs web *OpenSearch Dokumentasi*.
+ Harapkan latensi hingga 15 detik saat Anda mencari indeks vektor Anda atau mencari saluran pipa pencarian dan konsumsi yang baru dibuat.

## Mengatur Konfigurasi Izin
<a name="serverless-configure-neural-search-permissions"></a>

Pencarian Neural di OpenSearch Tanpa Server memerlukan izin berikut. Untuk informasi selengkapnya, lihat [Izin kebijakan yang didukung](serverless-data-access.md#serverless-data-supported-permissions).

**Example : Kebijakan pencarian saraf**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "NeuralSearch",
            "Effect": "Allow",
            "Action": [
              "aoss:CreateIndex",
              "aoss:CreateCollection",
              "aoss:UpdateCollection",
              "aoss:DeleteIndex",
              "aoss:DeleteCollection"
            ],
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/your-collection-name"
        }
    ]
}
```
+ **aoss: \$1Index** — Membuat indeks vektor tempat penyematan teks disimpan.
+ **aoss: \$1 CollectionItems** — Membuat saluran pipa menelan dan mencari.
+ **aoss: \$1 MLResource** — Membuat dan mendaftarkan model penyematan teks.
+ **aoss: APIAccess Semua** - Menyediakan akses ke OpenSearch APIs operasi pencarian dan konsumsi.

Berikut ini menjelaskan kebijakan akses data pengumpulan yang diperlukan untuk pencarian saraf. Ganti *placeholder values* dengan informasi spesifik Anda.

**Example : Kebijakan akses data**  

```
[
    {
        "Description": "Create index permission",
        "Rules": [
            {
                "ResourceType": "index",
                "Resource": ["index/collection_name/*"],
                "Permission": [
                  "aoss:CreateIndex", 
                  "aoss:DescribeIndex",
                  "aoss:UpdateIndex",
                  "aoss:DeleteIndex"
                ]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    },
    {
        "Description": "Create pipeline permission",
        "Rules": [
            {
                "ResourceType": "collection",
                "Resource": ["collection/collection_name"],
                "Permission": [
                  "aoss:CreateCollectionItems",
                  "aoss:DescribeCollectionItems",
                  "aoss:UpdateCollectionItems",
                  "aoss:DeleteCollectionItems"
                ]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    },
    {
        "Description": "Create model permission",
        "Rules": [
            {
                "ResourceType": "model",
                "Resource": ["model/collection_name/*"],
                "Permission": ["aoss:CreateMLResources"]
            }
        ],
        "Principal": [
            "arn:aws:iam::account_id:role/role_name"
        ]
    }
]
```

# Konfigurasikan Alur Kerja di Amazon Tanpa Server OpenSearch
<a name="serverless-configure-workflows"></a>

## Alur kerja
<a name="serverless-configure-workflows-what-is"></a>

Alur kerja mendukung pembangun dalam berinovasi aplikasi AI di. OpenSearch Proses saat ini menggunakan penawaran pembelajaran mesin (ML) di OpenSearch, seperti Pencarian Semantik, memerlukan pengaturan yang kompleks dan tugas pra-pemrosesan, bersama dengan kueri pengguna verbose, yang keduanya dapat memakan waktu dan rawan kesalahan. Alur kerja adalah kerangka kerja penyederhanaan untuk menghubungkan beberapa panggilan API. OpenSearch

Untuk penyiapan dan penggunaan, lihat [Mengotomatiskan konfigurasi](https://docs.opensearch.org/docs/latest/automating-configurations/index/) di situs web. *OpenSearch* Saat Anda menggunakan Alur Kerja di OpenSearch Tanpa Server, pertimbangkan perbedaan penting ini:
+ OpenSearch Tanpa server hanya menggunakan model jarak jauh dalam langkah-langkah alur kerja. Anda tidak perlu menggunakan model ini.
+ OpenSearch Tanpa server tidak mendukung langkah **Re-index Workflow**.
+ Saat Anda mencari **status **Alur** Kerja dan Alur Kerja** setelah panggilan API lainnya, perkirakan latensi hingga 15 detik agar pembaruan muncul.

OpenSearch Koleksi Tanpa Server mendukung Alur Kerja saat digunakan sebagai sumber data di aplikasi UI Anda OpenSearch . Untuk informasi selengkapnya, lihat [Mengelola asosiasi sumber data](application-data-sources-and-vpc.md).

## Mengatur Konfigurasi Izin
<a name="serverless-configure-workflows-permissions"></a>

Sebelum Anda membuat dan menyediakan template, verifikasi bahwa Anda memiliki izin yang diperlukan. Jika Anda memerlukan bantuan, hubungi administrator akun Anda. OpenSearch Alur Kerja Tanpa Server memerlukan izin berikut. Anda dapat membuat cakupan izin ke koleksi tertentu dengan menentukan ARN sumber daya koleksi dalam kebijakan IAM Anda.

**Example : Kebijakan alur kerja**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "NeuralSearch",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::111122223333:role/Cognito_identitypoolname/Auth_Role"
        ]
      },
      "Action": [
        "aoss:CreateIndex",
        "aoss:CreateCollection",
        "aoss:UpdateCollection",
        "aoss:DeleteIndex",
        "aoss:DeleteCollection"
      ],
      "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/your-collection-name"
    }
  ]
}
```
+ **aoss: \$1 CollectionItems** — Memberikan izin untuk membuat dan mengelola template, dan menyediakan pipa [pencarian dan menelan](serverless-configure-neural-search.md).
+ **aoss: \$1Index** — Memberikan izin untuk membuat dan menghapus indeks menggunakan operasi API. OpenSearch 
+ **aoss: \$1 MLResource** — Memberikan izin untuk menyediakan langkah-langkah alur kerja yang menggunakan Configure Machine [Learning](serverless-configure-machine-learning.md).

# Ikhtisar keamanan di Amazon Tanpa OpenSearch Server
<a name="serverless-security"></a>

Keamanan di Amazon OpenSearch Tanpa Server berbeda secara mendasar dari keamanan di OpenSearch Layanan Amazon dengan cara berikut:


| Fitur | OpenSearch Layanan | OpenSearch Tanpa server | 
| --- | --- | --- | 
| Kontrol akses data | Akses data ditentukan oleh kebijakan IAM dan kontrol akses berbutir halus. | Akses data ditentukan oleh kebijakan akses data. | 
| Enkripsi saat istirahat | Enkripsi saat istirahat adalah opsional untuk domain. | Enkripsi saat istirahat diperlukan untuk koleksi. | 
| Pengaturan dan administrasi keamanan | Anda harus mengonfigurasi jaringan, enkripsi, dan akses data secara individual untuk setiap domain. | Anda dapat menggunakan kebijakan keamanan untuk mengelola pengaturan keamanan untuk beberapa koleksi dalam skala besar. | 

Diagram berikut menggambarkan komponen keamanan yang membentuk koleksi fungsional. Koleksi harus memiliki kunci enkripsi yang ditetapkan, setelan akses jaringan, dan kebijakan akses data yang cocok yang memberikan izin ke sumber dayanya.

![\[Diagram showing encryption, network, data access, and authentication policies for a collection.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-security.png)


**Topics**
+ [Kebijakan enkripsi](#serverless-security-encryption)
+ [Kebijakan jaringan](#serverless-security-network)
+ [Kebijakan akses data](#serverless-security-data-access)
+ [Autentikasi IAM dan SAMP](#serverless-security-authentication)
+ [Keamanan infrastruktur](#serverless-infrastructure-security)
+ [Memulai dengan keamanan di Amazon Tanpa OpenSearch Server](serverless-tutorials.md)
+ [Identity and Access Management untuk Amazon OpenSearch Serverless](security-iam-serverless.md)
+ [Enkripsi di Amazon Tanpa OpenSearch Server](serverless-encryption.md)
+ [Akses jaringan untuk Amazon Tanpa OpenSearch Server](serverless-network.md)
+ [Kepatuhan FIPS di Amazon Tanpa Server OpenSearch](fips-compliance-opensearch-serverless.md)
+ [Kontrol akses data untuk Amazon Tanpa OpenSearch Server](serverless-data-access.md)
+ [Akses pesawat data melalui AWS PrivateLink](serverless-vpc.md)
+ [Kontrol akses pesawat melalui AWS PrivateLink](serverless-vpc-cp.md)
+ [Otentikasi SAMP untuk Amazon Tanpa Server OpenSearch](serverless-saml.md)
+ [Validasi kepatuhan untuk Amazon Tanpa Server OpenSearch](serverless-compliance-validation.md)

## Kebijakan enkripsi
<a name="serverless-security-encryption"></a>

[Kebijakan enkripsi](serverless-encryption.md) menentukan apakah koleksi Anda dienkripsi dengan kunci yang dikelola pelanggan Kunci milik AWS atau pelanggan. Kebijakan enkripsi terdiri dari dua komponen: **pola sumber daya** dan **kunci enkripsi**. Pola sumber daya menentukan koleksi atau koleksi mana yang berlaku untuk kebijakan tersebut. Kunci enkripsi menentukan bagaimana koleksi terkait akan diamankan.

Untuk menerapkan kebijakan ke beberapa koleksi, Anda menyertakan wildcard (\$1) dalam aturan kebijakan. Misalnya, kebijakan berikut berlaku untuk semua koleksi dengan nama yang dimulai dengan “log”.

![\[Input field for specifying a prefix term or collection name, with "logs*" entered.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-security-encryption.png)


Kebijakan enkripsi merampingkan proses pembuatan dan pengelolaan koleksi, terutama ketika Anda melakukannya secara terprogram. Anda dapat membuat koleksi dengan menentukan nama, dan kunci enkripsi secara otomatis ditetapkan pada saat pembuatan. 

## Kebijakan jaringan
<a name="serverless-security-network"></a>

[Kebijakan jaringan](serverless-network.md) menentukan apakah koleksi Anda dapat diakses secara pribadi, atau melalui internet dari jaringan publik. *Koleksi pribadi dapat diakses melalui titik akhir VPC yang OpenSearch dikelola tanpa server, atau secara spesifik Layanan AWS seperti Amazon Bedrock menggunakan akses pribadi.Layanan AWS * Sama seperti kebijakan enkripsi, kebijakan jaringan dapat diterapkan ke beberapa koleksi, yang memungkinkan Anda mengelola akses jaringan untuk banyak koleksi dalam skala besar.

Kebijakan jaringan terdiri dari dua komponen: **tipe akses dan tipe** **sumber daya**. Jenis akses dapat bersifat publik atau pribadi. Jenis sumber daya menentukan apakah akses yang Anda pilih berlaku untuk titik akhir koleksi, titik akhir OpenSearch Dasbor, atau keduanya.

![\[Access type and resource type options for configuring network policies in OpenSearch.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-security-network.png)


Jika Anda berencana untuk mengonfigurasi akses VPC dalam kebijakan jaringan, Anda harus terlebih dahulu membuat satu atau beberapa titik akhir VPC yang dikelola Tanpa [OpenSearch Server.](serverless-vpc.md) Titik akhir ini memungkinkan Anda mengakses OpenSearch Tanpa Server seolah-olah berada di VPC Anda, tanpa menggunakan gateway internet, perangkat NAT, koneksi VPN, atau koneksi. Direct Connect 

Akses pribadi ke hanya Layanan AWS dapat diterapkan ke OpenSearch titik akhir koleksi, bukan ke titik akhir OpenSearch Dasbor. Layanan AWS tidak dapat diberikan akses ke OpenSearch Dasbor.

## Kebijakan akses data
<a name="serverless-security-data-access"></a>

[Kebijakan akses data](serverless-data-access.md) menentukan cara pengguna mengakses data dalam koleksi Anda. Kebijakan akses data membantu Anda mengelola koleksi dalam skala besar dengan secara otomatis menetapkan izin akses ke koleksi dan indeks yang cocok dengan pola tertentu. Beberapa kebijakan dapat diterapkan ke satu sumber daya.

Kebijakan akses data terdiri dari seperangkat aturan, masing-masing dengan tiga komponen: **jenis sumber daya**, **sumber daya yang diberikan**, dan sekumpulan **izin**. Jenis sumber daya dapat berupa koleksi atau indeks. Sumber daya yang diberikan dapat berupa collection/index nama atau pola dengan wildcard (\$1). Daftar izin menentukan [operasi OpenSearch API mana yang dapat diakses](serverless-genref.md#serverless-operations) oleh kebijakan. Selain itu, kebijakan tersebut berisi daftar **kepala sekolah, yang menentukan peran IAM**, pengguna, dan identitas SAMP untuk diberikan akses.

![\[Selected principals and granted resources with permissions for collection and index access.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-data-access.png)


Untuk informasi selengkapnya tentang format kebijakan akses data, lihat [sintaks kebijakan](serverless-data-access.md#serverless-data-access-syntax).

Sebelum Anda membuat kebijakan akses data, Anda harus memiliki satu atau beberapa peran IAM atau pengguna, atau identitas SAMP, untuk menyediakan akses ke dalam kebijakan. Untuk detailnya, lihat bagian selanjutnya.

**catatan**  
Beralih dari Akses Publik ke Pribadi untuk koleksi Anda, akan menghapus Tab Indeks di Konsol Koleksi OpenSearch Tanpa Server.

## Autentikasi IAM dan SAMP
<a name="serverless-security-authentication"></a>

 Prinsipal IAM dan identitas SAMP adalah salah satu blok bangunan kebijakan akses data. Dalam `principal` pernyataan kebijakan akses, Anda dapat menyertakan peran IAM, pengguna, dan identitas SAMP. Prinsipal ini kemudian diberikan izin yang Anda tentukan dalam aturan kebijakan terkait.

```
[
   {
      "Rules":[
         {
            "ResourceType":"index",
            "Resource":[
               "index/marketing/orders*"
            ],
            "Permission":[
               "aoss:*"
            ]
         }
      ],
      "Principal":[
         "arn:aws:iam::123456789012:user/Dale",
         "arn:aws:iam::123456789012:role/RegulatoryCompliance",
         "saml/123456789012/myprovider/user/Annie"
      ]
   }
]
```

Anda mengonfigurasi otentikasi SAMP secara langsung di dalam OpenSearch Tanpa Server. Untuk informasi selengkapnya, lihat [Otentikasi SAMP untuk Amazon Tanpa Server OpenSearch](serverless-saml.md). 

## Keamanan infrastruktur
<a name="serverless-infrastructure-security"></a>

Amazon OpenSearch Serverless dilindungi oleh keamanan jaringan AWS global. Untuk informasi tentang layanan AWS keamanan dan cara AWS melindungi infrastruktur, lihat [Keamanan AWS Cloud](https://aws.amazon.com/security/). Untuk mendesain AWS lingkungan Anda menggunakan praktik terbaik untuk keamanan infrastruktur, lihat [Perlindungan Infrastruktur dalam Kerangka Kerja](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) yang * AWS Diarsiteksikan dengan Baik Pilar Keamanan*.

Anda menggunakan panggilan API yang AWS dipublikasikan untuk mengakses Amazon OpenSearch Tanpa Server melalui jaringan. Klien harus mendukung Keamanan Lapisan Pengangkutan (TLS). Kami mensyaratkan TLS 1.2 dan menganjurkan TLS 1.3. Untuk daftar cipher yang didukung untuk TLS 1.3, lihat [protokol TLS dan cipher dalam dokumentasi](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#tls-protocols-ciphers) Elastic Load Balancing.

Selain itu, Anda harus menandatangani permintaan menggunakan ID kunci akses dan kunci akses rahasia yang terkait dengan prinsipal IAM. Atau Anda bisa menggunakan [AWS Security Token Service](https://docs.aws.amazon.com/STS/latest/APIReference/Welcome.html) (AWS STS) untuk membuat kredensial keamanan sementara guna menandatangani permintaan.

# Memulai dengan keamanan di Amazon Tanpa OpenSearch Server
<a name="serverless-tutorials"></a>

Tutorial berikut membantu Anda mulai menggunakan Amazon Tanpa OpenSearch Server. Kedua tutorial menyelesaikan langkah dasar yang sama, tetapi yang satu menggunakan konsol sementara yang lain menggunakan. AWS CLI

Perhatikan bahwa kasus penggunaan dalam tutorial ini disederhanakan. Kebijakan jaringan dan keamanan cukup terbuka. Dalam beban kerja produksi, kami menyarankan Anda mengonfigurasi fitur keamanan yang lebih kuat seperti otentikasi SAMP, akses VPC, dan kebijakan akses data yang membatasi.

**Topics**
+ [Tutorial: Memulai keamanan di Amazon OpenSearch Tanpa Server (konsol)](gsg-serverless.md)
+ [Tutorial: Memulai keamanan di Amazon OpenSearch Tanpa Server (CLI)](gsg-serverless-cli.md)

# Tutorial: Memulai keamanan di Amazon OpenSearch Tanpa Server (konsol)
<a name="gsg-serverless"></a>

Tutorial ini memandu Anda melalui langkah-langkah dasar untuk membuat dan mengelola kebijakan keamanan menggunakan konsol Amazon OpenSearch Tanpa Server.

Anda akan menyelesaikan langkah-langkah berikut dalam tutorial ini:

1. [Konfigurasikan izin](#gsgpermissions)

1. [Buat kebijakan enkripsi](#gsg-encryption)

1. [Buat kebijakan jaringan](#gsg-network)

1. [Konfigurasikan kebijakan akses data](#gsg-data-access)

1. [Buat koleksi](#gsgcreate-collection)

1. [Unggah dan cari data](#gsgindex-collection)

Tutorial ini memandu Anda melalui pengaturan koleksi menggunakan Konsol Manajemen AWS. Untuk langkah yang sama menggunakan AWS CLI, lihat[Tutorial: Memulai keamanan di Amazon OpenSearch Tanpa Server (CLI)](gsg-serverless-cli.md).

## Langkah 1: Konfigurasikan izin
<a name="gsgpermissions"></a>

**catatan**  
Anda dapat melewati langkah ini jika Anda sudah menggunakan kebijakan berbasis identitas yang lebih luas, seperti atau. `Action":"aoss:*"` `Action":"*"` Namun, di lingkungan produksi, kami menyarankan Anda mengikuti prinsip hak istimewa paling sedikit dan hanya menetapkan izin minimum yang diperlukan untuk menyelesaikan tugas.

Untuk menyelesaikan tutorial ini, Anda harus memiliki izin IAM yang benar. Pengguna atau peran Anda harus memiliki [kebijakan berbasis identitas terlampir dengan izin](security-iam-serverless.md#security-iam-serverless-id-based-policies) minimum berikut:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "aoss:ListCollections",
        "aoss:BatchGetCollection",
        "aoss:CreateCollection",
        "aoss:CreateSecurityPolicy",
        "aoss:GetSecurityPolicy",
        "aoss:ListSecurityPolicies",
        "aoss:CreateAccessPolicy",
        "aoss:GetAccessPolicy",
        "aoss:ListAccessPolicies"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

------

Untuk daftar lengkap izin OpenSearch Tanpa Server, lihat. [Identity and Access Management untuk Amazon OpenSearch Serverless](security-iam-serverless.md)

## Langkah 2: Buat kebijakan enkripsi
<a name="gsg-encryption"></a>

[Kebijakan enkripsi](serverless-encryption.md) menentukan AWS KMS kunci yang akan digunakan OpenSearch Tanpa Server untuk mengenkripsi koleksi. Anda dapat mengenkripsi koleksi dengan Kunci yang dikelola AWS atau kunci yang berbeda. Untuk kesederhanaan dalam tutorial ini, kita akan mengenkripsi koleksi kita dengan file Kunci yang dikelola AWS.

**Untuk membuat kebijakan enkripsi**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. **Perluas **Tanpa Server** di panel navigasi kiri dan pilih Kebijakan enkripsi.**

1. Pilih **Buat kebijakan enkripsi**.

1. Beri nama kebijakan **buku-buku kebijakan.** Untuk deskripsi, masukkan **Kebijakan enkripsi untuk koleksi buku**.

1. Di bawah **Sumber Daya**, masukkan **buku**, yang akan Anda beri nama koleksi Anda. Jika Anda ingin lebih luas, Anda dapat menyertakan tanda bintang (`books*`) untuk membuat kebijakan berlaku untuk semua koleksi yang dimulai dengan kata “buku”.

1. Untuk **Enkripsi**, tetap pilih **Gunakan kunci yang AWS dimiliki**.

1. Pilih **Buat**.

## Langkah 3: Buat kebijakan jaringan
<a name="gsg-network"></a>

[Kebijakan jaringan](serverless-network.md) menentukan apakah koleksi Anda dapat diakses melalui internet dari jaringan publik, atau apakah harus diakses melalui titik akhir VPC yang OpenSearch dikelola Tanpa Server. Dalam tutorial ini, kita akan mengkonfigurasi akses publik.

**Untuk membuat kebijakan jaringan**

1. Pilih **Kebijakan jaringan** di panel navigasi kiri dan pilih **Buat kebijakan jaringan**.

1. Beri nama kebijakan **buku-buku kebijakan.** Untuk deskripsi, masukkan **Kebijakan jaringan untuk koleksi buku**.

1. Di bawah **Aturan 1**, beri nama aturan **Akses publik untuk koleksi buku**.

1. Untuk kesederhanaan dalam tutorial ini, kita akan mengkonfigurasi akses publik untuk koleksi *buku*. Untuk jenis akses, pilih **Publik**.

1. Kita akan mengakses koleksi dari OpenSearch Dashboards. Untuk melakukan ini, Anda perlu mengonfigurasi akses jaringan untuk Dasbor *dan* OpenSearch titik akhir, jika tidak Dasbor tidak akan berfungsi.

   Untuk jenis sumber daya, aktifkan **Access to OpenSearch endpoint dan Access** **to OpenSearch Dashboards**.

1. Di kedua kotak input, masukkan **Nama Koleksi = buku**. Pengaturan ini mencakup kebijakan sehingga hanya berlaku untuk satu koleksi (`books`). Aturan Anda akan terlihat seperti ini:  
![\[Search interface showing two input fields for collection or prefix term selection, both set to "books".\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-tutorial-network.png)

1. Pilih **Buat**.

## Langkah 4: Buat kebijakan akses data
<a name="gsg-data-access"></a>

Data pengumpulan Anda tidak akan dapat diakses sampai Anda mengonfigurasi akses data. [Kebijakan akses data terpisah dari kebijakan](serverless-data-access.md) berbasis identitas IAM yang Anda konfigurasikan pada langkah 1. Mereka memungkinkan pengguna untuk mengakses data aktual dalam koleksi.

Dalam tutorial ini, kami akan memberikan satu pengguna izin yang diperlukan untuk mengindeks data ke dalam koleksi *buku*.

**Untuk membuat kebijakan akses data**

1. Pilih **Kebijakan akses data** di panel navigasi kiri dan pilih **Buat kebijakan akses**.

1. Beri nama kebijakan **buku-buku kebijakan.** Untuk deskripsi, masukkan **Kebijakan akses data untuk koleksi buku**.

1. Pilih **JSON** untuk metode definisi kebijakan dan tempel kebijakan berikut di editor JSON.

   Ganti ARN utama dengan ARN akun yang akan Anda gunakan untuk masuk ke OpenSearch Dasbor dan mengindeks data.

   ```
   [
      {
         "Rules":[
            {
               "ResourceType":"index",
               "Resource":[
                  "index/books/*"
               ],
               "Permission":[
                  "aoss:CreateIndex",
                  "aoss:DescribeIndex", 
                  "aoss:ReadDocument",
                  "aoss:WriteDocument",
                  "aoss:UpdateIndex",
                  "aoss:DeleteIndex"
               ]
            }
         ],
         "Principal":[
            "arn:aws:iam::123456789012:user/my-user"
         ]
      }
   ]
   ```

   Kebijakan ini memberi satu pengguna izin minimum yang diperlukan untuk membuat indeks dalam koleksi *buku*, mengindeks beberapa data, dan mencarinya.

1. Pilih **Buat**.

## Langkah 5: Buat koleksi
<a name="gsgcreate-collection"></a>

Sekarang setelah Anda mengonfigurasi enkripsi dan kebijakan jaringan, Anda dapat membuat koleksi yang cocok dan pengaturan keamanan akan diterapkan secara otomatis padanya.

**Untuk membuat koleksi OpenSearch Tanpa Server**

1. Pilih **Koleksi** di panel navigasi kiri dan pilih **Buat koleksi**.

1. Beri nama **buku** koleksi.

1. Untuk jenis koleksi, pilih **Cari**.

1. Di bawah **Enkripsi**, OpenSearch Tanpa Server memberi tahu Anda bahwa nama koleksi cocok dengan kebijakan enkripsi. `books-policy`

1. Di bawah **Pengaturan akses jaringan**, OpenSearch Tanpa Server memberi tahu Anda bahwa nama koleksi cocok dengan kebijakan jaringan. `books-policy`

1. Pilih **Berikutnya**.

1. Di bawah **opsi kebijakan akses data**, OpenSearch Tanpa Server memberi tahu Anda bahwa nama koleksi cocok dengan kebijakan akses `books-policy` data.

1. Pilih **Berikutnya**.

1. Tinjau konfigurasi koleksi dan pilih **Kirim**. Koleksi biasanya membutuhkan waktu kurang dari satu menit untuk diinisialisasi.

## Langkah 6: Unggah dan cari data
<a name="gsgindex-collection"></a>

Anda dapat mengunggah data ke koleksi OpenSearch Tanpa Server menggunakan Postman atau curl. Untuk singkatnya, contoh-contoh ini menggunakan **Dev Tools dalam konsol** OpenSearch Dashboards.

**Untuk mengindeks dan mencari data dalam koleksi**

1. Pilih **Koleksi** di panel navigasi kiri dan pilih koleksi **buku** untuk membuka halaman detailnya.

1. Pilih URL OpenSearch Dasbor untuk koleksi. URL mengambil format`https://collection-id.us-east-1.aoss.amazonaws.com/_dashboards`. 

1. Masuk ke OpenSearch Dasbor menggunakan [AWS akses dan kunci rahasia](https://docs.aws.amazon.com/powershell/latest/userguide/pstools-appendix-sign-up.html) untuk prinsipal yang Anda tentukan dalam kebijakan akses data Anda.

1. Di dalam OpenSearch Dashboards, buka menu navigasi kiri dan pilih **Dev** Tools.

1. Untuk membuat indeks tunggal yang disebut *books-index*, jalankan perintah berikut:

   ```
   PUT books-index 
   ```  
![\[OpenSearch Dashboards console showing PUT request for books-index with JSON response.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-createindex.png)

1. Untuk mengindeks satu dokumen ke *books-index*, jalankan perintah berikut:

   ```
   PUT books-index/_doc/1
   { 
     "title": "The Shining",
     "author": "Stephen King",
     "year": 1977
   }
   ```

1. Untuk mencari data di OpenSearch Dasbor, Anda perlu mengonfigurasi setidaknya satu pola indeks. OpenSearch menggunakan pola-pola ini untuk mengidentifikasi indeks mana yang ingin Anda analisis. Buka menu utama Dashboards, pilih **Stack Management**, pilih **Index Patterns**, dan kemudian pilih **Create index pattern**. Untuk tutorial ini, masukkan *books-index*.

1. Pilih **Langkah selanjutnya** dan kemudian pilih **Buat pola indeks**. Setelah pola dibuat, Anda dapat melihat berbagai bidang dokumen seperti `author` dan `title`.

1. Untuk mulai mencari data Anda, buka menu utama lagi dan pilih **Discover**, atau gunakan [API pencarian](https://opensearch.org/docs/latest/opensearch/rest-api/search/).

# Tutorial: Memulai keamanan di Amazon OpenSearch Tanpa Server (CLI)
<a name="gsg-serverless-cli"></a>

Tutorial ini memandu Anda melalui langkah-langkah yang dijelaskan dalam [tutorial memulai konsol](gsg-serverless.md) untuk keamanan, tetapi menggunakan AWS CLI bukan konsol OpenSearch Layanan. 

Anda akan menyelesaikan langkah-langkah berikut dalam tutorial ini:

1. Membuat kebijakan izin IAM

1. Menyelesaikan kebijakan IAM ke peran IAM

1. Buat kebijakan enkripsi

1. Buat kebijakan jaringan

1. Buat koleksi

1. Konfigurasikan kebijakan akses data

1. Ambil titik akhir koleksi

1. Unggah data ke koneksi Anda

1. Cari data dalam koleksi Anda

Tujuan dari tutorial ini adalah untuk mengatur koleksi OpenSearch Serverless tunggal dengan enkripsi, jaringan, dan pengaturan akses data yang cukup sederhana. Misalnya, kami akan mengonfigurasi akses jaringan publik, enkripsi Kunci yang dikelola AWS untuk, dan kebijakan akses data yang disederhanakan yang memberikan izin minimal kepada satu pengguna. 

Dalam skenario produksi, pertimbangkan untuk menerapkan konfigurasi yang lebih kuat, termasuk otentikasi SAMP, kunci enkripsi khusus, dan akses VPC.

**Untuk memulai dengan kebijakan keamanan di Tanpa OpenSearch Server**

1. 
**catatan**  
Anda dapat melewati langkah ini jika Anda sudah menggunakan kebijakan berbasis identitas yang lebih luas, seperti atau. `Action":"aoss:*"` `Action":"*"` Namun, di lingkungan produksi, kami menyarankan Anda mengikuti prinsip hak istimewa paling sedikit dan hanya menetapkan izin minimum yang diperlukan untuk menyelesaikan tugas.

   Untuk memulai, buat AWS Identity and Access Management kebijakan dengan izin minimum yang diperlukan untuk melakukan langkah-langkah dalam tutorial ini. Kami akan memberi nama kebijakan`TutorialPolicy`:

   ```
   aws iam create-policy \
     --policy-name TutorialPolicy \
     --policy-document "{\"Version\": \"2012-10-17\",\"Statement\": [{\"Action\": [\"aoss:ListCollections\",\"aoss:BatchGetCollection\",\"aoss:CreateCollection\",\"aoss:CreateSecurityPolicy\",\"aoss:GetSecurityPolicy\",\"aoss:ListSecurityPolicies\",\"aoss:CreateAccessPolicy\",\"aoss:GetAccessPolicy\",\"aoss:ListAccessPolicies\"],\"Effect\": \"Allow\",\"Resource\": \"*\"}]}"
   ```

   **Sampel respon**

   ```
   {
       "Policy": {
           "PolicyName": "TutorialPolicy",
           "PolicyId": "ANPAW6WRAECKG6QJWUV7U",
           "Arn": "arn:aws:iam::123456789012:policy/TutorialPolicy",
           "Path": "/",
           "DefaultVersionId": "v1",
           "AttachmentCount": 0,
           "PermissionsBoundaryUsageCount": 0,
           "IsAttachable": true,
           "CreateDate": "2022-10-16T20:57:18+00:00",
           "UpdateDate": "2022-10-16T20:57:18+00:00"
       }
   }
   ```

1. Lampirkan `TutorialPolicy` ke peran IAM yang akan mengindeks dan mencari data dalam koleksi. Kami akan memberi nama pengguna`TutorialRole`:

   ```
   aws iam attach-role-policy \
     --role-name TutorialRole \
     --policy-arn arn:aws:iam::123456789012:policy/TutorialPolicy
   ```

1. Sebelum membuat koleksi, Anda perlu membuat [kebijakan enkripsi](serverless-encryption.md) yang Kunci milik AWS menetapkan koleksi *buku* yang akan Anda buat di langkah selanjutnya.

   Kirim permintaan berikut untuk membuat kebijakan enkripsi untuk koleksi *buku*:

   ```
   aws opensearchserverless create-security-policy \
     --name books-policy \
     --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/books\"]}],\"AWSOwnedKey\":true}"
   ```

   **Sampel respon**

   ```
   {
       "securityPolicyDetail": {
           "type": "encryption",
           "name": "books-policy",
           "policyVersion": "MTY2OTI0MDAwNTk5MF8x",
           "policy": {
               "Rules": [
                   {
                       "Resource": [
                           "collection/books"
                       ],
                       "ResourceType": "collection"
                   }
               ],
               "AWSOwnedKey": true
           },
           "createdDate": 1669240005990,
           "lastModifiedDate": 1669240005990
       }
   }
   ```

1. Buat [kebijakan jaringan](serverless-network.md) yang menyediakan akses publik ke koleksi *buku*:

   ```
   aws opensearchserverless create-security-policy --name books-policy --type network \
     --policy "[{\"Description\":\"Public access for books collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/books\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/books\"]}],\"AllowFromPublic\":true}]"
   ```

   **Sampel respon**

   ```
   {
       "securityPolicyDetail": {
           "type": "network",
           "name": "books-policy",
           "policyVersion": "MTY2OTI0MDI1Njk1NV8x",
           "policy": [
               {
                   "Rules": [
                       {
                           "Resource": [
                               "collection/books"
                           ],
                           "ResourceType": "dashboard"
                       },
                       {
                           "Resource": [
                               "collection/books"
                           ],
                           "ResourceType": "collection"
                       }
                   ],
                   "AllowFromPublic": true,
                   "Description": "Public access for books collection"
               }
           ],
           "createdDate": 1669240256955,
           "lastModifiedDate": 1669240256955
       }
   }
   ```

1. Buat koleksi *buku*:

   ```
   aws opensearchserverless create-collection --name books --type SEARCH
   ```

   **Sampel respon**

   ```
   {
       "createCollectionDetail": {
           "id": "8kw362bpwg4gx9b2f6e0",
           "name": "books",
           "status": "CREATING",
           "type": "SEARCH",
           "arn": "arn:aws:aoss:us-east-1:123456789012:collection/8kw362bpwg4gx9b2f6e0",
           "kmsKeyArn": "auto",
           "createdDate": 1669240325037,
           "lastModifiedDate": 1669240325037
       }
   }
   ```

1. Buat [kebijakan akses data](serverless-data-access.md) yang memberikan izin minimum untuk mengindeks dan mencari data dalam koleksi *buku*. Ganti ARN utama dengan ARN dari `TutorialRole` langkah 1:

   ```
   aws opensearchserverless create-access-policy \
     --name books-policy \
     --type data \
     --policy "[{\"Rules\":[{\"ResourceType\":\"index\",\"Resource\":[\"index\/books\/books-index\"],\"Permission\":[\"aoss:CreateIndex\",\"aoss:DescribeIndex\",\"aoss:ReadDocument\",\"aoss:WriteDocument\",\"aoss:UpdateIndex\",\"aoss:DeleteIndex\"]}],\"Principal\":[\"arn:aws:iam::123456789012:role\/TutorialRole\"]}]"
   ```

   **Sampel respon**

   ```
   {
       "accessPolicyDetail": {
           "type": "data",
           "name": "books-policy",
           "policyVersion": "MTY2OTI0MDM5NDY1M18x",
           "policy": [
               {
                   "Rules": [
                       {
                           "Resource": [
                               "index/books/books-index"
                           ],
                           "Permission": [
                               "aoss:CreateIndex",
                               "aoss:DescribeIndex",
                               "aoss:ReadDocument",
                               "aoss:WriteDocument",
                               "aoss:UpdateDocument",
                               "aoss:DeleteDocument"
                           ],
                           "ResourceType": "index"
                       }
                   ],
                   "Principal": [
                       "arn:aws:iam::123456789012:role/TutorialRole"
                   ]
               }
           ],
           "createdDate": 1669240394653,
           "lastModifiedDate": 1669240394653
       }
   }
   ```

   `TutorialRole`sekarang harus dapat mengindeks dan mencari dokumen dalam koleksi *buku*. 

1. Untuk melakukan panggilan ke OpenSearch API, Anda memerlukan titik akhir koleksi. Kirim permintaan berikut untuk mengambil `collectionEndpoint` parameter:

   ```
   aws opensearchserverless batch-get-collection --names books  
   ```

   **Sampel respon**

   ```
   {
       "collectionDetails": [
           {
               "id": "8kw362bpwg4gx9b2f6e0",
               "name": "books",
               "status": "ACTIVE",
               "type": "SEARCH",
               "description": "",
               "arn": "arn:aws:aoss:us-east-1:123456789012:collection/8kw362bpwg4gx9b2f6e0",
               "createdDate": 1665765327107,
               "collectionEndpoint": "https://8kw362bpwg4gx9b2f6e0.us-east-1.aoss.amazonaws.com",
               "dashboardEndpoint": "https://8kw362bpwg4gx9b2f6e0.us-east-1.aoss.amazonaws.com/_dashboards"
           }
       ],
       "collectionErrorDetails": []
   }
   ```
**catatan**  
Anda tidak akan dapat melihat titik akhir koleksi hingga status koleksi berubah menjadi`ACTIVE`. Anda mungkin harus melakukan beberapa panggilan untuk memeriksa status hingga koleksi berhasil dibuat.

1. Gunakan alat HTTP seperti [Postman](https://www.getpostman.com/) atau curl untuk mengindeks data ke dalam koleksi *buku*. Kita akan membuat indeks yang disebut *books-index* dan menambahkan satu dokumen.

   Kirim permintaan berikut ke titik akhir koleksi yang Anda ambil di langkah sebelumnya, menggunakan kredensialnya. `TutorialRole`

   ```
   PUT https://8kw362bpwg4gx9b2f6e0.us-east-1.aoss.amazonaws.com/books-index/_doc/1
   { 
     "title": "The Shining",
     "author": "Stephen King",
     "year": 1977
   }
   ```

   **Sampel respon**

   ```
   {
     "_index" : "books-index",
     "_id" : "1",
     "_version" : 1,
     "result" : "created",
     "_shards" : {
       "total" : 0,
       "successful" : 0,
       "failed" : 0
     },
     "_seq_no" : 0,
     "_primary_term" : 0
   }
   ```

1. Untuk mulai mencari data dalam koleksi Anda, gunakan [API pencarian](https://opensearch.org/docs/latest/opensearch/rest-api/search/). Kueri berikut melakukan pencarian dasar:

   ```
   GET https://8kw362bpwg4gx9b2f6e0.us-east-1.aoss.amazonaws.com/books-index/_search
   ```

   **Sampel respon**

   ```
   {
       "took": 405,
       "timed_out": false,
       "_shards": {
           "total": 6,
           "successful": 6,
           "skipped": 0,
           "failed": 0
       },
       "hits": {
           "total": {
               "value": 2,
               "relation": "eq"
           },
           "max_score": 1.0,
           "hits": [
               {
                   "_index": "books-index:0::3xJq14MBUaOS0wL26UU9:0",
                   "_id": "F_bt4oMBLle5pYmm5q4T",
                   "_score": 1.0,
                   "_source": {
                       "title": "The Shining",
                       "author": "Stephen King",
                       "year": 1977
                   }
               }
           ]
       }
   }
   ```

# Identity and Access Management untuk Amazon OpenSearch Serverless
<a name="security-iam-serverless"></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 sumber daya Tanpa Server. OpenSearch IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.

**Topics**
+ [Kebijakan berbasis identitas untuk Tanpa Server OpenSearch](#security-iam-serverless-id-based-policies)
+ [Tindakan kebijakan untuk Tanpa OpenSearch Server](#security-iam-serverless-id-based-policies-actions)
+ [Sumber daya kebijakan untuk Tanpa OpenSearch Server](#security-iam-serverless-id-based-policies-resources)
+ [Kunci kondisi kebijakan untuk Amazon Tanpa OpenSearch Server](#security_iam_serverless-conditionkeys)
+ [ABAC dengan Tanpa Server OpenSearch](#security_iam_serverless-with-iam-tags)
+ [Menggunakan kredensil sementara dengan Tanpa Server OpenSearch](#security_iam_serverless-tempcreds)
+ [Peran terkait layanan untuk Tanpa Server OpenSearch](#security_iam_serverless-slr)
+ [Jenis-jenis kebijakan lain](#security_iam_access-manage-other-policies)
+ [Contoh kebijakan berbasis identitas untuk Tanpa Server OpenSearch](#security_iam_serverless_id-based-policy-examples)
+ [Dukungan Pusat Identitas IAM untuk Amazon Tanpa Server OpenSearch](serverless-iam-identity-center.md)

## Kebijakan berbasis identitas untuk Tanpa Server OpenSearch
<a name="security-iam-serverless-id-based-policies"></a>

**Mendukung kebijakan berbasis identitas**: Ya

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

Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan secara spesifik apakah tindakan dan sumber daya diizinkan atau ditolak, serta kondisi yang menjadi dasar dikabulkan atau ditolaknya tindakan tersebut. Untuk mempelajari semua elemen yang dapat Anda gunakan dalam kebijakan JSON, lihat [Referensi elemen kebijakan JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) dalam *Panduan Pengguna IAM*.

### Contoh kebijakan berbasis identitas untuk Tanpa Server OpenSearch
<a name="security_iam_id-based-policy-examples"></a>

Untuk melihat contoh kebijakan berbasis identitas OpenSearch Tanpa Server, lihat. [Contoh kebijakan berbasis identitas untuk Tanpa Server OpenSearch](#security_iam_serverless_id-based-policy-examples)

## Tindakan kebijakan untuk Tanpa OpenSearch Server
<a name="security-iam-serverless-id-based-policies-actions"></a>

**Mendukung tindakan kebijakan:** Ya

Elemen `Action` dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan. Tindakan kebijakan biasanya memiliki nama yang sama dengan operasi AWS API terkait. Ada beberapa pengecualian, misalnya *tindakan hanya izin* yang tidak memiliki operasi API yang cocok. Ada juga beberapa operasi yang memerlukan beberapa tindakan dalam suatu kebijakan. Tindakan tambahan ini disebut *tindakan dependen*.

Sertakan tindakan dalam kebijakan untuk memberikan izin untuk melakukan operasi terkait.

Tindakan kebijakan di OpenSearch Tanpa Server menggunakan awalan berikut sebelum tindakan:

```
aoss
```

Untuk menetapkan secara spesifik beberapa tindakan dalam satu pernyataan, pisahkan tindakan tersebut dengan koma.

```
"Action": [
      "aoss:action1",
      "aoss:action2"
         ]
```

Anda dapat menentukan beberapa tindakan menggunakan karakter wildcard (\$1). Sebagai contoh, untuk menentukan semua tindakan yang dimulai dengan kata `Describe`, sertakan tindakan berikut:

```
"Action": "aoss:List*"
```

Untuk melihat contoh kebijakan berbasis identitas OpenSearch Tanpa Server, lihat. [Contoh kebijakan berbasis identitas untuk Tanpa Server OpenSearch](#security_iam_id-based-policy-examples)

## Sumber daya kebijakan untuk Tanpa OpenSearch Server
<a name="security-iam-serverless-id-based-policies-resources"></a>

**Mendukung sumber daya kebijakan:** Ya

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana **utama** dapat melakukan **tindakan** pada **sumber daya**, dan dalam **kondisi apa**.

Elemen kebijakan JSON `Resource` menentukan objek yang menjadi target penerapan tindakan. Praktik terbaiknya, tentukan sumber daya menggunakan [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, gunakan wildcard (\$1) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.

```
"Resource": "*"
```

## Kunci kondisi kebijakan untuk Amazon Tanpa OpenSearch Server
<a name="security_iam_serverless-conditionkeys"></a>

**Mendukung kunci kondisi kebijakan khusus layanan:** Yes

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, **principal** dapat melakukan **tindakan** pada suatu **sumber daya**, dan dalam suatu **syarat**.

Elemen `Condition` menentukan ketika pernyataan dieksekusi berdasarkan kriteria yang ditetapkan. Anda dapat membuat ekspresi bersyarat yang menggunakan [operator kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta. Untuk melihat semua kunci kondisi AWS global, lihat [kunci konteks kondisi AWS global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) di *Panduan Pengguna IAM*.

Selain kontrol akses berbasis atribut (ABAC), OpenSearch Tanpa Server mendukung kunci kondisi berikut:
+ `aoss:collection`
+ `aoss:CollectionId`
+ `aoss:index`

Anda dapat menggunakan kunci kondisi ini bahkan ketika memberikan izin untuk kebijakan akses dan kebijakan keamanan. Contoh:

```
[
   {
      "Effect":"Allow",
      "Action":[
         "aoss:CreateAccessPolicy",
         "aoss:CreateSecurityPolicy"
      ],
      "Resource":"*",
      "Condition":{
         "StringLike":{
            "aoss:collection":"log"
         }
      }
   }
]
```

Dalam contoh ini, kondisi berlaku untuk kebijakan yang berisi *aturan* yang cocok dengan nama atau pola koleksi. Kondisi memiliki perilaku berikut:
+ `StringEquals`- Berlaku untuk kebijakan dengan aturan yang berisi string sumber daya *yang tepat* “log” (yaitu`collection/log`).
+ `StringLike`- Berlaku untuk kebijakan dengan aturan yang berisi string sumber daya yang *menyertakan* string “log” (yaitu `collection/log` tetapi juga `collection/logs-application` atau`collection/applogs123`).

**catatan**  
Kunci kondisi *koleksi* tidak berlaku di tingkat indeks. Misalnya, dalam kebijakan di atas, kondisi tidak akan berlaku untuk akses atau kebijakan keamanan yang berisi string sumber daya`index/logs-application/*`.

*Untuk melihat daftar kunci kondisi OpenSearch Tanpa Server, lihat Kunci kondisi untuk [Amazon OpenSearch Tanpa Server](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html#amazonopensearchserverless-policy-keys) di Referensi Otorisasi Layanan.* Untuk mempelajari tindakan dan sumber daya yang dapat Anda gunakan kunci kondisi, lihat [Tindakan yang ditentukan oleh Amazon Tanpa OpenSearch Server](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html#amazonopensearchserverless-actions-as-permissions).

## ABAC dengan Tanpa Server OpenSearch
<a name="security_iam_serverless-with-iam-tags"></a>

**Mendukung ABAC (tanda dalam kebijakan):** Ya

Kontrol akses berbasis atribut (ABAC) adalah strategi otorisasi yang menentukan izin berdasarkan atribut tanda. Anda dapat melampirkan tag ke entitas dan AWS sumber daya IAM, lalu merancang kebijakan ABAC untuk mengizinkan operasi saat tag prinsipal cocok dengan tag pada sumber daya.

Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di [elemen kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dari kebijakan menggunakan kunci kondisi `aws:ResourceTag/key-name`, `aws:RequestTag/key-name`, atau `aws:TagKeys`.

Jika sebuah layanan mendukung ketiga kunci kondisi untuk setiap jenis sumber daya, nilainya adalah **Ya** untuk layanan tersebut. Jika suatu layanan mendukung ketiga kunci kondisi untuk hanya beberapa jenis sumber daya, nilainya adalah **Parsial**.

Untuk informasi selengkapnya tentang ABAC, lihat [Tentukan izin dengan otorisasi ABAC](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) dalam *Panduan Pengguna IAM.* Untuk melihat tutorial yang menguraikan langkah-langkah pengaturan ABAC, lihat [Menggunakan kontrol akses berbasis atribut (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) dalam *Panduan Pengguna IAM*.

Untuk informasi selengkapnya tentang menandai sumber daya OpenSearch Tanpa Server, lihat. [Menandai koleksi Amazon Tanpa OpenSearch Server](tag-collection.md)

## Menggunakan kredensil sementara dengan Tanpa Server OpenSearch
<a name="security_iam_serverless-tempcreds"></a>

**Mendukung kredensial sementara:** Ya

Kredensi sementara menyediakan akses jangka pendek ke AWS sumber daya dan secara otomatis dibuat saat Anda menggunakan federasi atau beralih peran. AWS merekomendasikan agar Anda secara dinamis menghasilkan kredensi sementara alih-alih menggunakan kunci akses jangka panjang. Untuk informasi selengkapnya, lihat [Kredensial keamanan sementara di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) dan [Layanan AWS yang berfungsi dengan IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) dalam *Panduan Pengguna IAM*.

## Peran terkait layanan untuk Tanpa Server OpenSearch
<a name="security_iam_serverless-slr"></a>

**Mendukung peran terkait layanan**: Ya

 Peran terkait layanan adalah jenis peran layanan yang ditautkan ke. Layanan AWS Layanan tersebut dapat menjalankan peran untuk melakukan tindakan atas nama Anda. Peran terkait layanan muncul di Anda Akun AWS dan dimiliki oleh layanan. Administrator IAM dapat melihat, tetapi tidak dapat mengedit izin untuk peran terkait layanan. 

Untuk detail tentang membuat dan mengelola peran terkait layanan OpenSearch Tanpa Server, lihat. [Menggunakan peran terkait layanan untuk membuat OpenSearch koleksi Tanpa Server](serverless-service-linked-roles.md)

## Jenis-jenis kebijakan lain
<a name="security_iam_access-manage-other-policies"></a>

AWS mendukung jenis kebijakan tambahan yang kurang umum. Jenis-jenis kebijakan ini dapat mengatur izin maksimum yang diberikan kepada Anda oleh jenis kebijakan yang lebih umum.
+ **Kebijakan kontrol layanan (SCPs)** — SCPs adalah kebijakan JSON yang menentukan izin maksimum untuk organisasi atau unit organisasi (OU) di. AWS Organizations AWS Organizations adalah layanan untuk mengelompokkan dan mengelola beberapa AWS akun secara terpusat yang dimiliki bisnis Anda. Jika Anda mengaktifkan semua fitur dalam organisasi, Anda dapat menerapkan kebijakan kontrol layanan (SCPs) ke salah satu atau semua akun Anda. SCP membatasi izin untuk entitas di akun anggota, termasuk setiap pengguna root AWS akun. Untuk informasi selengkapnya tentang Organizations dan SCPs, lihat [Kebijakan kontrol layanan](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) di *Panduan AWS Organizations Pengguna*.
+ **Kebijakan kontrol sumber daya (RCPs)** — RCPs adalah kebijakan JSON yang dapat Anda gunakan untuk menetapkan izin maksimum yang tersedia untuk sumber daya di akun Anda tanpa memperbarui kebijakan IAM yang dilampirkan ke setiap sumber daya yang Anda miliki. RCP membatasi izin untuk sumber daya di akun anggota dan dapat memengaruhi izin identitas yang efektif, termasuk pengguna root AWS akun, terlepas dari apakah mereka milik organisasi Anda. Untuk informasi selengkapnya tentang Organizations dan RCPs, termasuk daftar AWS layanan yang mendukung RCPs, lihat [Kebijakan kontrol sumber daya (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) di *Panduan AWS Organizations Pengguna*.

## Contoh kebijakan berbasis identitas untuk Tanpa Server OpenSearch
<a name="security_iam_serverless_id-based-policy-examples"></a>

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasi sumber daya OpenSearch Tanpa Server. Untuk memberikan izin kepada pengguna untuk melakukan tindakan di sumber daya yang mereka perlukan, administrator IAM dapat membuat kebijakan IAM.

*Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat [Membuat kebijakan IAM (konsol) di Panduan Pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html).*

*Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh Amazon OpenSearch Tanpa Server, termasuk format ARNs untuk setiap jenis sumber daya, lihat [Kunci tindakan, sumber daya, dan kondisi untuk Amazon OpenSearch Tanpa Server](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonopensearchserverless.html) di Referensi Otorisasi Layanan.*

**Topics**
+ [Praktik terbaik kebijakan](#security_iam_serverless-policy-best-practices)
+ [Menggunakan OpenSearch Tanpa Server di konsol](#security_iam_serverless_id-based-policy-examples-console)
+ [Mengelola koleksi OpenSearch Tanpa Server](#security_iam_id-based-policy-examples-collection-admin)
+ [Melihat OpenSearch koleksi Tanpa Server](#security_iam_id-based-policy-examples-view-collections)
+ [Menggunakan operasi OpenSearch API](#security_iam_id-based-policy-examples-data-plane)
+ [ABAC untuk operasi OpenSearch API](#security_iam_id-based-policy-examples-data-plane-abac)

### Praktik terbaik kebijakan
<a name="security_iam_serverless-policy-best-practices"></a>

Kebijakan berbasis identitas adalah pilihan yang sangat tepat. Mereka menentukan apakah seseorang dapat membuat, mengakses, atau menghapus sumber daya OpenSearch Tanpa Server di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus sumber daya OpenSearch Tanpa Server di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:
+ **Mulailah dengan kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit — Untuk mulai memberikan izin** kepada pengguna dan beban kerja Anda, gunakan *kebijakan AWS terkelola* yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola AWS pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat [Kebijakan yang dikelola AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) atau [Kebijakan yang dikelola AWS untuk fungsi tugas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) dalam *Panduan Pengguna IAM*.
+ **Menerapkan izin dengan hak akses paling rendah** – Ketika Anda menetapkan izin dengan kebijakan IAM, hanya berikan izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai *izin dengan hak akses paling rendah*. Untuk informasi selengkapnya tentang cara menggunakan IAM untuk mengajukan izin, lihat [Kebijakan dan izin dalam IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dalam *Panduan Pengguna IAM*.
+ **Gunakan kondisi dalam kebijakan IAM untuk membatasi akses lebih lanjut** – Anda dapat menambahkan suatu kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Sebagai contoh, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui yang spesifik Layanan AWS, seperti CloudFormation. Untuk informasi selengkapnya, lihat [Elemen kebijakan JSON IAM: Kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dalam *Panduan Pengguna IAM*.
+ **Gunakan IAM Access Analyzer untuk memvalidasi kebijakan IAM Anda untuk memastikan izin yang aman dan fungsional** – IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa kebijakan IAM (JSON) dan praktik terbaik IAM. IAM Access Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat [Validasi kebijakan dengan IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) dalam *Panduan Pengguna IAM*.
+ **Memerlukan otentikasi multi-faktor (MFA)** - Jika Anda memiliki skenario yang mengharuskan pengguna IAM atau pengguna root di Anda, Akun AWS aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA ketika operasi API dipanggil, tambahkan kondisi MFA pada kebijakan Anda. Untuk informasi selengkapnya, lihat [Amankan akses API dengan MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) dalam *Panduan Pengguna IAM*.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat [Praktik terbaik keamanan di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dalam *Panduan Pengguna IAM*.

### Menggunakan OpenSearch Tanpa Server di konsol
<a name="security_iam_serverless_id-based-policy-examples-console"></a>

Untuk mengakses OpenSearch Tanpa Server dalam konsol OpenSearch Layanan, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang sumber daya OpenSearch Tanpa Server di akun Anda. AWS Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana dimaksud untuk entitas (seperti peran IAM) dengan kebijakan tersebut.

Anda tidak perlu mengizinkan izin konsol minimum 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.

Kebijakan berikut memungkinkan pengguna mengakses OpenSearch Tanpa Server dalam konsol OpenSearch Layanan:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "*",
            "Effect": "Allow",
            "Action": [
                "aoss:ListCollections",
                "aoss:BatchGetCollection",
                "aoss:ListAccessPolicies",
                "aoss:ListSecurityConfigs",
                "aoss:ListSecurityPolicies",
                "aoss:ListTagsForResource",
                "aoss:ListVpcEndpoints",
                "aoss:GetAccessPolicy",
                "aoss:GetAccountSettings",
                "aoss:GetSecurityConfig",
                "aoss:GetSecurityPolicy"
            ]
        }
    ]
}
```

------

### Mengelola koleksi OpenSearch Tanpa Server
<a name="security_iam_id-based-policy-examples-collection-admin"></a>

Kebijakan ini adalah contoh kebijakan “admin koleksi” yang memungkinkan pengguna mengelola dan mengelola koleksi Amazon Tanpa OpenSearch Server. Pengguna dapat membuat, melihat, dan menghapus koleksi.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/*",
            "Action": [
                "aoss:CreateCollection",
                "aoss:DeleteCollection",
                "aoss:UpdateCollection"
            ],
            "Effect": "Allow"
        },
        {
            "Resource": "*",
            "Action": [
                "aoss:BatchGetCollection",
                "aoss:ListCollections",
                "aoss:CreateAccessPolicy",
                "aoss:CreateSecurityPolicy"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

### Melihat OpenSearch koleksi Tanpa Server
<a name="security_iam_id-based-policy-examples-view-collections"></a>

Kebijakan contoh ini memungkinkan pengguna untuk melihat detail untuk semua koleksi Amazon OpenSearch Tanpa Server di akun mereka. Pengguna tidak dapat mengubah koleksi atau kebijakan keamanan terkait.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Resource": "*",
            "Action": [
                "aoss:ListAccessPolicies",
                "aoss:ListCollections",
                "aoss:ListSecurityPolicies",
                "aoss:ListTagsForResource",
                "aoss:BatchGetCollection"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

### Menggunakan operasi OpenSearch API
<a name="security_iam_id-based-policy-examples-data-plane"></a>

Operasi API bidang data terdiri dari fungsi yang Anda gunakan di OpenSearch Tanpa Server untuk mendapatkan nilai realtime dari layanan. Operasi API bidang kontrol terdiri dari fungsi yang Anda gunakan untuk mengatur lingkungan. 

Untuk mengakses bidang data Amazon OpenSearch Tanpa Server APIs dan OpenSearch Dasbor dari browser, Anda perlu menambahkan dua izin IAM untuk sumber daya pengumpulan. Izin ini adalah `aoss:APIAccessAll` dan`aoss:DashboardsAccessAll`. 

**catatan**  
Mulai 10 Mei 2023, OpenSearch Tanpa Server memerlukan dua izin IAM baru ini untuk sumber daya pengumpulan. `aoss:APIAccessAll`Izin memungkinkan akses pesawat data, dan `aoss:DashboardsAccessAll` izin memungkinkan OpenSearch Dasbor dari browser. Kegagalan untuk menambahkan dua izin IAM baru menghasilkan kesalahan 403. 

Kebijakan contoh ini memungkinkan pengguna mengakses bidang data APIs untuk koleksi tertentu di akun mereka, dan mengakses OpenSearch Dasbor untuk semua koleksi di akun mereka.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
         {
            "Effect": "Allow",
            "Action": "aoss:APIAccessAll",
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/collection-id"
        },
        {
            "Effect": "Allow",
            "Action": "aoss:DashboardsAccessAll",
            "Resource": "arn:aws:aoss:us-east-1:111122223333:dashboards/default"
        }
    ]
}
```

------

Keduanya `aoss:APIAccessAll` dan `aoss:DashboardsAccessAll` memberikan izin IAM penuh ke sumber daya pengumpulan, sementara izin Dasbor juga menyediakan akses OpenSearch Dasbor. Setiap izin bekerja secara independen, jadi penolakan eksplisit `aoss:APIAccessAll` tidak memblokir `aoss:DashboardsAccessAll` akses ke sumber daya, termasuk Alat Pengembang. Hal yang sama berlaku untuk penyangkalan`aoss:DashboardsAccessAll`. OpenSearch Tanpa server mendukung kunci kondisi global berikut: 
+ `aws:CalledVia`
+ `aws:CalledViaAWSService`
+ `aws:CalledViaFirst`
+ `aws:CalledViaLast`
+ `aws:CurrentTime`
+ `aws:EpochTime`
+ `aws:PrincipalAccount`
+ `aws:PrincipalArn`
+ `aws:PrincipallsAWSService`
+ `aws:PrincipalOrgID`
+ `aws:PrincipalOrgPaths`
+ `aws:PrincipalType`
+ `aws:PrincipalServiceName`
+ `aws:PrincipalServiceNamesList`
+ `aws:ResourceAccount`
+ `aws:ResourceOrgID`
+ `aws:ResourceOrgPaths`
+ `aws:RequestedRegion`
+ `aws:ResourceTag`
+ `aws:SourceIp`
+ `aws:SourceVpce`
+ `aws:SourceVpc`
+ `aws:userid`
+ `aws:username`
+ `aws:VpcSourceIp`

Berikut ini adalah contoh penggunaan blok kondisi `aws:SourceIp` dalam kebijakan IAM prinsipal Anda untuk panggilan pesawat data:

```
"Condition": {
    "IpAddress": {
         "aws:SourceIp": "203.0.113.0"
    }
}
```

Berikut ini adalah contoh penggunaan blok kondisi `aws:SourceVpc` dalam kebijakan IAM prinsipal Anda untuk panggilan pesawat data:

```
"Condition": {
    "StringEquals": {
        "aws:SourceVpc": "vpc-0fdd2445d8EXAMPLE"
    }
}
```

Selain itu, dukungan ditawarkan untuk kunci spesifik Tanpa OpenSearch Server berikut: 
+ `aoss:CollectionId`
+ `aoss:collection`

Berikut ini adalah contoh penggunaan blok kondisi `aoss:collection` dalam kebijakan IAM prinsipal Anda untuk panggilan pesawat data:

```
"Condition": {
    "StringLike": {
         "aoss:collection": "log-*"
    }
}
```

### ABAC untuk operasi OpenSearch API
<a name="security_iam_id-based-policy-examples-data-plane-abac"></a>

Kebijakan berbasis identitas memungkinkan Anda menggunakan tag untuk mengontrol akses ke bidang data Amazon Tanpa OpenSearch Server. APIs Kebijakan berikut adalah contoh untuk mengizinkan prinsipal terlampir mengakses bidang data APIs jika koleksi memiliki tag: `team:devops`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "aoss:APIAccessAll",
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/collection-id",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/team": "devops"
                }
            }
        }
    ]
}
```

------

Kebijakan berikut adalah contoh untuk menolak prinsipal terlampir untuk mengakses bidang data APIs dan akses Dasbor jika koleksi memiliki tag: `environment:production`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "aoss:APIAccessAll",
                "aoss:DashboardsAccessAll"
            ],
            "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/collection-id"
        }
    ]
}
```

------

Amazon OpenSearch Serverless tidak mendukung `RequestTag` dan kunci kondisi `TagKeys` global untuk bidang data. APIs 

# Dukungan Pusat Identitas IAM untuk Amazon Tanpa Server OpenSearch
<a name="serverless-iam-identity-center"></a>

## Dukungan Pusat Identitas IAM untuk Amazon Tanpa Server OpenSearch
<a name="serverless-iam-identity-support"></a>

Anda dapat menggunakan prinsipal Pusat Identitas IAM (pengguna dan grup) untuk mengakses data Amazon OpenSearch Tanpa Server melalui Aplikasi Amazon. OpenSearch Untuk mengaktifkan dukungan Pusat Identitas IAM untuk Amazon OpenSearch Tanpa Server, Anda harus mengaktifkan penggunaan Pusat Identitas IAM. Untuk mempelajari lebih lanjut tentang cara melakukannya, lihat [Apa itu Pusat Identitas IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)?

**catatan**  
Untuk mengakses koleksi Amazon OpenSearch Tanpa Server menggunakan pengguna atau grup Pusat Identitas IAM, Anda harus menggunakan fitur OpenSearch UI (Aplikasi). Akses langsung ke Dasbor OpenSearch Tanpa Server menggunakan kredenal Pusat Identitas IAM tidak didukung. Untuk informasi selengkapnya, lihat [Memulai dengan antarmuka OpenSearch pengguna](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/application.html).

Setelah instans Pusat Identitas IAM dibuat, administrator akun pelanggan perlu membuat aplikasi Pusat Identitas IAM untuk layanan Amazon Tanpa OpenSearch Server. Ini dapat dilakukan dengan menghubungi [CreateSecurityConfig:](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateSecurityConfig.html). Administrator akun pelanggan dapat menentukan atribut apa yang akan digunakan untuk mengotorisasi permintaan. Atribut default yang digunakan adalah `UserId` dan `GroupId.`

Integrasi Pusat Identitas IAM untuk Amazon OpenSearch Tanpa Server menggunakan izin IAM Identity Center ( AWS IAM) berikut:
+ `aoss:CreateSecurityConfig`— Buat penyedia Pusat Identitas IAM
+ `aoss:ListSecurityConfig`— Daftar semua penyedia Pusat Identitas IAM di akun saat ini.
+ `aoss:GetSecurityConfig`— Lihat informasi penyedia Pusat Identitas IAM.
+ `aoss:UpdateSecurityConfig`— Ubah konfigurasi Pusat Identitas IAM yang diberikan
+ `aoss:DeleteSecurityConfig`— Hapus penyedia Pusat Identitas IAM. 

Kebijakan akses berbasis identitas berikut dapat digunakan untuk mengelola semua konfigurasi Pusat Identitas IAM:

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

****  

```
{
"Version": "2012-10-17",
    "Statement": [
        {
"Action": [
                "aoss:CreateSecurityConfig",
                "aoss:DeleteSecurityConfig",
                "aoss:GetSecurityConfig",
                "aoss:UpdateSecurityConfig",
                "aoss:ListSecurityConfigs"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

**catatan**  
`Resource`Elemen harus menjadi wildcard.

## Membuat penyedia Pusat Identitas IAM (konsol)
<a name="serverless-iam-console"></a>

Anda dapat membuat penyedia Pusat Identitas IAM untuk mengaktifkan otentikasi dengan OpenSearch Aplikasi. Untuk mengaktifkan autentikasi IAM Identity Center untuk OpenSearch Dasbor, lakukan langkah-langkah berikut:

1. Masuk ke [konsol OpenSearch Layanan Amazon](https://console.aws.amazon.com/aos/home.).

1. **Di panel navigasi kiri, perluas **Tanpa Server** dan pilih Otentikasi.**

1. Pilih **autentikasi Pusat Identitas IAM**.

1. Pilih **Edit**

1. Centang kotak di sebelah Autentikasi dengan Pusat Identitas IAM.

1. Pilih kunci atribut **pengguna dan grup** dari menu dropdown. Atribut pengguna akan digunakan untuk mengotorisasi pengguna berdasarkan`UserName`,`UserId`, dan`Email`. Atribut grup akan digunakan untuk mengautentikasi pengguna berdasarkan `GroupName` dan`GroupId`.

1. Pilih instance **IAM Identity Center**.

1. Pilih **Simpan**

## Membuat penyedia Pusat Identitas IAM ()AWS CLI
<a name="serverless-iam-identity-center-cli"></a>

Untuk membuat penyedia Pusat Identitas IAM menggunakan AWS Command Line Interface (AWS CLI) gunakan perintah berikut:

```
aws opensearchserverless create-security-config \
--region us-east-2 \
--name "iamidentitycenter-config" \
--description "description" \
--type "iamidentitycenter" \
--iam-identity-center-options '{
    "instanceArn": "arn:aws:sso:::instance/ssoins-99199c99e99ee999",
    "userAttribute": "UserName",                  
    "groupAttribute": "GroupId"
}'
```

Setelah Pusat Identitas IAM diaktifkan, pelanggan hanya dapat memodifikasi atribut **pengguna dan grup**.

```
aws opensearchserverless update-security-config \
--region us-east-1 \
--id <id_from_list_security_configs> \
--config-version <config_version_from_get_security_config> \
--iam-identity-center-options-updates '{
    "userAttribute": "UserId",
    "groupAttribute": "GroupId"
}'
```

Untuk melihat penyedia Pusat Identitas IAM menggunakan AWS Command Line Interface, gunakan perintah berikut:

```
aws opensearchserverless list-security-configs --type iamidentitycenter
```

## Menghapus penyedia Pusat Identitas IAM
<a name="serverless-iam-identity-center-deleting"></a>

 IAM Identity Center menawarkan dua contoh penyedia, satu untuk akun organisasi Anda dan satu untuk akun anggota Anda. Jika Anda perlu mengubah instance IAM Identity Center, Anda perlu menghapus konfigurasi keamanan Anda melalui `DeleteSecurityConfig` API dan membuat konfigurasi keamanan baru menggunakan instance IAM Identity Center yang baru. Perintah berikut dapat digunakan untuk menghapus penyedia Pusat Identitas IAM:

```
aws opensearchserverless delete-security-config \
--region us-east-1 \
--id <id_from_list_security_configs>
```

## Memberikan akses Pusat Identitas IAM ke pengumpulan data
<a name="serverless-iam-identity-center-collection-data"></a>

Setelah penyedia Pusat Identitas IAM diaktifkan, Anda dapat memperbarui kebijakan akses data pengumpulan untuk menyertakan prinsip-prinsip Pusat Identitas IAM. Prinsipal IAM Identity Center perlu diperbarui dalam format berikut: 

```
[
   {
"Rules":[
       ...  
      ],
      "Principal":[
         "iamidentitycenter/<iamidentitycenter-instance-id>/user/<UserName>",
         "iamidentitycenter/<iamidentitycenter-instance-id>/group/<GroupId>"
      ]
   }
]
```

**catatan**  
Amazon OpenSearch Serverless hanya mendukung satu instans Pusat Identitas IAM untuk semua koleksi pelanggan dan dapat mendukung hingga 100 grup untuk satu pengguna. Jika Anda mencoba menggunakan lebih dari jumlah instans yang diizinkan, Anda akan mengalami ketidakkonsistenan dengan pemrosesan otorisasi kebijakan akses data Anda dan menerima pesan `403` kesalahan. 

Anda dapat memberikan akses ke koleksi, indeks, atau keduanya. Jika Anda ingin pengguna yang berbeda memiliki izin yang berbeda, Anda harus membuat beberapa aturan. Untuk daftar izin yang tersedia, lihat [Identity and Access Management di Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ac.html). Untuk informasi tentang cara memformat kebijakan akses, lihat [Memberikan identitas SALL akses ke](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-saml.html#serverless-saml-policies) data pengumpulan. 

# Enkripsi di Amazon Tanpa OpenSearch Server
<a name="serverless-encryption"></a>

## Enkripsi saat diam
<a name="serverless-encryption-at-rest"></a>

Setiap koleksi Amazon OpenSearch Tanpa Server yang Anda buat dilindungi dengan enkripsi data saat istirahat, fitur keamanan yang membantu mencegah akses tidak sah ke data Anda. Enkripsi saat istirahat menggunakan AWS Key Management Service (AWS KMS) untuk menyimpan dan mengelola kunci enkripsi Anda. Ini menggunakan algoritma Advanced Encryption Standard dengan kunci 256-bit (AES-256) untuk melakukan enkripsi.

**Topics**
+ [Kebijakan enkripsi](#serverless-encryption-policies)
+ [Pertimbangan-pertimbangan](#serverless-encryption-considerations)
+ [Izin diperlukan](#serverless-encryption-permissions)
+ [Kebijakan kunci untuk kunci yang dikelola pelanggan](#serverless-customer-cmk-policy)
+ [Bagaimana OpenSearch Tanpa Server menggunakan hibah di AWS KMS](#serverless-encryption-grants)
+ [Membuat kebijakan enkripsi (konsol)](#serverless-encryption-console)
+ [Membuat kebijakan enkripsi (AWS CLI)](#serverless-encryption-cli)
+ [Melihat kebijakan enkripsi](#serverless-encryption-list)
+ [Memperbarui kebijakan enkripsi](#serverless-encryption-update)
+ [Menghapus kebijakan enkripsi](#serverless-encryption-delete)

### Kebijakan enkripsi
<a name="serverless-encryption-policies"></a>

Dengan kebijakan enkripsi, Anda dapat mengelola banyak koleksi dalam skala besar dengan secara otomatis menetapkan kunci enkripsi ke koleksi yang baru dibuat yang cocok dengan nama atau pola tertentu.

Saat membuat kebijakan enkripsi, Anda dapat menentukan *awalan*, yang merupakan aturan pencocokan berbasis wildcard seperti`MyCollection*`, atau memasukkan satu nama koleksi. Kemudian, saat Anda membuat koleksi yang cocok dengan nama atau pola awalan tersebut, kebijakan dan kunci KMS terkait secara otomatis ditetapkan padanya.

Saat membuat koleksi, Anda dapat menentukan AWS KMS kunci dalam dua cara: melalui kebijakan keamanan atau langsung dalam `CreateCollection` permintaan. Jika Anda memberikan AWS KMS kunci sebagai bagian dari `CreateCollection` permintaan, itu lebih diutamakan daripada kebijakan keamanan yang cocok. Dengan pendekatan ini, Anda memiliki fleksibilitas untuk mengganti pengaturan enkripsi berbasis kebijakan untuk koleksi tertentu bila diperlukan.

![\[Encryption policy creation process with rules and collection matching to KMS key.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-encryption.png)


Kebijakan enkripsi berisi elemen-elemen berikut:
+ `Rules`— satu atau lebih aturan pencocokan koleksi, masing-masing dengan sub-elemen berikut:
  + `ResourceType`— Saat ini satu-satunya pilihan adalah “koleksi”. Kebijakan enkripsi hanya berlaku untuk sumber daya pengumpulan.
  + `Resource`— Satu atau lebih nama koleksi atau pola yang akan diterapkan kebijakan, dalam format`collection/<collection name|pattern>`.
+ `AWSOwnedKey`— Apakah akan menggunakan Kunci milik AWS.
+ `KmsARN`— Jika Anda menyetel `AWSOwnedKey` ke false, tentukan Nama Sumber Daya Amazon (ARN) dari kunci KMS untuk mengenkripsi koleksi terkait. Jika Anda menyertakan parameter ini, OpenSearch Serverless mengabaikan parameter. `AWSOwnedKey`

Kebijakan sampel berikut akan menetapkan kunci yang dikelola pelanggan untuk koleksi masa depan yang dinamai`autopartsinventory`, serta koleksi yang dimulai dengan istilah “penjualan”:

```
{
   "Rules":[
      {
         "ResourceType":"collection",
         "Resource":[
            "collection/autopartsinventory",
            "collection/sales*"
         ]
      }
   ],
   "AWSOwnedKey":false,
   "KmsARN":"arn:aws:kms:us-east-1:123456789012:key/93fd6da4-a317-4c17-bfe9-382b5d988b36"
}
```

Meskipun kebijakan cocok dengan nama koleksi, Anda dapat memilih untuk mengganti penetapan otomatis ini selama pembuatan koleksi jika pola sumber daya berisi wildcard (\$1). Jika Anda memilih untuk mengganti penetapan kunci otomatis, OpenSearch Tanpa Server akan membuat kebijakan enkripsi untuk Anda bernama **auto-< *collection-name* >** dan melampirkannya ke koleksi. Kebijakan awalnya hanya berlaku untuk satu koleksi, tetapi Anda dapat memodifikasinya untuk menyertakan koleksi tambahan.

Jika Anda mengubah aturan kebijakan agar tidak lagi cocok dengan koleksi, kunci KMS terkait tidak akan dibatalkan dari koleksi tersebut. Koleksi selalu tetap dienkripsi dengan kunci enkripsi awalnya. Jika Anda ingin mengubah kunci enkripsi untuk koleksi, Anda harus membuat ulang koleksi.

Jika aturan dari beberapa kebijakan cocok dengan koleksi, aturan yang lebih spesifik akan digunakan. Misalnya, jika satu kebijakan berisi aturan untuk`collection/log*`, dan yang lain untuk`collection/logSpecial`, kunci enkripsi untuk kebijakan kedua digunakan karena lebih spesifik.

Anda tidak dapat menggunakan nama atau awalan dalam kebijakan jika sudah ada di kebijakan lain. OpenSearch Tanpa server menampilkan kesalahan jika Anda mencoba mengonfigurasi pola sumber daya yang identik dalam kebijakan enkripsi yang berbeda.

### Pertimbangan-pertimbangan
<a name="serverless-encryption-considerations"></a>

Pertimbangkan hal berikut saat Anda mengonfigurasi enkripsi untuk koleksi Anda:
+ Enkripsi saat istirahat *diperlukan* untuk semua koleksi tanpa server.
+ Anda memiliki opsi untuk menggunakan kunci yang dikelola pelanggan atau Kunci milik AWS. Jika Anda memilih kunci yang dikelola pelanggan, kami sarankan Anda mengaktifkan [rotasi kunci otomatis](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html).
+ Anda tidak dapat mengubah kunci enkripsi untuk koleksi setelah koleksi dibuat. Hati-hati AWS KMS memilih mana yang akan digunakan saat pertama kali Anda menyiapkan koleksi.
+ Koleksi hanya dapat mencocokkan satu kebijakan enkripsi.
+ Koleksi dengan kunci KMS unik tidak dapat berbagi OpenSearch Compute Units (OCUs) dengan koleksi lain. Setiap koleksi dengan kunci unik membutuhkan 4 OCUs.
+ Jika Anda memperbarui kunci KMS dalam kebijakan enkripsi, perubahan tersebut tidak memengaruhi koleksi pencocokan yang ada dengan kunci KMS yang telah ditetapkan.
+ OpenSearch Tanpa server tidak secara eksplisit memeriksa izin pengguna pada kunci yang dikelola pelanggan. Jika pengguna memiliki izin untuk mengakses koleksi melalui kebijakan akses data, mereka akan dapat menelan dan menanyakan data yang dienkripsi dengan kunci terkait.

### Izin diperlukan
<a name="serverless-encryption-permissions"></a>

Enkripsi saat istirahat untuk OpenSearch Tanpa Server menggunakan izin AWS Identity and Access Management (IAM) berikut. Anda dapat menentukan kondisi IAM untuk membatasi pengguna ke koleksi tertentu.
+ `aoss:CreateSecurityPolicy`— Buat kebijakan enkripsi.
+ `aoss:ListSecurityPolicies`— Buat daftar semua kebijakan enkripsi dan koleksi yang dilampirkan.
+ `aoss:GetSecurityPolicy`— Lihat detail kebijakan enkripsi tertentu.
+ `aoss:UpdateSecurityPolicy`— Memodifikasi kebijakan enkripsi.
+ `aoss:DeleteSecurityPolicy`— Hapus kebijakan enkripsi.

Contoh kebijakan akses berbasis identitas berikut memberikan izin minimum yang diperlukan bagi pengguna untuk mengelola kebijakan enkripsi dengan pola sumber daya. `collection/application-logs`

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

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "aoss:CreateSecurityPolicy",
            "aoss:UpdateSecurityPolicy",
            "aoss:DeleteSecurityPolicy",
            "aoss:GetSecurityPolicy"
         ],
         "Resource":"*",
         "Condition":{
            "StringEquals":{
               "aoss:collection":"application-logs"
            }
         }
      },
      {
         "Effect":"Allow",
         "Action":[
            "aoss:ListSecurityPolicies"
         ],
         "Resource":"*"
      }
   ]
}
```

------

### Kebijakan kunci untuk kunci yang dikelola pelanggan
<a name="serverless-customer-cmk-policy"></a>

Jika Anda memilih [kunci yang dikelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) untuk melindungi koleksi, OpenSearch Tanpa Server mendapat izin untuk menggunakan kunci KMS atas nama kepala sekolah yang membuat pilihan. Prinsipal itu, pengguna atau peran, harus memiliki izin pada kunci KMS yang diperlukan Tanpa OpenSearch Server. Anda dapat memberikan izin ini dalam [kebijakan utama atau kebijakan](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) [IAM](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html).

OpenSearch Pembuatan tanpa server `GenerateDataKey` dan panggilan API `Decrypt` KMS selama operasi pemeliharaan seperti penskalaan otomatis dan pembaruan perangkat lunak. Anda dapat mengamati panggilan ini di luar pola lalu lintas khas Anda. Panggilan ini adalah bagian dari operasi layanan normal dan tidak menunjukkan lalu lintas pengguna aktif. 

OpenSearch Tanpa server melempar `KMSKeyInaccessibleException` ketika tidak dapat mengakses kunci KMS yang mengenkripsi data Anda saat istirahat. Ini terjadi ketika Anda menonaktifkan atau menghapus kunci KMS, atau mencabut hibah yang memungkinkan Tanpa OpenSearch Server untuk menggunakan kunci.

Minimal, OpenSearch Tanpa Server memerlukan izin berikut pada kunci yang dikelola pelanggan:
+ [km: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)
+ [km: CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)

Contoh:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Action": "kms:DescribeKey",
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::123456789012:user/Dale"
        },
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "kms:ViaService": "aoss.us-east-1.amazonaws.com"
            }
        }
    },
    {
        "Action": "kms:CreateGrant",
        "Effect": "Allow",
        "Principal": {
            "AWS": "arn:aws:iam::123456789012:user/Dale"
        },
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "kms:ViaService": "aoss.us-east-1.amazonaws.com"
            },
            "ForAllValues:StringEquals": {
                "kms:GrantOperations": [
                    "Decrypt",
                    "GenerateDataKey"
                ]
            },
            "Bool": {
                "kms:GrantIsForAWSResource": "true"
            }
        }
    }
  ]
}
```

------

OpenSearch [Tanpa server membuat hibah dengan izin [kms: GenerateDataKey dan kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html).](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)

Untuk informasi selengkapnya, lihat [Menggunakan kebijakan kunci di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) dalam *Panduan Developer AWS Key Management Service *.

### Bagaimana OpenSearch Tanpa Server menggunakan hibah di AWS KMS
<a name="serverless-encryption-grants"></a>

OpenSearch Tanpa server memerlukan [hibah](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) untuk menggunakan kunci yang dikelola pelanggan.

Saat Anda membuat kebijakan enkripsi di akun Anda dengan kunci baru, OpenSearch Tanpa Server membuat hibah atas nama Anda dengan mengirimkan [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)permintaan ke. AWS KMS Hibah AWS KMS digunakan untuk memberikan akses OpenSearch Tanpa Server ke kunci KMS di akun pelanggan.

OpenSearch Tanpa server memerlukan hibah untuk menggunakan kunci yang dikelola pelanggan Anda untuk operasi internal berikut:
+ Kirim [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)permintaan AWS KMS untuk memverifikasi bahwa ID kunci terkelola pelanggan simetris yang diberikan valid. 
+ Kirim [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)permintaan ke kunci KMS untuk membuat kunci data yang dapat digunakan untuk mengenkripsi objek.
+ Kirim permintaan [Dekripsi](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) ke AWS KMS untuk mendekripsi kunci data terenkripsi sehingga mereka dapat digunakan untuk mengenkripsi data Anda. 

Anda dapat mencabut akses ke hibah, atau menghapus akses layanan ke kunci yang dikelola pelanggan kapan saja. Jika Anda melakukannya, OpenSearch Tanpa Server tidak akan dapat mengakses data apa pun yang dienkripsi oleh kunci yang dikelola pelanggan, yang memengaruhi semua operasi yang bergantung pada data tersebut, yang menyebabkan `AccessDeniedException` kesalahan dan kegagalan dalam alur kerja asinkron.

OpenSearch Tanpa server menghentikan hibah dalam alur kerja asinkron ketika kunci terkelola pelanggan tertentu tidak terkait dengan kebijakan atau koleksi keamanan apa pun.

### Membuat kebijakan enkripsi (konsol)
<a name="serverless-encryption-console"></a>

Dalam kebijakan enkripsi, Anda menentukan kunci KMS dan serangkaian pola pengumpulan yang akan diterapkan kebijakan tersebut. Setiap koleksi baru yang cocok dengan salah satu pola yang ditentukan dalam kebijakan akan diberikan kunci KMS terkait saat Anda membuat koleksi. Kami menyarankan Anda membuat kebijakan enkripsi *sebelum* Anda mulai membuat koleksi.

**Untuk membuat kebijakan OpenSearch enkripsi Tanpa Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Di panel navigasi kiri, perluas **Tanpa Server** dan pilih Kebijakan **enkripsi**.

1. Pilih **Buat kebijakan enkripsi**.

1. Berikan nama dan deskripsi untuk kebijakan tersebut.

1. Di bawah **Sumber Daya**, masukkan satu atau beberapa pola sumber daya untuk kebijakan enkripsi ini. Setiap koleksi yang baru dibuat di saat ini Akun AWS dan Wilayah yang cocok dengan salah satu pola secara otomatis ditetapkan ke kebijakan ini. Misalnya, jika Anda memasukkan `ApplicationLogs` (tanpa wildcard), dan kemudian membuat koleksi dengan nama itu, kebijakan dan kunci KMS terkait ditetapkan ke koleksi tersebut.

   Anda juga dapat memberikan awalan seperti`Logs*`, yang menetapkan kebijakan ke koleksi baru dengan nama yang diawali. `Logs` Dengan menggunakan wildcard, Anda dapat mengelola pengaturan enkripsi untuk beberapa koleksi dalam skala besar.

1. Di bawah **Enkripsi**, pilih kunci KMS untuk digunakan.

1. Pilih **Buat**.

#### Langkah selanjutnya: Buat koleksi
<a name="serverless-encryption-next"></a>

Setelah mengonfigurasi satu atau beberapa kebijakan enkripsi, Anda dapat mulai membuat koleksi yang sesuai dengan aturan yang ditentukan dalam kebijakan tersebut. Untuk petunjuk, lihat [Membuat koleksi](serverless-create.md).

Pada langkah **Enkripsi** pembuatan koleksi, OpenSearch Tanpa Server memberi tahu Anda bahwa nama yang Anda masukkan cocok dengan pola yang ditentukan dalam kebijakan enkripsi, dan secara otomatis menetapkan kunci KMS yang sesuai ke koleksi. Jika pola sumber daya berisi wildcard (\$1), Anda dapat memilih untuk mengganti kecocokan dan memilih kunci Anda sendiri.

### Membuat kebijakan enkripsi (AWS CLI)
<a name="serverless-encryption-cli"></a>

Untuk membuat kebijakan enkripsi menggunakan operasi API OpenSearch Tanpa Server, Anda menentukan pola sumber daya dan kunci enkripsi dalam format JSON. [CreateSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateSecurityPolicy.html)Permintaan menerima kebijakan sebaris dan file.json.

Kebijakan enkripsi mengambil format berikut. `my-policy.json`File sampel ini cocok dengan koleksi masa depan yang dinamai`autopartsinventory`, serta koleksi apa pun dengan nama yang dimulai dengan`sales`.

```
{
   "Rules":[
      {
         "ResourceType":"collection",
         "Resource":[
            "collection/autopartsinventory",
            "collection/sales*"
         ]
      }
   ],
   "AWSOwnedKey":false,
   "KmsARN":"arn:aws:kms:us-east-1:123456789012:key/93fd6da4-a317-4c17-bfe9-382b5d988b36"
}
```

Untuk menggunakan kunci milik layanan, setel `AWSOwnedKey` ke: `true`

```
{
   "Rules":[
      {
         "ResourceType":"collection",
         "Resource":[
            "collection/autopartsinventory",
            "collection/sales*"
         ]
      }
   ],
   "AWSOwnedKey":true
}
```

Permintaan berikut membuat kebijakan enkripsi:

```
aws opensearchserverless create-security-policy \
    --name sales-inventory \
    --type encryption \
    --policy file://my-policy.json
```

Kemudian, gunakan operasi [CreateCollection](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateCollection.html)API untuk membuat satu atau beberapa koleksi yang cocok dengan salah satu pola sumber daya.

### Melihat kebijakan enkripsi
<a name="serverless-encryption-list"></a>

Sebelum membuat koleksi, Anda mungkin ingin melihat pratinjau kebijakan enkripsi yang ada di akun Anda untuk melihat mana yang memiliki pola sumber daya yang cocok dengan nama koleksi Anda. [ListSecurityPolicies](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListSecurityPolicies.html)Permintaan berikut mencantumkan semua kebijakan enkripsi di akun Anda:

```
aws opensearchserverless list-security-policies --type encryption
```

Permintaan mengembalikan informasi tentang semua kebijakan enkripsi yang dikonfigurasi. Gunakan konten `policy` elemen untuk melihat aturan pola yang didefinisikan dalam kebijakan:

```
{
   "securityPolicyDetails": [ 
      { 
         "createdDate": 1663693217826,
         "description": "Sample encryption policy",
         "lastModifiedDate": 1663693217826,
         "name": "my-policy",
         "policy": "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection/autopartsinventory\",\"collection/sales*\"]}],\"AWSOwnedKey\":true}",
         "policyVersion": "MTY2MzY5MzIxNzgyNl8x",
         "type": "encryption"
      }
   ]
}
```

Untuk melihat informasi terperinci tentang kebijakan tertentu, termasuk kunci KMS, gunakan [GetSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetSecurityPolicy.html)perintah.

### Memperbarui kebijakan enkripsi
<a name="serverless-encryption-update"></a>

Jika Anda memperbarui kunci KMS dalam kebijakan enkripsi, perubahan hanya berlaku untuk koleksi yang baru dibuat yang cocok dengan nama atau pola yang dikonfigurasi. Itu tidak memengaruhi koleksi yang ada yang memiliki kunci KMS yang sudah ditetapkan. 

Hal yang sama berlaku untuk aturan pencocokan kebijakan. Jika Anda menambahkan, memodifikasi, atau menghapus aturan, perubahan hanya berlaku untuk koleksi yang baru dibuat. Koleksi yang ada tidak kehilangan kunci KMS yang ditetapkan jika Anda mengubah aturan kebijakan sehingga tidak lagi cocok dengan nama koleksi.

**Untuk memperbarui kebijakan enkripsi di konsol OpenSearch Tanpa Server, pilih Kebijakan **enkripsi, pilih kebijakan** yang akan diubah, dan pilih Edit.** Buat perubahan dan pilih **Simpan**.

Untuk memperbarui kebijakan enkripsi menggunakan API OpenSearch Tanpa Server, gunakan operasi. [UpdateSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateSecurityPolicy.html) Permintaan berikut memperbarui kebijakan enkripsi dengan dokumen JSON kebijakan baru:

```
aws opensearchserverless update-security-policy \
    --name sales-inventory \
    --type encryption \
    --policy-version 2 \
    --policy file://my-new-policy.json
```

### Menghapus kebijakan enkripsi
<a name="serverless-encryption-delete"></a>

Saat Anda menghapus kebijakan enkripsi, koleksi apa pun yang saat ini menggunakan kunci KMS yang ditentukan dalam kebijakan tidak akan terpengaruh. **Untuk menghapus kebijakan di konsol OpenSearch Tanpa Server, pilih kebijakan dan pilih Hapus.**

Anda juga dapat menggunakan [DeleteSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_DeleteSecurityPolicy.html)operasi:

```
aws opensearchserverless delete-security-policy --name my-policy --type encryption
```

## Enkripsi saat bergerak
<a name="serverless-encryption-in-transit"></a>

Dalam OpenSearch Serverless, semua jalur dalam koleksi dienkripsi dalam perjalanan menggunakan Transport Layer Security 1.2 (TLS) dengan cipher AES-256 standar industri. Akses ke semua APIs dan Dasbor untuk Opensearch juga melalui TLS 1.2. TLS adalah seperangkat protokol kriptografi standar industri yang digunakan untuk mengenkripsi informasi yang dipertukarkan melalui jaringan.

# Akses jaringan untuk Amazon Tanpa OpenSearch Server
<a name="serverless-network"></a>

Pengaturan jaringan untuk koleksi Amazon OpenSearch Tanpa Server menentukan apakah koleksi dapat diakses melalui internet dari jaringan publik, atau apakah harus diakses secara pribadi.

Akses pribadi dapat berlaku untuk salah satu atau kedua hal berikut:
+ OpenSearch Titik akhir VPC yang dikelola tanpa server
+ Didukung Layanan AWS seperti Amazon Bedrock

Anda dapat mengonfigurasi akses jaringan secara terpisah untuk *OpenSearch*titik akhir koleksi dan titik akhir *OpenSearch Dasbor* yang sesuai.

Akses jaringan adalah mekanisme isolasi untuk memungkinkan akses dari jaringan sumber yang berbeda. Misalnya, jika titik akhir OpenSearch Dasbor koleksi dapat diakses publik tetapi titik akhir OpenSearch API tidak, pengguna dapat mengakses data pengumpulan hanya melalui Dasbor saat menghubungkan dari jaringan publik. Jika mereka mencoba menelepon OpenSearch APIs langsung dari jaringan publik, mereka akan diblokir. Pengaturan jaringan dapat digunakan untuk permutasi sumber ke jenis sumber daya. Amazon OpenSearch Serverless mendukung keduanya IPv4 dan IPv6 konektivitas.

**Topics**
+ [Kebijakan jaringan](#serverless-network-policies)
+ [Pertimbangan-pertimbangan](#serverless-network-considerations)
+ [Izin diperlukan untuk mengonfigurasi kebijakan jaringan](#serverless-network-permissions)
+ [Prioritas kebijakan](#serverless-network-precedence)
+ [Membuat kebijakan jaringan (konsol)](#serverless-network-console)
+ [Membuat kebijakan jaringan (AWS CLI)](#serverless-network-cli)
+ [Melihat kebijakan jaringan](#serverless-network-list)
+ [Memperbarui kebijakan jaringan](#serverless-network-update)
+ [Menghapus kebijakan jaringan](#serverless-network-delete)

## Kebijakan jaringan
<a name="serverless-network-policies"></a>

Kebijakan jaringan memungkinkan Anda mengelola banyak koleksi dalam skala besar dengan secara otomatis menetapkan setelan akses jaringan ke koleksi yang cocok dengan aturan yang ditentukan dalam kebijakan.

Dalam kebijakan jaringan, Anda menentukan serangkaian *aturan*. Aturan ini menentukan izin akses ke titik akhir koleksi dan titik akhir OpenSearch Dasbor. Setiap aturan terdiri dari jenis akses (publik atau pribadi) dan jenis sumber daya (koleksi dan/atau titik akhir OpenSearch Dasbor). Untuk setiap jenis sumber daya (`collection`dan`dashboard`), Anda menentukan serangkaian aturan yang menentukan koleksi mana kebijakan akan diterapkan.

Dalam kebijakan contoh ini, aturan pertama menentukan akses titik akhir VPC ke titik akhir koleksi dan titik akhir Dasbor untuk semua koleksi yang dimulai dengan istilah. `marketing*` Ini juga menentukan akses Amazon Bedrock. 

**catatan**  
Akses pribadi ke Layanan AWS seperti Amazon Bedrock *hanya* berlaku untuk titik akhir koleksi, bukan ke OpenSearch titik akhir OpenSearch Dasbor. Bahkan jika `ResourceType` ada`dashboard`, Layanan AWS tidak dapat diberikan akses ke OpenSearch Dasbor.

Aturan kedua menentukan akses publik ke `finance` koleksi, tetapi hanya untuk titik akhir koleksi (tidak ada akses Dasbor).

```
[
   {
      "Description":"Marketing access",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/marketing*"
            ]
         },
         {
            "ResourceType":"dashboard",
            "Resource":[
               "collection/marketing*"
            ]
         }
      ],
      "AllowFromPublic":false,
      "SourceVPCEs":[
         "vpce-050f79086ee71ac05"
      ],
      "SourceServices":[
         "bedrock.amazonaws.com"
      ],
   },
   {
      "Description":"Sales access",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/finance"
            ]
         }
      ],
      "AllowFromPublic":true
   }
]
```

Kebijakan ini menyediakan akses publik hanya ke OpenSearch Dasbor untuk koleksi yang dimulai dengan “keuangan”. Setiap upaya untuk mengakses OpenSearch API secara langsung akan gagal.

```
[
  {
    "Description": "Dashboards access",
    "Rules": [
      {
        "ResourceType": "dashboard",
        "Resource": [
          "collection/finance*"
        ]
      }
    ],
    "AllowFromPublic": true
  }
]
```

Kebijakan jaringan dapat berlaku untuk koleksi yang ada serta koleksi masa depan. Misalnya, Anda dapat membuat koleksi dan kemudian membuat kebijakan jaringan dengan aturan yang cocok dengan nama koleksi. Anda tidak perlu membuat kebijakan jaringan sebelum membuat koleksi.

## Pertimbangan-pertimbangan
<a name="serverless-network-considerations"></a>

Pertimbangkan hal berikut saat Anda mengonfigurasi akses jaringan untuk koleksi Anda:
+ [Jika Anda berencana untuk mengonfigurasi akses titik akhir VPC untuk koleksi, Anda harus terlebih dahulu membuat setidaknya satu titik akhir VPC yang dikelola Tanpa ServerOpenSearch .](serverless-vpc.md)
+ Akses pribadi Layanan AWS hanya berlaku untuk OpenSearch titik akhir koleksi, bukan ke titik akhir OpenSearch Dasbor. Bahkan jika `ResourceType` ada`dashboard`, Layanan AWS tidak dapat diberikan akses ke OpenSearch Dasbor.
+ Jika koleksi dapat diakses dari jaringan publik, koleksi ini juga dapat diakses dari semua titik akhir VPC yang OpenSearch dikelola tanpa server dan semuanya. Layanan AWS
+ Beberapa kebijakan jaringan dapat berlaku untuk satu koleksi. Untuk informasi selengkapnya, lihat [Prioritas kebijakan](#serverless-network-precedence).

## Izin diperlukan untuk mengonfigurasi kebijakan jaringan
<a name="serverless-network-permissions"></a>

Akses jaringan untuk OpenSearch Tanpa Server menggunakan izin AWS Identity and Access Management (IAM) berikut. Anda dapat menentukan kondisi IAM untuk membatasi pengguna pada kebijakan jaringan yang terkait dengan koleksi tertentu.
+ `aoss:CreateSecurityPolicy`— Buat kebijakan akses jaringan.
+ `aoss:ListSecurityPolicies`— Buat daftar semua kebijakan jaringan di akun saat ini.
+ `aoss:GetSecurityPolicy`— Lihat spesifikasi kebijakan akses jaringan.
+ `aoss:UpdateSecurityPolicy`— Ubah kebijakan akses jaringan tertentu, dan ubah ID VPC atau penunjukan akses publik.
+ `aoss:DeleteSecurityPolicy`— Hapus kebijakan akses jaringan (setelah terlepas dari semua koleksi).

Kebijakan akses berbasis identitas berikut memungkinkan pengguna untuk melihat semua kebijakan jaringan, dan memperbarui kebijakan dengan pola sumber daya: `collection/application-logs`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "aoss:UpdateSecurityPolicy"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aoss:collection": "application-logs"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "aoss:ListSecurityPolicies",
                "aoss:GetSecurityPolicy"
            ],
            "Resource": "*"
        }
    ]
}
```

------

**catatan**  
Selain itu, OpenSearch Tanpa Server memerlukan `aoss:DashboardsAccessAll` izin `aoss:APIAccessAll` dan untuk sumber daya pengumpulan. Untuk informasi selengkapnya, lihat [Menggunakan operasi OpenSearch API](security-iam-serverless.md#security_iam_id-based-policy-examples-data-plane).

## Prioritas kebijakan
<a name="serverless-network-precedence"></a>

Mungkin ada situasi di mana aturan kebijakan jaringan tumpang tindih, di dalam atau di seluruh kebijakan. *Ketika ini terjadi, aturan yang menentukan akses publik mengesampingkan aturan yang menentukan akses pribadi untuk koleksi apa pun yang umum untuk kedua aturan tersebut.*

Misalnya, dalam kebijakan berikut, kedua aturan menetapkan akses jaringan ke `finance` koleksi, tetapi satu aturan menentukan akses VPC sementara yang lain menentukan akses publik. Dalam situasi ini, akses publik mengesampingkan akses VPC *hanya untuk pengumpulan keuangan* (karena ada di kedua aturan), sehingga pengumpulan keuangan akan dapat diakses dari jaringan publik. Koleksi penjualan akan memiliki akses VPC dari titik akhir yang ditentukan.

```
[
   {
      "Description":"Rule 1",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/sales",
               "collection/finance"
            ]
         }
      ],
      "AllowFromPublic":false,
      "SourceVPCEs":[
         "vpce-050f79086ee71ac05"
      ]
   },
   {
      "Description":"Rule 2",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/finance"
            ]
         }
      ],
      "AllowFromPublic":true
   }
]
```

Jika beberapa titik akhir VPC dari aturan yang berbeda berlaku untuk koleksi, aturan bersifat aditif dan koleksi akan dapat diakses dari semua titik akhir yang ditentukan. Jika Anda menyetel `AllowFromPublic` ke `true` tetapi juga menyediakan satu atau lebih `SourceVPCEs` atau`SourceServices`, OpenSearch Tanpa Server mengabaikan titik akhir VPC dan pengidentifikasi layanan, dan koleksi terkait akan memiliki akses publik.

## Membuat kebijakan jaringan (konsol)
<a name="serverless-network-console"></a>

Kebijakan jaringan dapat berlaku untuk koleksi yang ada serta koleksi masa depan. Kami menyarankan Anda membuat kebijakan jaringan sebelum mulai membuat koleksi.

**Untuk membuat kebijakan OpenSearch jaringan Tanpa Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. Di panel navigasi kiri, perluas **Tanpa Server** dan pilih Kebijakan **jaringan**.

1. Pilih **Buat kebijakan jaringan**.

1. Berikan nama dan deskripsi untuk kebijakan tersebut.

1. Berikan satu atau lebih *aturan*. Aturan ini menentukan izin akses untuk koleksi OpenSearch Tanpa Server dan titik akhir Dasbornya OpenSearch .

   Setiap aturan berisi elemen-elemen berikut:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-network.html)

   Untuk setiap jenis sumber daya yang Anda pilih, Anda dapat memilih koleksi yang ada untuk menerapkan setelan kebijakan, and/or membuat satu atau beberapa pola sumber daya. Pola sumber daya terdiri dari awalan dan wildcard (\$1), dan menentukan koleksi mana yang akan diterapkan setelan kebijakan. 

   Misalnya, jika Anda menyertakan pola yang disebut`Marketing*`, koleksi baru atau yang sudah ada yang namanya dimulai dengan “Pemasaran” akan memiliki pengaturan jaringan dalam kebijakan ini secara otomatis diterapkan padanya. Satu wildcard (`*`) menerapkan kebijakan untuk semua koleksi saat ini dan yang akan datang.

   Selain itu, Anda dapat menentukan nama koleksi *future* tanpa wildcard, seperti`Finance`. OpenSearch Tanpa server akan menerapkan pengaturan kebijakan ke koleksi yang baru dibuat dengan nama persis itu.

1. Jika Anda puas dengan konfigurasi kebijakan, pilih **Buat**.

## Membuat kebijakan jaringan (AWS CLI)
<a name="serverless-network-cli"></a>

Untuk membuat kebijakan jaringan menggunakan operasi API OpenSearch Tanpa Server, Anda menentukan aturan dalam format JSON. [CreateSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateSecurityPolicy.html)Permintaan menerima kebijakan sebaris dan file.json. Semua koleksi dan pola harus berbentuk`collection/<collection name|pattern>`.

**catatan**  
Jenis sumber daya `dashboards` hanya mengizinkan izin ke OpenSearch Dasbor, tetapi agar OpenSearch Dasbor berfungsi, Anda juga harus mengizinkan akses koleksi dari sumber yang sama. Lihat kebijakan kedua di bawah ini untuk contoh.

Untuk menentukan akses pribadi, sertakan salah satu atau kedua elemen berikut:
+ `SourceVPCEs`— Tentukan satu atau lebih titik akhir VPC yang OpenSearch dikelola tanpa server.
+ `SourceServices`— Tentukan pengenal satu atau lebih yang didukung Layanan AWS. Saat ini, pengidentifikasi layanan berikut didukung:
  + `bedrock.amazonaws.com`— Batuan Dasar Amazon

Contoh kebijakan jaringan berikut menyediakan akses pribadi, ke titik akhir VPC dan Amazon Bedrock, ke titik akhir pengumpulan hanya untuk koleksi yang dimulai dengan awalan. `log*` Pengguna yang diautentikasi tidak dapat masuk ke OpenSearch Dasbor; mereka hanya dapat mengakses titik akhir koleksi secara terprogram.

```
[
   {
      "Description":"Private access for log collections",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/log*"
            ]
         }
      ],
      "AllowFromPublic":false,
      "SourceVPCEs":[
         "vpce-050f79086ee71ac05"
      ],
      "SourceServices":[
         "bedrock.amazonaws.com"
      ],
   }
]
```

Kebijakan berikut menyediakan akses publik ke OpenSearch titik akhir *dan* OpenSearch Dasbor untuk satu koleksi bernama. `finance` Jika koleksi tidak ada, pengaturan jaringan akan diterapkan ke koleksi jika dan ketika itu dibuat.

```
[
   {
      "Description":"Public access for finance collection",
      "Rules":[
         {
            "ResourceType":"dashboard",
            "Resource":[
               "collection/finance"
            ]
         },
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/finance"
            ]
         }
      ],
      "AllowFromPublic":true
   }
]
```

Permintaan berikut membuat kebijakan jaringan di atas:

```
aws opensearchserverless create-security-policy \
    --name sales-inventory \
    --type network \
    --policy "[{\"Description\":\"Public access for finance collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/finance\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/finance\"]}],\"AllowFromPublic\":true}]"
```

Untuk menyediakan kebijakan dalam file JSON, gunakan format `--policy file://my-policy.json`

## Melihat kebijakan jaringan
<a name="serverless-network-list"></a>

Sebelum membuat koleksi, Anda mungkin ingin melihat pratinjau kebijakan jaringan yang ada di akun Anda untuk melihat mana yang memiliki pola sumber daya yang cocok dengan nama koleksi Anda. [ListSecurityPolicies](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListSecurityPolicies.html)Permintaan berikut mencantumkan semua kebijakan jaringan di akun Anda:

```
aws opensearchserverless list-security-policies --type network
```

Permintaan mengembalikan informasi tentang semua kebijakan jaringan yang dikonfigurasi. Untuk melihat aturan pola yang ditentukan dalam satu kebijakan tertentu, cari informasi kebijakan dalam konten `securityPolicySummaries` elemen dalam respons. Perhatikan `name` dan `type` kebijakan ini dan gunakan properti ini dalam [GetSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetSecurityPolicy.html)permintaan untuk menerima tanggapan dengan rincian kebijakan berikut: 

```
{
    "securityPolicyDetail": [
        {
            "type": "network",
            "name": "my-policy",
            "policyVersion": "MTY2MzY5MTY1MDA3Ml8x",
            "policy": "[{\"Description\":\"My network policy rule\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection/*\"]}],\"AllowFromPublic\":true}]",
            "createdDate": 1663691650072,
            "lastModifiedDate": 1663691650072
        }
    ]
}
```

Untuk melihat informasi terperinci tentang kebijakan tertentu, gunakan [GetSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetSecurityPolicy.html)perintah.

## Memperbarui kebijakan jaringan
<a name="serverless-network-update"></a>

Saat Anda memodifikasi titik akhir VPC atau penunjukan akses publik untuk jaringan, semua koleksi terkait akan terpengaruh. **Untuk memperbarui kebijakan jaringan di konsol OpenSearch Tanpa Server, perluas Kebijakan **jaringan, pilih kebijakan** yang akan diubah, dan pilih Edit.** Buat perubahan dan pilih **Simpan**.

Untuk memperbarui kebijakan jaringan menggunakan API OpenSearch Tanpa Server, gunakan perintah. [UpdateSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateSecurityPolicy.html) Anda harus menyertakan versi kebijakan dalam permintaan. Anda dapat mengambil versi kebijakan dengan menggunakan `GetSecurityPolicy` perintah `ListSecurityPolicies` atau. Menyertakan versi kebijakan terbaru memastikan bahwa Anda tidak secara tidak sengaja mengesampingkan perubahan yang dilakukan oleh orang lain. 

Permintaan berikut memperbarui kebijakan jaringan dengan dokumen JSON kebijakan baru:

```
aws opensearchserverless update-security-policy \
    --name sales-inventory \
    --type network \
    --policy-version MTY2MzY5MTY1MDA3Ml8x \
    --policy file://my-new-policy.json
```

## Menghapus kebijakan jaringan
<a name="serverless-network-delete"></a>

Sebelum Anda dapat menghapus kebijakan jaringan, Anda harus melepaskannya dari semua koleksi. **Untuk menghapus kebijakan di konsol OpenSearch Tanpa Server, pilih kebijakan dan pilih Hapus.**

Anda juga dapat menggunakan [DeleteSecurityPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_DeleteSecurityPolicy.html)perintah:

```
aws opensearchserverless delete-security-policy --name my-policy --type network
```

# Kepatuhan FIPS di Amazon Tanpa Server OpenSearch
<a name="fips-compliance-opensearch-serverless"></a>

Amazon OpenSearch Serverless mendukung Federal Information Processing Standards (FIPS) 140-2, yang merupakan standar pemerintah AS dan Kanada yang menetapkan persyaratan keamanan untuk modul kriptografi yang melindungi informasi sensitif. Saat Anda terhubung ke titik akhir berkemampuan FIPS dengan OpenSearch Tanpa Server, operasi kriptografi terjadi menggunakan pustaka kriptografi yang divalidasi FIPS.

OpenSearch Titik akhir FIPS tanpa server tersedia di Wilayah AWS tempat FIPS didukung. Endpoint ini menggunakan TLS 1.2 atau yang lebih baru dan algoritma kriptografi yang divalidasi FIPS untuk semua komunikasi. Untuk informasi selengkapnya, lihat [kepatuhan FIPS](https://docs.aws.amazon.com/verified-access/latest/ug/fips-compliance.html) di *Panduan Pengguna Akses AWS Terverifikasi*.

**Topics**
+ [Menggunakan titik akhir FIPS dengan Tanpa Server OpenSearch](#using-fips-endpoints-opensearch-serverless)
+ [Gunakan titik akhir FIPS dengan AWS SDKs](#using-fips-endpoints-aws-sdks)
+ [Konfigurasikan grup keamanan untuk titik akhir VPC](#configuring-security-groups-vpc-endpoints)
+ [Gunakan titik akhir VPC FIPS](#using-fips-vpc-endpoint)
+ [Verifikasi kepatuhan FIPS](#verifying-fips-compliance)
+ [Selesaikan masalah konektivitas titik akhir FIPS di zona yang dihosting pribadi](serverless-fips-endpoint-issues.md)

## Menggunakan titik akhir FIPS dengan Tanpa Server OpenSearch
<a name="using-fips-endpoints-opensearch-serverless"></a>

Di Wilayah AWS mana FIPS didukung, koleksi OpenSearch Tanpa Server dapat diakses melalui titik akhir standar dan yang sesuai dengan FIPS. Untuk informasi selengkapnya, lihat [kepatuhan FIPS](https://docs.aws.amazon.com/verified-access/latest/ug/fips-compliance.html) di *Panduan Pengguna Akses AWS Terverifikasi*.

Dalam contoh berikut, ganti *collection\$1id* dan *Wilayah AWS* dengan ID koleksi Anda dan nya Wilayah AWS.
+ **Titik akhir standar** —**https://*collection\$1id*.*Wilayah AWS*.aoss.amazonaws.com**.
+ Titik akhir yang **sesuai dengan FIPS —**. **https://*collection\$1id*.*Wilayah AWS*.aoss-fips.amazonaws.com**

Demikian pula, OpenSearch Dasbor dapat diakses melalui titik akhir standar dan yang sesuai dengan FIPS:
+ **Titik akhir Dasbor Standar** —. **https://*collection\$1id*.*Wilayah AWS*.aoss.amazonaws.com/\$1dashboards**
+ Titik akhir Dasbor yang **sesuai dengan FIPS —**. **https://*collection\$1id*.*Wilayah AWS*.aoss-fips.amazonaws.com/\$1dashboards**

**catatan**  
Di Wilayah yang mendukung FIPS, titik akhir standar dan yang sesuai dengan FIPS menyediakan kriptografi yang sesuai dengan FIPS. **Titik akhir khusus FIPS membantu Anda memenuhi persyaratan kepatuhan yang secara khusus mengamanatkan penggunaan titik akhir dengan FIPS dalam namanya.**

## Gunakan titik akhir FIPS dengan AWS SDKs
<a name="using-fips-endpoints-aws-sdks"></a>

Saat menggunakan AWS SDKs, Anda dapat menentukan titik akhir FIPS saat membuat klien. Dalam contoh berikut, ganti *collection\$1id* dan *Wilayah AWS* dengan ID koleksi Anda dan nya Wilayah AWS.

```
# Python SDK example
from opensearchpy import OpenSearch, RequestsHttpConnection, AWSV4SignerAuth
import boto3
host = '"https://collection_id.Wilayah AWS.aoss-fips.amazonaws.com"
region = 'us-west-2'
service = 'aoss'
credentials = boto3.Session().get_credentials()
auth = AWSV4SignerAuth(credentials, region, service)
client = OpenSearch(
    hosts = [{'host': host, 'port': 443}],
    http_auth = auth,
    use_ssl = True,
    verify_certs = True,
    connection_class = RequestsHttpConnection,
    pool_maxsize = 20
)
```

## Konfigurasikan grup keamanan untuk titik akhir VPC
<a name="configuring-security-groups-vpc-endpoints"></a>

Untuk memastikan komunikasi yang tepat dengan titik akhir Amazon VPC (VPC) yang sesuai dengan FIPS, buat atau modifikasi grup keamanan untuk mengizinkan lalu lintas HTTPS masuk (port TCP 443) dari sumber daya di VPC Anda yang perlu mengakses Tanpa Server. OpenSearch Kemudian kaitkan grup keamanan ini dengan titik akhir VPC Anda selama pembuatan atau dengan memodifikasi titik akhir setelah pembuatan. Untuk informasi selengkapnya, lihat [Membuat grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/creating-security-groups.html) di *Panduan Pengguna Amazon VPC*.

## Gunakan titik akhir VPC FIPS
<a name="using-fips-vpc-endpoint"></a>

Setelah membuat titik akhir VPC yang sesuai dengan FIPS, Anda dapat menggunakannya untuk mengakses Tanpa OpenSearch Server dari sumber daya dalam VPC Anda. Untuk menggunakan titik akhir untuk operasi API, konfigurasikan SDK Anda untuk menggunakan titik akhir FIPS Regional seperti yang dijelaskan di bagian ini. [Menggunakan titik akhir FIPS dengan Tanpa Server OpenSearch](#using-fips-endpoints-opensearch-serverless) Untuk akses OpenSearch Dasbor, gunakan URL Dasbor khusus koleksi, yang akan secara otomatis merutekan melalui titik akhir VPC yang sesuai dengan FIPS saat diakses dari dalam VPC Anda. Untuk informasi selengkapnya, lihat [Menggunakan OpenSearch Dasbor dengan Layanan Amazon OpenSearch](dashboards.md).

## Verifikasi kepatuhan FIPS
<a name="verifying-fips-compliance"></a>

Untuk memverifikasi bahwa koneksi Anda ke OpenSearch Tanpa Server menggunakan kriptografi yang sesuai dengan FIPS, gunakan AWS CloudTrail untuk memantau panggilan API yang dilakukan ke Tanpa Server. OpenSearch Periksa apakah `eventSource` bidang di CloudTrail log ditampilkan `aoss-fips.amazonaws.com` untuk panggilan API. 

Untuk akses OpenSearch Dasbor, Anda dapat menggunakan alat pengembang browser untuk memeriksa detail koneksi TLS dan memverifikasi bahwa rangkaian sandi yang sesuai dengan FIPS sedang digunakan. 

# Selesaikan masalah konektivitas titik akhir FIPS di zona yang dihosting pribadi
<a name="serverless-fips-endpoint-issues"></a>

Titik akhir FIPS berfungsi dengan koleksi Amazon OpenSearch Tanpa Server yang memiliki akses publik. Untuk koleksi VPC yang baru dibuat yang menggunakan titik akhir VPC yang baru dibuat, titik akhir FIPS berfungsi seperti yang diharapkan. Untuk koleksi VPC lainnya, Anda mungkin perlu melakukan penyiapan manual untuk memastikan titik akhir FIPS beroperasi dengan benar.

**Untuk mengonfigurasi zona host pribadi FIPS di Amazon Route 53**

1. Buka konsol Route 53 di [https://console.aws.amazon.com/route53/](https://console.aws.amazon.com/route53/).

1. Tinjau zona yang dihosting Anda:

   1. Temukan zona yang dihosting untuk koleksi Wilayah AWS Anda.

   1. Verifikasi pola penamaan zona yang dihosting:
      + Format non-FIPS:. `region.aoss.amazonaws.com`
      + Format FIPS:`region.aoss-fips.amazonaws.com`.

   1. Konfirmasikan **Jenis** untuk semua zona yang dihosting disetel ke **Zona host pribadi**.

1. Jika zona host pribadi FIPS tidak ada:

   1. Pilih zona host pribadi non-FIPS yang sesuai.

   1. Salin VPCs informasi **terkait**. Sebagai contoh: `vpc-1234567890abcdef0 | us-east-2`.

   1. Temukan catatan domain wildcard. Sebagai contoh: `*.us-east-2.aoss.amazonaws.com`.

   1. Salin **lalu lintas Nilai/Rute ke informasi**. Misalnya:`uoc1c1qsw7poexampleewjeno1pte3rw.3ym756xh7yj.aoss.searchservices.aws`.

1. Buat zona host pribadi FIPS:

   1. Buat zona host pribadi baru dengan format FIPS. Sebagai contoh: `us-east-2.aoss-fips.amazonaws.com`.

   1. Untuk **Associated VPCs**, masukkan informasi VPC yang Anda salin dari zona host pribadi non-FIPS.

1. Tambahkan catatan baru dengan pengaturan berikut:

   1. Nama rekam: \$1

   1. Jenis rekaman: CNAME

   1. Nilai: Masukkan **lalu lintas Nilai/Rute ke** informasi yang Anda salin sebelumnya.

## Masalah Umum
<a name="serverless-fips-endpoint-common-problems"></a>

Jika Anda mengalami masalah konektivitas dengan titik akhir VPC yang sesuai dengan FIPS, gunakan informasi berikut untuk membantu menyelesaikan masalah.
+ Kegagalan resolusi DNS - Anda tidak dapat menyelesaikan nama domain titik akhir FIPS dalam VPC Anda
+ Batas waktu koneksi - Permintaan Anda ke waktu akhir titik akhir FIPS
+ Kesalahan akses ditolak - Otentikasi atau otorisasi gagal saat menggunakan titik akhir FIPS
+ Catatan zona yang dihosting pribadi tidak ada untuk koleksi khusus VPC

**Untuk memecahkan masalah konektivitas titik akhir FIPS**

1. Verifikasi konfigurasi Zona Dihosting Pribadi Anda:

   1. Konfirmasikan bahwa Zona Dihosting Pribadi ada untuk domain titik akhir FIPS (. `*.region.aoss-fips.amazonaws.com`

   1. Verifikasi bahwa zona yang dihosting pribadi dikaitkan dengan VPC yang benar.

      Untuk informasi selengkapnya, lihat [Zona yang dihosting pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted- zones-private.html) di *Panduan Pengembang Amazon Route 53*, dan [Mengelola nama DNS](https://docs.aws.amazon.com/vpc/latest/privatelink/manage-dns-names.html) di *AWS PrivateLink Panduan*.

1. Uji resolusi DNS:

   1. Connect ke instans EC2 di VPC Anda.

   1. Jalankan perintah berikut:

      ```
      nslookup collection-id.region.aoss-fips.amazonaws.com
      ```

   1. Konfirmasikan bahwa respons tersebut menyertakan alamat IP pribadi titik akhir VPC Anda.

      Untuk informasi selengkapnya, lihat [Kebijakan titik akhir](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints- access.html#endpoint-dns-verification), dan [atribut DNS](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc- dns-troubleshooting) di Panduan Pengguna Amazon *VPC*.

1. Periksa pengaturan grup keamanan Anda:

   1. Verifikasi bahwa grup keamanan yang dilampirkan ke titik akhir VPC mengizinkan lalu lintas HTTPS (port 443) dari sumber daya Anda.

   1. Konfirmasikan bahwa grup keamanan untuk sumber daya Anda mengizinkan lalu lintas keluar ke titik akhir VPC.

   Untuk informasi selengkapnya, lihat [Kebijakan titik akhir](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html#vpc-endpoint-security-groups) di *AWS PrivateLink Panduan*, dan [Grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html#SecurityGroupRules) di Panduan Pengguna *Amazon VPC*.

1. Tinjau konfigurasi ACL jaringan Anda:

   1. Verifikasi bahwa jaringan ACLs mengizinkan lalu lintas antara sumber daya Anda dan titik akhir VPC.

     Untuk informasi selengkapnya, lihat [ ACLs Jaringan](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network- acls.html#nacl-troubleshooting) dalam *Panduan Pengguna Amazon VPC*.

1. Tinjau kebijakan titik akhir Anda:

   1. Periksa apakah kebijakan titik akhir VPC mengizinkan tindakan yang diperlukan pada sumber daya Tanpa Server Anda. OpenSearch 

     *Untuk informasi selengkapnya, lihat [izin titik akhir VPC yang diperlukan](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-vpc.html#serverless-vpc-permissions), dan kebijakan [Titik Akhir](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints- access.html#vpc-endpoint-policies) di Panduan.AWS PrivateLink *

**Tip**  
Jika Anda menggunakan resolver DNS kustom di VPC Anda, konfigurasikan untuk meneruskan permintaan domain ke server. `*.amazonaws.com` AWS 

# Kontrol akses data untuk Amazon Tanpa OpenSearch Server
<a name="serverless-data-access"></a>

Dengan kontrol akses data di Amazon OpenSearch Tanpa Server, Anda dapat mengizinkan pengguna mengakses koleksi dan indeks, terlepas dari mekanisme akses atau sumber jaringannya. Anda dapat memberikan akses ke peran IAM dan identitas [SALL](serverless-saml.md).

Anda mengelola izin akses melalui *kebijakan akses data*, yang berlaku untuk koleksi dan sumber daya indeks. Kebijakan akses data membantu Anda mengelola koleksi dalam skala besar dengan secara otomatis menetapkan izin akses ke koleksi dan indeks yang cocok dengan pola tertentu. Beberapa kebijakan akses data dapat diterapkan ke satu sumber daya. Perhatikan bahwa Anda harus memiliki kebijakan akses data untuk koleksi Anda untuk mengakses URL OpenSearch Dasbor Anda.

**Topics**
+ [Kebijakan akses data versus kebijakan IAM](#serverless-data-access-vs-iam)
+ [Izin IAM diperlukan untuk mengonfigurasi kebijakan akses data](#serverless-data-access-permissions)
+ [Sintaksis kebijakan](#serverless-data-access-syntax)
+ [Izin kebijakan yang didukung](#serverless-data-supported-permissions)
+ [Contoh kumpulan data di Dasbor OpenSearch](#serverless-data-sample-index)
+ [Membuat kebijakan akses data (konsol)](#serverless-data-access-console)
+ [Membuat kebijakan akses data (AWS CLI)](#serverless-data-access-cli)
+ [Melihat kebijakan akses data](#serverless-data-access-list)
+ [Memperbarui kebijakan akses data](#serverless-data-access-update)
+ [Menghapus kebijakan akses data](#serverless-data-access-delete)
+ [Akses data lintas akun](#serverless-data-access-cross)

## Kebijakan akses data versus kebijakan IAM
<a name="serverless-data-access-vs-iam"></a>

Kebijakan akses data secara logis terpisah dari kebijakan AWS Identity and Access Management (IAM). Izin IAM mengontrol akses ke [operasi API tanpa server](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/Welcome.html), seperti dan. `CreateCollection` `ListAccessPolicies` Kebijakan akses data mengontrol akses ke [OpenSearch operasi](#serverless-data-supported-permissions) yang didukung OpenSearch Tanpa Server, seperti `PUT <index>` atau. `GET _cat/indices`

Izin IAM yang mengontrol akses ke operasi API kebijakan akses data, seperti `aoss:CreateAccessPolicy` dan `aoss:GetAccessPolicy` (dijelaskan di bagian berikutnya), tidak memengaruhi izin yang ditentukan dalam kebijakan akses data.

Misalnya, kebijakan IAM menyangkal pengguna membuat kebijakan akses data untuk`collection-a`, tetapi memungkinkan mereka membuat kebijakan akses data untuk semua koleksi ()`*`:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "aoss:CreateAccessPolicy"
            ],
            "Resource": "*",
            "Condition": {
                "StringLike": {
                    "aoss:collection": "collection-a"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "aoss:CreateAccessPolicy"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Jika pengguna membuat kebijakan akses data yang mengizinkan izin tertentu untuk *semua* koleksi (`collection/*`atau`index/*/*`) kebijakan tersebut akan berlaku untuk semua koleksi, termasuk koleksi A.

**penting**  
Pemberian izin dalam kebijakan akses data tidak cukup untuk mengakses data dalam koleksi Tanpa OpenSearch Server Anda. Prinsipal terkait *juga* harus diberikan akses ke izin `aoss:APIAccessAll` IAM dan. `aoss:DashboardsAccessAll` Kedua izin memberikan akses penuh ke sumber daya koleksi, sementara izin Dasbor juga menyediakan akses ke OpenSearch Dasbor. Jika prinsipal tidak memiliki kedua izin IAM ini, mereka akan menerima 403 kesalahan saat mencoba mengirim permintaan ke koleksi. Untuk informasi selengkapnya, lihat [Menggunakan operasi OpenSearch API](security-iam-serverless.md#security_iam_id-based-policy-examples-data-plane).

## Izin IAM diperlukan untuk mengonfigurasi kebijakan akses data
<a name="serverless-data-access-permissions"></a>

Kontrol akses data untuk OpenSearch Tanpa Server menggunakan izin IAM berikut. Anda dapat menentukan kondisi IAM untuk membatasi pengguna ke nama kebijakan akses tertentu.
+ `aoss:CreateAccessPolicy`— Buat kebijakan akses.
+ `aoss:ListAccessPolicies`— Daftar semua kebijakan akses.
+ `aoss:GetAccessPolicy`— Lihat detail tentang kebijakan akses tertentu.
+ `aoss:UpdateAccessPolicy`— Memodifikasi kebijakan akses.
+ `aoss:DeleteAccessPolicy`— Hapus kebijakan akses.

Kebijakan akses berbasis identitas berikut memungkinkan pengguna untuk melihat semua kebijakan akses, dan memperbarui kebijakan yang berisi pola sumber daya. `collection/logs`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "aoss:ListAccessPolicies",
                "aoss:GetAccessPolicy"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "aoss:UpdateAccessPolicy"
            ],
            "Effect": "Allow",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aoss:collection": [
                        "logs"
                    ]
                }
            }
        }
    ]
}
```

------

**catatan**  
Selain itu, OpenSearch Tanpa Server memerlukan `aoss:DashboardsAccessAll` izin `aoss:APIAccessAll` dan untuk sumber daya pengumpulan. Untuk informasi selengkapnya, lihat [Menggunakan operasi OpenSearch API](security-iam-serverless.md#security_iam_id-based-policy-examples-data-plane).

## Sintaksis kebijakan
<a name="serverless-data-access-syntax"></a>

Kebijakan akses data mencakup seperangkat aturan, masing-masing dengan elemen berikut:


| Elemen | Deskripsi | 
| --- | --- | 
| ResourceType | Jenis sumber daya (koleksi atau indeks) yang diterapkan izin. Izin alias dan template berada di tingkat pengumpulan, sementara izin untuk membuat, memodifikasi, dan mencari data berada pada tingkat indeks. Untuk informasi selengkapnya, lihat [Izin kebijakan yang didukung](#serverless-data-supported-permissions). | 
| Resource | Daftar and/or pola nama sumber daya. Pola adalah awalan yang diikuti oleh wildcard (\$1), yang memungkinkan izin terkait diterapkan ke beberapa sumber daya.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-data-access.html) | 
| Permission | Daftar izin untuk diberikan untuk sumber daya yang ditentukan. Untuk daftar lengkap izin dan operasi API yang diizinkan, lihat[Operasi dan izin OpenSearch API yang didukung](serverless-genref.md#serverless-operations). | 
| Principal | Daftar satu atau lebih kepala sekolah untuk memberikan akses ke. Kepala sekolah dapat berupa peran ARNs IAM atau identitas SALL. Prinsipal ini harus berada dalam arus. Akun AWS Kebijakan akses data tidak secara langsung mendukung akses lintas akun, tetapi Anda dapat menyertakan peran dalam kebijakan yang Akun AWS dapat diasumsikan oleh pengguna dari akun pemilik koleksi. Untuk informasi selengkapnya, lihat [Akses data lintas akun](#serverless-data-access-cross). | 

Kebijakan contoh berikut memberikan izin alias dan templat ke koleksi yang dipanggil`autopartsinventory`, serta koleksi apa pun yang dimulai dengan awalan. `sales*` Ini juga memberikan izin baca dan tulis ke semua indeks dalam `autopartsinventory` koleksi, dan indeks apa pun dalam `salesorders` koleksi yang dimulai dengan awalan. `orders*`

```
[
   {
      "Description": "Rule 1",
      "Rules":[
         {
            "ResourceType":"collection",
            "Resource":[
               "collection/autopartsinventory",
               "collection/sales*"
            ],
            "Permission":[
               "aoss:CreateCollectionItems",
               "aoss:UpdateCollectionItems",
               "aoss:DescribeCollectionItems"
            ]
         },
         {
            "ResourceType":"index",
            "Resource":[
               "index/autopartsinventory/*",
               "index/salesorders/orders*"
            ],
            "Permission":[
               "aoss:*"
            ]
         }
      ],
      "Principal":[
         "arn:aws:iam::123456789012:user/Dale",
         "arn:aws:iam::123456789012:role/RegulatoryCompliance",
         "saml/123456789012/myprovider/user/Annie",
         "saml/123456789012/anotherprovider/group/Accounting"
      ]
   }
]
```

Anda tidak dapat secara eksplisit menolak akses dalam kebijakan. Oleh karena itu, semua izin kebijakan bersifat aditif. Misalnya, jika satu kebijakan memberikan pengguna`aoss:ReadDocument`, dan kebijakan lain memberikan`aoss:WriteDocument`, pengguna akan memiliki *kedua* izin tersebut. Jika kebijakan ketiga memberikan pengguna yang sama`aoss:*`, maka pengguna dapat melakukan *semua* tindakan pada indeks terkait; izin yang lebih ketat tidak akan mengesampingkan yang kurang membatasi.

## Izin kebijakan yang didukung
<a name="serverless-data-supported-permissions"></a>

Izin berikut didukung dalam kebijakan akses data. Untuk operasi OpenSearch API yang diizinkan oleh setiap izin, lihat[Operasi dan izin OpenSearch API yang didukung](serverless-genref.md#serverless-operations).

**Izin koleksi**
+ `aoss:CreateCollectionItems`
+ `aoss:DeleteCollectionItems`
+ `aoss:UpdateCollectionItems`
+ `aoss:DescribeCollectionItems`
+ `aoss:*`

**Izin indeks**
+ `aoss:ReadDocument`
+ `aoss:WriteDocument`
+ `aoss:CreateIndex`
+ `aoss:DeleteIndex`
+ `aoss:UpdateIndex`
+ `aoss:DescribeIndex`
+ `aoss:*`

## Contoh kumpulan data di Dasbor OpenSearch
<a name="serverless-data-sample-index"></a>

OpenSearch Dasbor menyediakan [contoh kumpulan data](https://opensearch.org/docs/latest/dashboards/quickstart-dashboards/#adding-sample-data) yang dilengkapi dengan visualisasi, dasbor, dan alat lain untuk membantu Anda menjelajahi Dasbor sebelum menambahkan data Anda sendiri. Untuk membuat indeks dari data sampel ini, Anda memerlukan kebijakan akses data yang menyediakan izin ke kumpulan data yang ingin Anda gunakan. Kebijakan berikut menggunakan wildcard (`*`) untuk memberikan izin ke ketiga kumpulan data sampel.

```
[
  {
    "Rules": [
      {
        "Resource": [
          "index/<collection-name>/opensearch_dashboards_sample_data_*"
        ],
        "Permission": [
          "aoss:CreateIndex",
          "aoss:DescribeIndex",
          "aoss:ReadDocument"
        ],
        "ResourceType": "index"
      }
    ],
    "Principal": [
      "arn:aws:iam::<account-id>:user/<user>"
    ]
  }
]
```

## Membuat kebijakan akses data (konsol)
<a name="serverless-data-access-console"></a>

Anda dapat membuat kebijakan akses data menggunakan editor visual, atau dalam format JSON. Setiap koleksi baru yang cocok dengan salah satu pola yang ditentukan dalam kebijakan akan diberikan izin terkait saat Anda membuat koleksi.

**Untuk membuat kebijakan OpenSearch akses data Tanpa Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. Di panel navigasi kiri, perluas **Tanpa Server** dan di bawah **Keamanan**, pilih Kebijakan akses **data**.

1. Pilih **Buat kebijakan akses**.

1. Berikan nama dan deskripsi untuk kebijakan tersebut.

1. Berikan nama untuk aturan pertama dalam kebijakan Anda. Misalnya, “Akses koleksi log”.

1. Pilih **Tambahkan prinsipal** dan pilih satu atau beberapa peran IAM atau [pengguna dan grup SAFL](serverless-saml.md) untuk menyediakan akses data.
**catatan**  
Untuk memilih prinsipal dari menu tarik-turun, Anda harus memiliki dan izin (untuk kepala sekolah IAM) `iam:ListUsers` dan `iam:ListRoles` izin (untuk identitas SAFL). `aoss:ListSecurityConfigs` 

1. Pilih **Grant** dan pilih alias, template, dan izin indeks untuk memberikan prinsipal terkait. Untuk daftar lengkap izin dan akses yang mereka izinkan, lihat[Operasi dan izin OpenSearch API yang didukung](serverless-genref.md#serverless-operations).

1. (Opsional) Konfigurasikan aturan tambahan untuk kebijakan tersebut.

1. Pilih **Buat**. Mungkin ada sekitar satu menit jeda waktu antara saat Anda membuat kebijakan dan saat izin diberlakukan. Jika dibutuhkan lebih dari 5 menit, hubungi [Dukungan](https://console.aws.amazon.com/support/home).

**penting**  
Jika kebijakan Anda hanya menyertakan izin indeks (dan tidak ada izin pengumpulan), Anda mungkin masih melihat pesan untuk pencocokan koleksi yang menyatakan. `Collection cannot be accessed yet. Configure data access policies so that users can access the data within this collection` Anda dapat mengabaikan peringatan ini. Prinsipal yang diizinkan masih dapat melakukan operasi terkait indeks yang ditetapkan pada koleksi.

## Membuat kebijakan akses data (AWS CLI)
<a name="serverless-data-access-cli"></a>

Untuk membuat kebijakan akses data menggunakan API OpenSearch Tanpa Server, gunakan perintah. `CreateAccessPolicy` Perintah menerima kebijakan inline dan file.json. Kebijakan sebaris harus dikodekan sebagai string lolos [JSON](https://www.freeformatter.com/json-escape.html).

Permintaan berikut membuat kebijakan akses data:

```
aws opensearchserverless create-access-policy \
    --name marketing \
    --type data \
    --policy "[{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection/autopartsinventory\",\"collection/sales*\"],\"Permission\":[\"aoss:UpdateCollectionItems\"]},{\"ResourceType\":\"index\",\"Resource\":[\"index/autopartsinventory/*\",\"index/salesorders/orders*\"],\"Permission\":[\"aoss:ReadDocument\",\"aoss:DescribeIndex\"]}],\"Principal\":[\"arn:aws:iam::123456789012:user/Shaheen\"]}]"
```

Untuk menyediakan kebijakan dalam file.json, gunakan formatnya. `--policy file://my-policy.json`

Prinsipal yang termasuk dalam kebijakan sekarang dapat menggunakan [OpenSearch operasi](#serverless-data-supported-permissions) yang diberikan akses kepada mereka.

## Melihat kebijakan akses data
<a name="serverless-data-access-list"></a>

Sebelum membuat koleksi, Anda mungkin ingin melihat pratinjau kebijakan akses data yang ada di akun Anda untuk melihat mana yang memiliki pola sumber daya yang cocok dengan nama koleksi Anda. [ListAccessPolicies](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListAccessPolicies.html)Permintaan berikut mencantumkan semua kebijakan akses data di akun Anda:

```
aws opensearchserverless list-access-policies --type data
```

Permintaan mengembalikan informasi tentang semua kebijakan akses data yang dikonfigurasi. Untuk melihat aturan pola yang ditentukan dalam satu kebijakan tertentu, cari informasi kebijakan dalam konten `accessPolicySummaries` elemen dalam respons. Perhatikan `name` dan `type` kebijakan ini dan gunakan properti ini dalam [GetAccessPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetAccessPolicy.html)permintaan untuk menerima tanggapan dengan rincian kebijakan berikut: 

```
{
    "accessPolicyDetails": [
        {
            "type": "data",
            "name": "my-policy",
            "policyVersion": "MTY2NDA1NDE4MDg1OF8x",
            "description": "My policy",
            "policy": "[{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection/autopartsinventory\",\"collection/sales*\"],\"Permission\":[\"aoss:UpdateCollectionItems\"]},{\"ResourceType\":\"index\",\"Resource\":[\"index/autopartsinventory/*\",\"index/salesorders/orders*\"],\"Permission\":[\"aoss:ReadDocument\",\"aoss:DescribeIndex\"]}],\"Principal\":[\"arn:aws:iam::123456789012:user/Shaheen\"]}]",
            "createdDate": 1664054180858,
            "lastModifiedDate": 1664054180858
        }
    ]
}
```

Anda dapat menyertakan filter sumber daya untuk membatasi hasil pada kebijakan yang berisi koleksi atau indeks tertentu:

```
aws opensearchserverless list-access-policies --type data --resource "index/autopartsinventory/*"
```

Untuk melihat detail tentang kebijakan tertentu, gunakan [GetAccessPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_GetAccessPolicy.html)perintah.

## Memperbarui kebijakan akses data
<a name="serverless-data-access-update"></a>

Saat Anda memperbarui kebijakan akses data, semua koleksi terkait akan terpengaruh. **Untuk memperbarui kebijakan akses data di konsol OpenSearch Tanpa Server, pilih **Kontrol akses data**, pilih kebijakan yang akan diubah, dan pilih Edit.** Buat perubahan dan pilih **Simpan**.

Untuk memperbarui kebijakan akses data menggunakan API OpenSearch Tanpa Server, kirim permintaan. `UpdateAccessPolicy` Anda harus menyertakan versi kebijakan, yang dapat Anda ambil menggunakan `GetAccessPolicy` perintah `ListAccessPolicies` atau. Menyertakan versi kebijakan terbaru memastikan bahwa Anda tidak secara tidak sengaja mengesampingkan perubahan yang dilakukan oleh orang lain.

[UpdateAccessPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateAccessPolicy.html)Permintaan berikut memperbarui kebijakan akses data dengan dokumen JSON kebijakan baru:

```
aws opensearchserverless update-access-policy \
    --name sales-inventory \
    --type data \
    --policy-version MTY2NDA1NDE4MDg1OF8x \
    --policy file://my-new-policy.json
```

Mungkin ada jeda waktu beberapa menit antara saat Anda memperbarui kebijakan dan saat izin baru diberlakukan.

## Menghapus kebijakan akses data
<a name="serverless-data-access-delete"></a>

Saat Anda menghapus kebijakan akses data, semua koleksi terkait kehilangan akses yang ditentukan dalam kebijakan. Pastikan bahwa pengguna IAM dan SALL Anda memiliki akses yang sesuai ke koleksi sebelum Anda menghapus kebijakan. **Untuk menghapus kebijakan di konsol OpenSearch Tanpa Server, pilih kebijakan dan pilih Hapus.**

Anda juga dapat menggunakan [DeleteAccessPolicy](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_DeleteAccessPolicy.html)perintah:

```
aws opensearchserverless delete-access-policy --name my-policy --type data
```

## Akses data lintas akun
<a name="serverless-data-access-cross"></a>

Meskipun Anda tidak dapat membuat kebijakan akses data dengan identitas lintas akun atau koleksi lintas akun, Anda masih dapat mengatur akses lintas akun dengan opsi asumsikan peran. Misalnya, jika `account-a` memiliki koleksi yang `account-b` memerlukan akses ke, pengguna dari `account-b` dapat mengambil peran dalam`account-a`. Peran harus memiliki izin IAM `aoss:APIAccessAll` dan`aoss:DashboardsAccessAll`, dan disertakan dalam kebijakan akses data pada. `account-a`

# Akses pesawat data melalui AWS PrivateLink
<a name="serverless-vpc"></a>

Amazon OpenSearch Serverless mendukung dua jenis AWS PrivateLink koneksi untuk bidang kontrol dan operasi pesawat data. Operasi bidang kontrol meliputi pembuatan dan penghapusan koleksi dan pengelolaan kebijakan akses. Operasi bidang data adalah untuk pengindeksan dan kueri data dalam koleksi. Halaman ini mencakup titik akhir VPC bidang data. Untuk informasi tentang AWS PrivateLink titik akhir bidang kontrol, lihat[Kontrol akses pesawat melalui AWS PrivateLink](serverless-vpc-cp.md).

Anda dapat menggunakan AWS PrivateLink untuk membuat koneksi pribadi antara VPC Anda dan Amazon OpenSearch Tanpa Server. Anda dapat mengakses OpenSearch Tanpa Server seolah-olah berada di VPC Anda, tanpa menggunakan gateway internet, perangkat NAT, koneksi VPN, atau koneksi. Direct Connect Instans di VPC Anda tidak memerlukan alamat IP publik untuk OpenSearch mengakses Tanpa Server. Untuk informasi selengkapnya tentang akses jaringan VPC, lihat [Pola konektivitas jaringan untuk Amazon OpenSearch Tanpa Server](https://aws.amazon.com/blogs/big-data/network-connectivity-patterns-for-amazon-opensearch-serverless/).

Anda membuat koneksi pribadi ini dengan membuat *titik akhir antarmuka*, yang didukung oleh AWS PrivateLink. Kami membuat antarmuka jaringan endpoint di setiap subnet yang Anda tentukan untuk titik akhir antarmuka. Ini adalah antarmuka jaringan yang dikelola pemohon yang berfungsi sebagai titik masuk untuk lalu lintas yang ditujukan untuk Tanpa Server. OpenSearch 

Untuk informasi selengkapnya, lihat [Mengakses Layanan AWS melalui AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-access-aws-services.html) di *Panduan AWS PrivateLink *.

**Topics**
+ [Resolusi DNS dari titik akhir koleksi](#vpc-endpoint-dnc)
+ [VPCs dan kebijakan akses jaringan](#vpc-endpoint-network)
+ [VPCs dan kebijakan endpoint](#vpc-endpoint-policy)
+ [Pertimbangan-pertimbangan](#vpc-endpoint-considerations)
+ [Izin diperlukan](#serverless-vpc-permissions)
+ [Buat titik akhir antarmuka untuk Tanpa Server OpenSearch](#serverless-vpc-create)
+ [Penyiapan VPC bersama untuk Amazon Tanpa Server OpenSearch](#shared-vpc-setup)

## Resolusi DNS dari titik akhir koleksi
<a name="vpc-endpoint-dnc"></a>

Saat Anda membuat titik akhir VPC bidang data melalui konsol OpenSearch Tanpa Server, layanan akan membuat [zona host Amazon Route 53 pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-private.html) baru dan menempelkannya ke VPC. Zona host pribadi ini terdiri dari catatan untuk menyelesaikan catatan DNS wildcard untuk koleksi OpenSearch Tanpa Server (`*.us-east-1.aoss.amazonaws.com`) ke alamat antarmuka yang digunakan untuk titik akhir. Anda hanya memerlukan satu titik akhir OpenSearch VPC Tanpa Server di VPC untuk mengakses setiap dan semua koleksi dan Dasbor di masing-masing. Wilayah AWS Setiap VPC dengan titik akhir untuk OpenSearch Tanpa Server memiliki zona host pribadinya sendiri yang terpasang.

Endpoint antarmuka OpenSearch Tanpa Server juga membuat catatan DNS wildcard Route 53 publik untuk semua koleksi di Wilayah. Nama DNS diselesaikan ke alamat IP publik Tanpa OpenSearch Server. Klien VPCs yang tidak memiliki titik akhir OpenSearch VPC Tanpa Server atau klien di jaringan publik dapat menggunakan resolver Route 53 publik dan mengakses koleksi dan Dasbor dengan alamat IP tersebut. Jenis alamat IP (IPv4, IPv6, atau Dualstack) dari titik akhir VPC ditentukan berdasarkan subnet yang disediakan saat Anda [membuat](#serverless-vpc-create) titik akhir antarmuka untuk Tanpa Server. OpenSearch 

**catatan**  
OpenSearch Tanpa server membuat zona host pribadi Amazon Route 53 tambahan ``<region>.opensearch.amazonaws.com` (`) untuk OpenSearch resolusi domain Layanan. Anda dapat memperbarui titik akhir IPv4 VPC yang ada ke Dualstack dengan menggunakan perintah di file. [update-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/opensearchserverless/update-vpc-endpoint.html) AWS CLI

Alamat penyelesai DNS untuk VPC tertentu adalah alamat IP kedua dari VPC CIDR. Setiap klien di VPC perlu menggunakan resolver itu untuk mendapatkan alamat titik akhir VPC untuk koleksi apa pun. Penyelesai menggunakan zona host pribadi yang dibuat oleh OpenSearch Tanpa Server. Cukup menggunakan resolver itu untuk semua koleksi di akun apa pun. Dimungkinkan juga untuk menggunakan resolver VPC untuk beberapa titik akhir koleksi dan resolver publik untuk yang lain, meskipun biasanya tidak diperlukan.

## VPCs dan kebijakan akses jaringan
<a name="vpc-endpoint-network"></a>

Untuk memberikan izin jaringan OpenSearch APIs dan Dasbor untuk koleksi Anda, Anda dapat menggunakan kebijakan akses [jaringan OpenSearch ](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-network.html) Tanpa Server. Anda dapat mengontrol akses jaringan ini baik dari titik akhir VPC Anda atau internet publik. Karena kebijakan jaringan Anda hanya mengontrol izin lalu lintas, Anda juga harus menyiapkan [kebijakan akses data](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html) yang menentukan izin untuk beroperasi pada data dalam koleksi dan indeksnya. Pikirkan titik akhir OpenSearch VPC Tanpa Server sebagai titik akses ke layanan, kebijakan akses jaringan sebagai titik akses tingkat jaringan ke koleksi dan Dasbor, dan kebijakan akses data sebagai titik akses untuk kontrol akses berbutir halus untuk operasi apa pun pada data dalam pengumpulan. 

Karena Anda dapat menentukan beberapa titik akhir VPC IDs dalam kebijakan jaringan, sebaiknya Anda membuat titik akhir VPC untuk setiap VPC yang perlu mengakses koleksi. Ini VPCs dapat dimiliki oleh AWS akun yang berbeda dari akun yang memiliki koleksi OpenSearch Tanpa Server dan kebijakan jaringan. Kami tidak menyarankan Anda membuat VPC-to-VPC peering atau solusi proksi lainnya antara dua akun sehingga VPC satu akun dapat menggunakan titik akhir VPC akun lain. Ini kurang aman dan hemat biaya dibandingkan setiap VPC yang memiliki endpoint sendiri. VPC pertama tidak akan mudah terlihat oleh admin VPC lain, yang telah mengatur akses ke titik akhir VPC itu dalam kebijakan jaringan. 

## VPCs dan kebijakan endpoint
<a name="vpc-endpoint-policy"></a>

 Amazon OpenSearch Serverless mendukung kebijakan titik akhir untuk. VPCs Kebijakan endpoint adalah kebijakan berbasis sumber daya IAM yang Anda lampirkan ke titik akhir VPC untuk mengontrol AWS prinsipal mana yang dapat menggunakan titik akhir untuk mengakses layanan Anda. AWS Untuk informasi selengkapnya, lihat [Mengontrol akses ke titik akhir VPC menggunakan kebijakan titik akhir](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html). 

Untuk menggunakan kebijakan endpoint, Anda harus terlebih dahulu membuat endpoint antarmuka. Anda dapat membuat titik akhir antarmuka menggunakan konsol OpenSearch Tanpa Server atau API Tanpa Server. OpenSearch Setelah membuat titik akhir antarmuka, Anda perlu menambahkan kebijakan titik akhir ke titik akhir. Untuk informasi selengkapnya, lihat [Buat titik akhir antarmuka untuk Tanpa Server OpenSearch](#serverless-vpc-create).

**catatan**  
Anda tidak dapat menentukan kebijakan titik akhir secara langsung di konsol OpenSearch Layanan. 

Kebijakan endpoint tidak mengesampingkan atau mengganti kebijakan berbasis identitas lainnya, kebijakan berbasis sumber daya, kebijakan jaringan, atau kebijakan akses data yang mungkin telah Anda konfigurasikan. Untuk informasi selengkapnya tentang memperbarui kebijakan titik akhir, lihat [Mengontrol akses ke titik akhir VPC menggunakan kebijakan titik akhir](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html).

Secara default, kebijakan endpoint memberikan akses penuh ke titik akhir VPC Anda. 

```
{
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "*",
            "Resource": "*"
        }
    ]
}
```

Meskipun kebijakan titik akhir VPC default memberikan akses titik akhir penuh, Anda dapat mengonfigurasi kebijakan titik akhir VPC untuk mengizinkan akses ke peran dan pengguna tertentu. Untuk melakukan ini, lihat contoh berikut:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "123456789012",
                    "987654321098"
                ]
            },
            "Action": "*",
            "Resource": "*"
        }
    ]
}
```

------

Anda dapat menentukan koleksi OpenSearch Tanpa Server yang akan disertakan sebagai elemen bersyarat dalam kebijakan titik akhir VPC Anda. Untuk melakukan ini, lihat contoh berikut:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aoss:collection": [
                        "coll-abc"
                    ]
                }
            }
        }
    ]
}
```

------

Support `aoss:CollectionId` untuk didukung.

```
Condition": {
         "StringEquals": {
               "aoss:CollectionId": "collection-id"
          }
}
```

Anda dapat menggunakan identitas SAMP dalam kebijakan titik akhir VPC Anda untuk menentukan akses titik akhir VPC. Anda harus menggunakan wildcard `(*)` di bagian utama kebijakan titik akhir VPC Anda. Untuk melakukan ini, lihat contoh berikut:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "saml:cn": [
                        "saml/111122223333/idp123/group/football",
                        "saml/111122223333/idp123/group/soccer",
                        "saml/111122223333/idp123/group/cricket"
                    ]
                }
            }
        }
    ]
}
```

------

Selain itu, Anda dapat mengonfigurasi kebijakan titik akhir Anda untuk menyertakan kebijakan utama SAMP tertentu. Untuk melakukan ini, lihat yang berikut ini:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:PrincipalTag/Department": [
                        "Engineering"]
                    }
                }
            }
        ]
    }
```

------

Untuk informasi selengkapnya tentang menggunakan otentikasi SAMP dengan Amazon OpenSearch Tanpa Server, lihat [otentikasi SAMP untuk Amazon Tanpa Server](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-saml.html). OpenSearch 

Anda juga dapat menyertakan pengguna IAM dan SAMP dalam kebijakan titik akhir VPC yang sama. Untuk melakukan ini, lihat contoh berikut:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": "*",
            "Action": "*",
            "Resource": "*",
            "Condition": {
                "ForAnyValue:StringEquals": {
                    "saml:cn": [
                        "saml/111122223333/idp123/group/football",
                        "saml/111122223333/idp123/group/soccer",
                        "saml/111122223333/idp123/group/cricket"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "111122223333"
                ]
            },
            "Action": "*",
            "Resource": "*"
        }
    ]
}
```

------

Anda juga dapat mengakses koleksi Amazon OpenSearch Tanpa Server dari Amazon EC2 melalui titik akhir VPC antarmuka. Untuk informasi selengkapnya, lihat, [Akses koleksi OpenSearch Tanpa Server dari Amazon EC2 (melalui titik akhir VPC antarmuka](https://aws.amazon.com/blogs/big-data/network-connectivity-patterns-for-amazon-opensearch-serverless/)).

## Pertimbangan-pertimbangan
<a name="vpc-endpoint-considerations"></a>

Sebelum Anda menyiapkan titik akhir antarmuka untuk OpenSearch Tanpa Server, pertimbangkan hal berikut:
+ OpenSearch Tanpa server mendukung panggilan ke semua [operasi OpenSearch API yang didukung (bukan operasi](serverless-genref.md#serverless-operations) API konfigurasi) melalui titik akhir antarmuka.
+ Setelah Anda membuat titik akhir antarmuka untuk OpenSearch Tanpa Server, Anda masih perlu memasukkannya ke dalam [kebijakan akses jaringan](serverless-network.md) agar dapat mengakses koleksi tanpa server.
+ Secara default, akses penuh ke OpenSearch Tanpa Server diizinkan melalui titik akhir antarmuka. Anda dapat mengaitkan grup keamanan dengan antarmuka jaringan titik akhir untuk mengontrol lalu lintas ke OpenSearch Tanpa Server melalui titik akhir antarmuka.
+ Satu Akun AWS dapat memiliki maksimal 50 titik akhir OpenSearch VPC Tanpa Server.
+ Jika Anda mengaktifkan akses internet publik ke API atau Dasbor koleksi Anda dalam kebijakan jaringan, koleksi Anda dapat diakses oleh VPC apa pun dan oleh internet publik.
+ Jika Anda berada di lokasi dan di luar VPC, Anda tidak dapat menggunakan resolver DNS untuk resolusi titik akhir VPC Tanpa Server OpenSearch secara langsung. Jika Anda memerlukan akses VPN, VPC memerlukan resolver proxy DNS untuk digunakan klien eksternal. Route 53 menyediakan opsi titik akhir masuk yang dapat Anda gunakan untuk menyelesaikan kueri DNS ke VPC dari jaringan lokal atau VPC lain.
+ Zona host pribadi yang dibuat dan dilampirkan OpenSearch Tanpa Server ke VPC dikelola oleh layanan, tetapi muncul di Amazon Route 53 sumber daya Anda dan ditagih ke akun Anda.
+ *Untuk pertimbangan lain, lihat [Pertimbangan](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#considerations-interface-endpoints) dalam Panduan.AWS PrivateLink *

## Izin diperlukan
<a name="serverless-vpc-permissions"></a>

Akses VPC untuk OpenSearch Tanpa Server menggunakan izin AWS Identity and Access Management (IAM) berikut. Anda dapat menentukan kondisi IAM untuk membatasi pengguna ke koleksi tertentu.
+ `aoss:CreateVpcEndpoint`— Buat titik akhir VPC.
+ `aoss:ListVpcEndpoints`— Daftar semua titik akhir VPC.
+ `aoss:BatchGetVpcEndpoint`— Lihat detail tentang subset titik akhir VPC.
+ `aoss:UpdateVpcEndpoint`— Memodifikasi titik akhir VPC.
+ `aoss:DeleteVpcEndpoint`— Hapus titik akhir VPC.

Selain itu, Anda memerlukan izin Amazon EC2 dan Route 53 berikut untuk membuat titik akhir VPC.
+ `ec2:CreateTags`
+ `ec2:CreateVpcEndpoint`
+ `ec2:DeleteVpcEndPoints`
+ `ec2:DescribeSecurityGroups`
+ `ec2:DescribeSubnets`
+ `ec2:DescribeVpcEndpoints`
+ `ec2:DescribeVpcs`
+ `ec2:ModifyVpcEndPoint`
+ `route53:AssociateVPCWithHostedZone`
+ `route53:ChangeResourceRecordSets`
+ `route53:CreateHostedZone`
+ `route53:DeleteHostedZone`
+ `route53:GetChange`
+ `route53:GetHostedZone`
+ `route53:ListHostedZonesByName`
+ `route53:ListHostedZonesByVPC`
+ `route53:ListResourceRecordSets`

## Buat titik akhir antarmuka untuk Tanpa Server OpenSearch
<a name="serverless-vpc-create"></a>

Anda dapat membuat titik akhir antarmuka untuk OpenSearch Tanpa Server menggunakan konsol atau API Tanpa Server. OpenSearch 

**Untuk membuat titik akhir antarmuka untuk koleksi Tanpa OpenSearch Server**

1. Buka konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. **Di panel navigasi kiri, perluas **Tanpa Server** dan pilih titik akhir VPC.**

1. Pilih **Buat titik akhir VPC**.

1. Berikan nama untuk titik akhir.

1. Untuk **VPC**, pilih VPC tempat Anda akan mengakses Tanpa Server. OpenSearch 

1. Untuk **Subnet**, pilih satu subnet yang akan Anda akses tanpa OpenSearch server.
   + Alamat IP Endpoint dan tipe DNS didasarkan pada tipe subnet
     + Dualstack: Jika semua subnet memiliki keduanya IPv4 dan rentang alamat IPv6 
     + IPv6: Jika semua subnet IPv6 hanya subnet
     + IPv4: Jika semua subnet memiliki rentang IPv4 alamat

1. Untuk **grup Keamanan**, pilih grup keamanan untuk diasosiasikan dengan antarmuka jaringan titik akhir. Ini adalah langkah penting di mana Anda membatasi port, protokol, dan sumber untuk lalu lintas masuk yang Anda otorisasi ke titik akhir Anda. Pastikan bahwa aturan grup keamanan memungkinkan sumber daya yang akan menggunakan titik akhir VPC untuk berkomunikasi dengan OpenSearch Tanpa Server untuk berkomunikasi dengan antarmuka jaringan titik akhir.

1. Pilih **Buat titik akhir**.

Untuk membuat titik akhir VPC menggunakan API OpenSearch Tanpa Server, gunakan perintah. `CreateVpcEndpoint`

**catatan**  
Setelah Anda membuat titik akhir, catat ID-nya (misalnya,`vpce-abc123def4EXAMPLE`. Untuk memberikan akses titik akhir ke koleksi Anda, Anda harus menyertakan ID ini dalam satu atau beberapa kebijakan akses jaringan. 

Setelah membuat titik akhir antarmuka, Anda harus menyediakannya akses ke koleksi melalui kebijakan akses jaringan. Untuk informasi selengkapnya, lihat [Akses jaringan untuk Amazon Tanpa OpenSearch Server](serverless-network.md).

## Penyiapan VPC bersama untuk Amazon Tanpa Server OpenSearch
<a name="shared-vpc-setup"></a>

Anda dapat menggunakan Amazon Virtual Private Cloud (VPC) untuk berbagi subnet VPC dengan subnet lain Akun AWS di organisasi Anda, serta berbagi infrastruktur jaringan seperti VPN antar sumber daya dalam beberapa. Akun AWS

Saat ini, Amazon OpenSearch Serverless tidak mendukung pembuatan AWS PrivateLink koneksi ke VPC bersama kecuali Anda adalah pemilik VPC tersebut. AWS PrivateLink juga tidak mendukung berbagi koneksi antara Akun AWS. 

Namun, berdasarkan arsitektur OpenSearch Serverless yang fleksibel dan modular, Anda masih dapat mengatur VPC bersama. Ini karena infrastruktur jaringan OpenSearch Tanpa Server terpisah dari infrastruktur pengumpulan individu (OpenSearch Layanan). Oleh karena itu, Anda dapat membuat AWS PrivateLink VPCe titik akhir untuk satu akun di mana VPC berada, dan kemudian menggunakan VPCe ID dalam kebijakan jaringan akun lain untuk membatasi lalu lintas yang hanya berasal dari VPC bersama itu. 

Prosedur berikut mengacu pada *akun pemilik* dan *akun konsumen*.

Akun pemilik bertindak sebagai akun jaringan umum tempat Anda menyiapkan VPC dan membagikannya dengan akun lain. Akun konsumen adalah akun yang membuat dan memelihara koleksi OpenSearch Tanpa Server mereka di VPC yang dibagikan dengan mereka oleh akun pemilik. 

**Prasyarat**  
Pastikan persyaratan berikut terpenuhi sebelum menyiapkan VPC bersama:
+ Akun pemilik yang dituju harus sudah menyiapkan VPC, subnet, tabel rute, dan sumber daya lain yang diperlukan di Amazon Virtual Private Cloud. Untuk informasi selengkapnya, silakan lihat ACL Jaringan di *[Panduan Pengguna Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/)*.
+ Akun pemilik dan akun konsumen yang dimaksud harus milik organisasi yang sama di AWS Organizations. Untuk informasi selengkapnya, silakan lihat *Panduan Pengguna [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/)*.

**Untuk menyiapkan VPC bersama di akun account/common jaringan pemilik.**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Ikuti langkah-langkah di [Buat titik akhir antarmuka untuk Tanpa Server OpenSearch](#serverless-vpc-create). Seperti yang Anda lakukan, buat pilihan berikut:
   + Pilih VPC dan subnet yang dibagikan dengan akun konsumen di organisasi Anda.

1. Setelah Anda membuat titik akhir, catat VPCe ID yang dihasilkan dan berikan kepada administrator yang akan melakukan tugas penyiapan di akun konsumen.

   VPCe IDs berada dalam format`vpce-abc123def4EXAMPLE`.

**Untuk menyiapkan VPC bersama di akun konsumen**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home).

1. Gunakan informasi [Mengelola koleksi Amazon OpenSearch Tanpa Server](serverless-manage.md) untuk membuat koleksi, jika Anda belum memilikinya.

1. Gunakan informasi [Membuat kebijakan jaringan (konsol)](serverless-network.md#serverless-network-console) untuk membuat kebijakan jaringan. Seperti yang Anda lakukan, buat pilihan berikut.
**catatan**  
Anda juga dapat memperbarui kebijakan jaringan yang ada untuk tujuan ini.

   1. Untuk **tipe Access**, pilih **VPC (disarankan)**.

   1. Untuk **titik akhir VPC untuk akses**, pilih VPCe ID yang diberikan kepada Anda oleh akun pemilik, dalam format. `vpce-abc123def4EXAMPLE`

   1. Di area **tipe Resource**, lakukan hal berikut:
      + Pilih kotak **Aktifkan akses ke OpenSearch titik akhir**, lalu pilih nama koleksi atau pola koleksi yang akan digunakan untuk mengaktifkan akses dari VPC bersama itu.
      + Pilih kotak **Aktifkan akses ke OpenSearch Dasbor**, lalu pilih nama koleksi atau pola koleksi yang akan digunakan untuk mengaktifkan akses dari VPC bersama itu.

1. Untuk kebijakan baru, pilih **Buat**. Untuk kebijakan yang ada, pilih **Perbarui**.

# Kontrol akses pesawat melalui AWS PrivateLink
<a name="serverless-vpc-cp"></a>

Amazon OpenSearch Serverless mendukung dua jenis AWS PrivateLink koneksi untuk bidang kontrol dan operasi pesawat data. Operasi bidang kontrol meliputi pembuatan dan penghapusan koleksi dan pengelolaan kebijakan akses. Operasi bidang data adalah untuk pengindeksan dan kueri data dalam koleksi. Halaman ini mencakup AWS PrivateLink titik akhir bidang kontrol. Untuk informasi tentang titik akhir VPC bidang data, lihat. [Akses pesawat data melalui AWS PrivateLink](serverless-vpc.md)

## Membuat titik AWS PrivateLink akhir bidang kontrol
<a name="serverless-vpc-privatelink"></a>

Anda dapat meningkatkan postur keamanan VPC Anda dengan mengonfigurasi OpenSearch Tanpa Server untuk menggunakan titik akhir VPC antarmuka. Endpoint antarmuka didukung oleh AWS PrivateLink. Teknologi ini memungkinkan Anda mengakses Tanpa OpenSearch Server secara pribadi APIs tanpa gateway internet, perangkat NAT, koneksi VPN, atau koneksi Direct AWS Connect.

Untuk informasi selengkapnya tentang AWS PrivateLink dan titik akhir VPC, lihat titik [akhir VPC di](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html#concepts-vpc-endpoints) Panduan Pengguna Amazon VPC.

### Pertimbangan-pertimbangan
<a name="serverless-vpc-cp-considerations"></a>
+ Titik akhir VPC hanya didukung dalam Wilayah yang sama.
+ Titik akhir VPC hanya mendukung DNS yang disediakan Amazon melalui Amazon Route 53.
+ Titik akhir VPC mendukung kebijakan titik akhir untuk mengontrol akses ke Koleksi Tanpa OpenSearch Server, Kebijakan, dan. VpcEndpoints
+ OpenSearch Tanpa server hanya mendukung titik akhir antarmuka. Titik akhir Gateway tidak didukung.

### Membuat titik akhir VPC
<a name="serverless-vpc-cp-create"></a>

*Untuk membuat titik akhir VPC bidang kontrol untuk Amazon OpenSearch Tanpa Server, gunakan prosedur [Access an AWS service menggunakan antarmuka VPC endpoint di Panduan Pengembang Amazon VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint).* Buat titik akhir berikut:
+ `com.amazonaws.region.aoss`

**Untuk membuat titik akhir VPC bidang kontrol menggunakan konsol**

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

1. Di panel navigasi, pilih **Titik akhir**.

1. Pilih **Buat Titik Akhir**.

1. Untuk **Kategori layanan**, pilih **Layanan AWS**.

1. Untuk **Layanan**, pilih`com.amazonaws.region.aoss`. Misalnya, `com.amazonaws.us-east-1.aoss`.

1. Untuk **VPC**, pilih VPC yang akan digunakan untuk menciptakan titik akhir.

1. Untuk **Subnet**, pilih subnet (Availability Zones) untuk membuat antarmuka jaringan endpoint.

1. Untuk **grup Keamanan**, pilih grup keamanan untuk diasosiasikan dengan antarmuka jaringan titik akhir. Pastikan HTTPS (port 443) diizinkan.

1. Untuk **Kebijakan**, pilih **Akses penuh** untuk mengizinkan semua operasi, atau pilih **Kustom** untuk melampirkan kebijakan kustom.

1. Pilih **Buat titik akhir**.

### Membuat kebijakan endpoint
<a name="serverless-vpc-cp-endpoint-policy"></a>

Anda dapat melampirkan kebijakan titik akhir ke titik akhir VPC yang mengontrol akses ke Amazon Tanpa Server. OpenSearch Kebijakan titik akhir menentukan informasi berikut:
+ Prinsipal yang dapat melakukan tindakan.
+ Tindakan yang dapat dilakukan.
+ Sumber daya yang menjadi target tindakan.

Untuk informasi selengkapnya, lihat [Mengontrol Akses ke Layanan dengan titik akhir VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html) dalam *Panduan Pengguna Amazon VPC*.

**Example Kebijakan titik akhir VPC untuk Tanpa Server OpenSearch**  

```
{  
  "Version": "2012-10-17",		 	 	   
  "Statement": [  
    {  
      "Effect": "Allow",  
      "Principal": "*",  
      "Action": [  
        "aoss:ListCollections",  
        "aoss:BatchGetCollection"  
      ],  
      "Resource": "*"  
    }  
  ]  
}
```

**Example Kebijakan restriktif yang hanya mengizinkan operasi daftar**  

```
{  
  "Version": "2012-10-17",		 	 	   
  "Statement": [  
    {  
      "Effect": "Allow",  
      "Principal": "*",  
      "Action": "aoss:ListCollections",  
      "Resource": "*"  
    }  
  ]  
}
```

# Otentikasi SAMP untuk Amazon Tanpa Server OpenSearch
<a name="serverless-saml"></a>

Dengan autentikasi SAMP untuk Amazon OpenSearch Tanpa Server, Anda dapat menggunakan penyedia identitas yang ada untuk menawarkan sistem masuk tunggal (SSO) untuk titik akhir Dasbor koleksi tanpa server. OpenSearch 

Otentikasi SAMP memungkinkan Anda menggunakan penyedia identitas pihak ketiga untuk masuk ke OpenSearch Dasbor untuk mengindeks dan mencari data. OpenSearch Serverless mendukung penyedia yang menggunakan standar SAMP 2.0, seperti IAM Identity Center, Okta, Keycloak, Active Directory Federation Services (AD FS), dan Auth0. Anda dapat mengonfigurasi Pusat Identitas IAM untuk menyinkronkan pengguna dan grup dari sumber identitas lain seperti Okta,, OneLogin dan Microsoft Entra ID. Untuk daftar sumber identitas yang didukung oleh IAM Identity Center dan langkah-langkah untuk mengonfigurasinya, lihat [Memulai tutorial](https://docs.aws.amazon.com/singlesignon/latest/userguide/tutorials.html) di *Panduan Pengguna Pusat Identitas IAM*.

**catatan**  
Otentikasi SAMP hanya untuk mengakses OpenSearch Dasbor melalui browser web. Pengguna yang diautentikasi hanya dapat membuat permintaan ke operasi OpenSearch API melalui **Alat Pengembang di OpenSearch Dasbor**. Kredensyal SAMP Anda *tidak* memungkinkan Anda membuat permintaan HTTP langsung ke operasi API. OpenSearch 

Untuk mengatur otentikasi SAMP, pertama-tama Anda mengonfigurasi penyedia identitas SAMP (iDP). Anda kemudian menyertakan satu atau beberapa pengguna dari IDP tersebut dalam kebijakan [akses data](serverless-data-access.md). Kebijakan ini memberikan izin tertentu untuk indeks koleksi and/or . Pengguna kemudian dapat masuk ke OpenSearch Dasbor dan melakukan tindakan yang diizinkan dalam kebijakan akses data.

![\[SAML authentication flow with data access policy, OpenSearch interface, and JSON configuration.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/serverless-saml-flow.png)


**Topics**
+ [Pertimbangan-pertimbangan](#serverless-saml-considerations)
+ [Izin diperlukan](#serverless-saml-permissions)
+ [Membuat penyedia SAMP (konsol)](#serverless-saml-creating)
+ [Mengakses Dasbor OpenSearch](#serverless-saml-dashboards)
+ [Memberikan akses identitas SAMP ke pengumpulan data](#serverless-saml-policies)
+ [Membuat penyedia SAMP ()AWS CLI](#serverless-saml-creating-api)
+ [Melihat penyedia SAMP](#serverless-saml-viewing)
+ [Memperbarui penyedia SAMP](#serverless-saml-updating)
+ [Menghapus penyedia SAMP](#serverless-saml-deleting)

## Pertimbangan-pertimbangan
<a name="serverless-saml-considerations"></a>

Pertimbangkan hal berikut saat mengonfigurasi otentikasi SAMP:
+ Permintaan yang ditandatangani dan dienkripsi tidak didukung.
+ Pernyataan terenkripsi tidak didukung.
+ Autentikasi dan sign-out yang diprakarsai IDP tidak didukung.
+ Kebijakan Kontrol Layanan (SCP) tidak akan berlaku atau dievaluasi dalam kasus identitas non-IAM (seperti SAMP di Amazon OpenSearch Tanpa Server & SAMP dan otorisasi pengguna internal dasar untuk Layanan Amazon). OpenSearch 

## Izin diperlukan
<a name="serverless-saml-permissions"></a>

Otentikasi SAMP untuk OpenSearch Tanpa Server menggunakan izin AWS Identity and Access Management (IAM) berikut:
+ `aoss:CreateSecurityConfig`— Buat penyedia SAMP.
+ `aoss:ListSecurityConfig`— Daftar semua penyedia SAMP di akun saat ini.
+ `aoss:GetSecurityConfig`— Lihat informasi penyedia SAMP.
+ `aoss:UpdateSecurityConfig`— Memodifikasi konfigurasi penyedia SAMP yang diberikan, termasuk metadata XML.
+ `aoss:DeleteSecurityConfig`— Hapus penyedia SAMP.

Kebijakan akses berbasis identitas berikut memungkinkan pengguna untuk mengelola semua konfigurasi iDP:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "aoss:CreateSecurityConfig",
                "aoss:DeleteSecurityConfig",
                "aoss:GetSecurityConfig",
                "aoss:UpdateSecurityConfig",
                "aoss:ListSecurityConfigs"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}
```

------

Perhatikan bahwa `Resource` elemen harus menjadi wildcard.

## Membuat penyedia SAMP (konsol)
<a name="serverless-saml-creating"></a>

Langkah-langkah ini menjelaskan cara membuat penyedia SAMP. Ini memungkinkan otentikasi SAMP dengan otentikasi yang dimulai oleh penyedia layanan (SP) untuk Dasbor. OpenSearch Otentikasi yang diprakarsai IDP tidak didukung.

**Untuk mengaktifkan otentikasi SAMP untuk Dasbor OpenSearch**

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. Di panel navigasi kiri, perluas **Tanpa Server** dan pilih otentikasi **SAMP**.

1. Pilih **Tambahkan penyedia SAMP**.

1. Berikan nama dan deskripsi untuk penyedia.
**catatan**  
Nama yang Anda tentukan dapat diakses publik dan akan muncul di menu tarik-turun saat pengguna masuk ke Dasbor. OpenSearch Pastikan nama tersebut mudah dikenali dan tidak mengungkapkan informasi sensitif tentang penyedia identitas Anda.

1. Di bawah **Konfigurasi iDP Anda**, salin URL assertion consumer service (ACS).

1. Gunakan URL ACS yang baru saja Anda salin untuk mengonfigurasi penyedia identitas Anda. Terminologi dan langkah-langkah bervariasi menurut penyedia. Baca dokumentasi dari penyedia Anda.

   Di Okta, misalnya, Anda membuat “aplikasi web SAMP 2.0” dan menentukan URL ACS sebagai URL **Single Sign On, URL** **Penerima, dan URL** **Tujuan**. Untuk Auth0, Anda menentukannya di **Allowed Callback URLs**.

1. Berikan batasan audiens jika IDP Anda memiliki bidang untuk itu. Pembatasan audiens adalah nilai dalam pernyataan SAMP yang menentukan untuk siapa pernyataan itu dimaksudkan. Dengan OpenSearch Tanpa Server, Anda dapat melakukan hal berikut. Pastikan untuk mengganti contoh kode berikut dengan Akun AWS ID Anda sendiri: *content* 

   1. Gunakan batasan `:opensearch:111122223333` audiens default.

   1. (Opsional) mengkonfigurasi pembatasan audiens kustom menggunakan. AWS CLI Untuk informasi selengkapnya, lihat [Membuat penyedia SAMP ()AWS CLI](#serverless-saml-creating-api).

   Nama bidang pembatasan audiens bervariasi menurut penyedia. Untuk Okta itu **Audience URI (SP Entity ID)**. Untuk Pusat Identitas IAM itu adalah audiens **Aplikasi SAMP**.

1. Jika Anda menggunakan IAM Identity Center, Anda juga perlu menentukan [pemetaan atribut](https://docs.aws.amazon.com/singlesignon/latest/userguide/attributemappingsconcept.html) berikut:`Subject=${user:name}`, dengan format. `unspecified`

1. Setelah Anda konfigurasi, penyedia identitas akan menghasilkan file metadata IdP. File XHTML ini berisi informasi tentang penyedia, seperti sertifikat TLS, titik akhir masuk tunggal, dan ID entitas penyedia identitas.

   Salin teks dalam file metadata iDP dan tempel di bawah **Menyediakan metadata** dari bidang IDP Anda. Sebagai alternatif, pilih **Impor dari file XHTML dan unggah file**. File metadata harus terlihat seperti ini:

   ```
   <?xml version="1.0" encoding="UTF-8"?>
   <md:EntityDescriptor entityID="entity-id" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata">
     <md:IDPSSODescriptor WantAuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
       <md:KeyDescriptor use="signing">
         <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
           <ds:X509Data>
             <ds:X509Certificate>tls-certificate</ds:X509Certificate>
           </ds:X509Data>
         </ds:KeyInfo>s
       </md:KeyDescriptor>
       <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat>
       <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>
       <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="idp-sso-url"/>
       <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="idp-sso-url"/>
     </md:IDPSSODescriptor>
   </md:EntityDescriptor>
   ```

1. Biarkan bidang **atribut Custom user ID** kosong untuk menggunakan `NameID` elemen pernyataan SAMP untuk nama pengguna. Jika penegasan Anda tidak menggunakan elemen standar ini dan sebagai gantinya menyertakan nama pengguna sebagai atribut kustom, tentukan atribut di sini. Atribut peka huruf besar/kecil. Hanya satu atribut pengguna yang didukung.

   Contoh berikut menunjukkan atribut override untuk `NameID` dalam pernyataan SAMP:

   ```
   <saml2:Attribute Name="UserId" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic">
     <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:type="xs:string">annie</saml2:AttributeValue>
   </saml2:Attribute>
   ```

1. (Opsional) Tentukan atribut khusus di bidang **atribut Grup**, seperti `role` atau`group`. Hanya satu atribut grup yang didukung. Tidak ada atribut grup default. Jika Anda tidak menentukannya, kebijakan akses data Anda hanya dapat berisi prinsipal pengguna.

   Contoh berikut menunjukkan atribut grup dalam pernyataan SAMP:

   ```
   <saml2:Attribute Name="department" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic">
       <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" 
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       xsi:type="xs:string">finance</saml2:AttributeValue>
   </saml2:Attribute>
   ```

1. Secara default, OpenSearch Dasbor membuat pengguna keluar setelah 24 jam. Anda dapat mengonfigurasi nilai ini ke angka apa pun antara 1 dan 12 jam (15 dan 720 menit) dengan menentukan batas waktu **OpenSearch Dasbor**. Jika Anda mencoba mengatur batas waktu sama dengan atau kurang dari 15 menit, sesi Anda akan diatur ulang menjadi satu jam.

1. Pilih **Buat penyedia SAMP**.

## Mengakses Dasbor OpenSearch
<a name="serverless-saml-dashboards"></a>

Setelah Anda mengonfigurasi penyedia SAMP, semua pengguna dan grup yang terkait dengan penyedia tersebut dapat menavigasi ke titik akhir OpenSearch Dasbor. URL Dasbor memiliki format `collection-endpoint/_dashboards/` *untuk semua koleksi*. 

Jika Anda mengaktifkan SAMP, memilih tautan di Konsol Manajemen AWS mengarahkan Anda ke halaman pilihan iDP, tempat Anda dapat masuk menggunakan kredensyal SAMP Anda. Pertama, gunakan dropdown untuk memilih penyedia identitas:

![\[OpenSearch login page with dropdown menu for selecting SAML Identity Provider options.\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/images/idpList.png)


Kemudian masuk menggunakan kredensi IDP Anda. 

Jika Anda tidak mengaktifkan SAMP, memilih tautan di Konsol Manajemen AWS mengarahkan Anda untuk masuk sebagai pengguna atau peran IAM, tanpa opsi untuk SAMP.

## Memberikan akses identitas SAMP ke pengumpulan data
<a name="serverless-saml-policies"></a>

Setelah membuat penyedia SAMP, Anda masih perlu memberi pengguna dan grup yang mendasarinya akses ke data dalam koleksi Anda. Anda memberikan akses melalui [kebijakan akses data](serverless-data-access.md). Sampai Anda memberikan akses kepada pengguna, mereka tidak akan dapat membaca, menulis, atau menghapus data apa pun dalam koleksi Anda.

Untuk memberikan akses, buat kebijakan akses data dan tentukan and/or grup pengguna SAMP Anda IDs dalam `Principal` pernyataan:

```
[
   {
      "Rules":[
       ...  
      ],
      "Principal":[
         "saml/987654321098/myprovider/user/Shaheen",
         "saml/987654321098/myprovider/group/finance"
      ]
   }
]
```

Anda dapat memberikan akses ke koleksi, indeks, atau keduanya. Jika Anda ingin pengguna yang berbeda memiliki izin yang berbeda, buat beberapa aturan. Untuk daftar izin yang tersedia, lihat [Izin kebijakan yang didukung](serverless-data-access.md#serverless-data-supported-permissions). Untuk informasi tentang cara memformat kebijakan akses, lihat [Sintaks kebijakan](serverless-data-access.md).

## Membuat penyedia SAMP ()AWS CLI
<a name="serverless-saml-creating-api"></a>

Untuk membuat penyedia SAMP menggunakan API OpenSearch Tanpa Server, kirim permintaan: [CreateSecurityConfig](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_CreateSecurityConfig.html)

```
aws opensearchserverless create-security-config \
    --name myprovider \
    --type saml \
    --saml-options file://saml-auth0.json
```

Tentukan`saml-options`, termasuk metadata XML, sebagai peta nilai kunci dalam file.json. [Metadata XMLharus dikodekan sebagai string lolos JSON.](https://www.freeformatter.com/json-escape.html)

```
{
   "sessionTimeout": 70,
   "groupAttribute": "department",
   "userAttribute": "userid",
   "openSearchServerlessEntityId": "aws:opensearch:111122223333:app1",
   "metadata": "EntityDescriptor xmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\" ... ... ... IDPSSODescriptor\r\n\/EntityDescriptor"
}
```

**catatan**  
(Opsional) mengkonfigurasi pembatasan audiens kustom menggunakan. AWS CLI Untuk informasi selengkapnya, lihat [Membuat penyedia SAMP ()AWS CLI](#serverless-saml-creating-api).

## Melihat penyedia SAMP
<a name="serverless-saml-viewing"></a>

[ListSecurityConfigs](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListSecurityConfigs.html)Permintaan berikut mencantumkan semua penyedia SAMP di akun Anda:

```
aws opensearchserverless list-security-configs --type saml
```

Permintaan mengembalikan informasi tentang semua penyedia SAMP yang ada, termasuk metadata IDP lengkap yang dihasilkan oleh penyedia identitas Anda:

```
{
   "securityConfigDetails": [ 
      { 
         "configVersion": "MTY2NDA1MjY4NDQ5M18x",
         "createdDate": 1664054180858,
         "description": "Example SAML provider",
         "id": "saml/111122223333/myprovider",
         "lastModifiedDate": 1664054180858,
         "samlOptions": { 
            "groupAttribute": "department",
            "metadata": "EntityDescriptorxmlns=\"urn:oasis:names:tc:SAML:2.0:metadata\" ...... ...IDPSSODescriptor\r\n/EntityDescriptor",
            "sessionTimeout": 120,
            "openSearchServerlessEntityId": "aws:opensearch:111122223333:app1",
            "userAttribute": "userid"
         }
      }
   ]
}
```

Untuk melihat detail tentang penyedia tertentu, termasuk pembaruan `configVersion` for future, kirim `GetSecurityConfig` permintaan.

## Memperbarui penyedia SAMP
<a name="serverless-saml-updating"></a>

**Untuk memperbarui penyedia SAMP menggunakan konsol OpenSearch Tanpa Server, pilih **otentikasi SAMP**, pilih penyedia identitas Anda, dan pilih Edit.** Anda dapat memodifikasi semua bidang, termasuk metadata dan atribut kustom.

Untuk memperbarui penyedia melalui API OpenSearch Tanpa Server, kirim [UpdateSecurityConfig](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UpdateSecurityConfig.html)permintaan dan sertakan pengenal kebijakan yang akan diperbarui. Anda juga harus menyertakan versi konfigurasi, yang dapat Anda ambil menggunakan `GetSecurityConfig` perintah `ListSecurityConfigs` atau. Menyertakan versi terbaru memastikan bahwa Anda tidak secara tidak sengaja mengesampingkan perubahan yang dilakukan oleh orang lain.

Permintaan berikut memperbarui opsi SAMP untuk penyedia:

```
aws opensearchserverless update-security-config \
    --id saml/123456789012/myprovider \
    --type saml \
    --saml-options file://saml-auth0.json \
    --config-version MTY2NDA1MjY4NDQ5M18x
```

Tentukan opsi konfigurasi SAMP Anda sebagai peta nilai kunci dalam file.json.

**penting**  
**Pembaruan untuk opsi SAMP *tidak inkremental***. Jika Anda tidak menentukan nilai untuk parameter dalam `SAMLOptions` objek saat Anda melakukan pembaruan, nilai yang ada akan diganti dengan nilai kosong. Misalnya, jika konfigurasi saat ini berisi nilai untuk`userAttribute`, dan kemudian Anda membuat pembaruan dan tidak menyertakan nilai ini, nilai akan dihapus dari konfigurasi. Pastikan Anda tahu apa nilai yang ada sebelum Anda membuat pembaruan dengan memanggil `GetSecurityConfig` operasi.

## Menghapus penyedia SAMP
<a name="serverless-saml-deleting"></a>

Saat Anda menghapus penyedia SAMP, referensi apa pun ke pengguna dan grup terkait dalam kebijakan akses data Anda tidak lagi berfungsi. Untuk menghindari kebingungan, kami sarankan Anda menghapus semua referensi ke titik akhir dalam kebijakan akses Anda sebelum Anda menghapus titik akhir.

**Untuk menghapus penyedia SAMP menggunakan konsol OpenSearch Tanpa Server, pilih **Autentikasi**, pilih penyedia, dan pilih Hapus.**

Untuk menghapus penyedia melalui API OpenSearch Tanpa Server, kirim permintaan: [DeleteSecurityConfig](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_DeleteSecurityConfig.html)

```
aws opensearchserverless delete-security-config --id saml/123456789012/myprovider
```

# Validasi kepatuhan untuk Amazon Tanpa Server OpenSearch
<a name="serverless-compliance-validation"></a>

Auditor pihak ketiga menilai keamanan dan kepatuhan Amazon OpenSearch Serverless sebagai bagian dari beberapa AWS program kepatuhan. Hal ini mencakup SOC, PCI, dan HIPAA.

Untuk mempelajari apakah an Layanan AWS berada dalam lingkup program kepatuhan tertentu, lihat [Layanan AWS di Lingkup oleh Program Kepatuhan Layanan AWS](https://aws.amazon.com/compliance/services-in-scope/) dan pilih program kepatuhan yang Anda minati. Untuk informasi umum, lihat [Program AWS Kepatuhan Program AWS](https://aws.amazon.com/compliance/programs/) .

Anda dapat mengunduh laporan audit pihak ketiga menggunakan AWS Artifact. Untuk informasi selengkapnya, lihat [Mengunduh Laporan di AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html) .

Tanggung jawab kepatuhan Anda saat menggunakan Layanan AWS ditentukan oleh sensitivitas data Anda, tujuan kepatuhan perusahaan Anda, dan hukum dan peraturan yang berlaku. Untuk informasi selengkapnya tentang tanggung jawab kepatuhan Anda saat menggunakan Layanan AWS, lihat [Dokumentasi AWS Keamanan](https://docs.aws.amazon.com/security/).

# Menandai koleksi Amazon Tanpa OpenSearch Server
<a name="tag-collection"></a>

Tag memungkinkan Anda menetapkan informasi arbitrer ke koleksi Amazon OpenSearch Tanpa Server sehingga Anda dapat mengkategorikan dan memfilter informasi tersebut. *Tag* adalah label metadata yang Anda tetapkan atau yang ditetapkan ke sumber AWS daya. AWS 

Setiap tanda terdiri dari *kunci* dan *nilai*. Untuk tanda yang Anda tetapkan, Anda menentukan kunci dan nilai. Misalnya, Anda dapat menentukan kunci sebagai `stage` dan nilai untuk satu sumber daya sebagai `test`.

Dengan tag, Anda dapat mengidentifikasi dan mengatur AWS sumber daya Anda. Banyak AWS layanan mendukung penandaan, sehingga Anda dapat menetapkan tag yang sama ke sumber daya dari layanan yang berbeda untuk menunjukkan bahwa sumber daya terkait. Misalnya, Anda dapat menetapkan tag yang sama ke koleksi OpenSearch Tanpa Server yang Anda tetapkan ke domain Layanan Amazon. OpenSearch 

Di OpenSearch Tanpa Server, sumber daya utama adalah koleksi. Anda dapat menggunakan konsol OpenSearch Layanan, operasi API OpenSearch Tanpa Server, atau AWS SDKs untuk menambah, mengelola, dan menghapus tag dari koleksi. AWS CLI

## Izin diperlukan
<a name="collection-tag-permissions"></a>

OpenSearch Tanpa server menggunakan izin AWS Identity and Access Management Access Analyzer (IAM) berikut untuk menandai koleksi:
+ `aoss:TagResource`
+ `aoss:ListTagsForResource`
+ `aoss:UntagResource`

# Menandai koleksi (konsol)
<a name="tag-collection-console"></a>

Konsol adalah cara paling sederhana untuk menandai koleksi.

****Untuk membuat tag (konsol)****

1. Masuk ke konsol OpenSearch Layanan Amazon di [https://console.aws.amazon.com/aos/rumah](https://console.aws.amazon.com/aos/home ).

1. **Perluas **Tanpa Server** di panel navigasi kiri dan pilih Koleksi.**

1. Pilih koleksi yang ingin Anda tambahkan tag, dan buka tab **Tag**.

1. Pilih **Kelola** dan **Tambahkan tag baru**.

1. Masukkan kunci tag dan nilai opsional.

1. Pilih **Simpan**.

Untuk menghapus tag, ikuti langkah yang sama dan pilih **Hapus** pada halaman **Kelola tag**.

Untuk informasi selengkapnya tentang menggunakan konsol untuk bekerja dengan tag, lihat [Editor Tag](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html) di *Panduan Memulai Konsol AWS Manajemen*.

# Menandai koleksi ()AWS CLI
<a name="tag-collection-cli"></a>

Untuk menandai koleksi menggunakan AWS CLI, kirim [TagResource](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_TagResource.html)permintaan: 

```
aws opensearchserverless tag-resource
  --resource-arn arn:aws:aoss:us-east-1:123456789012:collection/my-collection 
  --tags Key=service,Value=aoss Key=source,Value=logs
```

Lihat tag yang ada untuk koleksi dengan [ListTagsForResource](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_ListTagsForResource.html)perintah:

```
aws opensearchserverless list-tags-for-resource
  --resource-arn arn:aws:aoss:us-east-1:123456789012:collection/my-collection
```

Hapus tag dari koleksi menggunakan [UntagResource](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/API_UntagResource.html)perintah:

```
aws opensearchserverless untag-resource
  --resource-arn arn:aws:aoss:us-east-1:123456789012:collection/my-collection
  --tag-keys service
```

# Operasi dan plugin yang didukung di Amazon Tanpa Server OpenSearch
<a name="serverless-genref"></a>

[Amazon OpenSearch Serverless mendukung berbagai OpenSearch plugin, serta subset dari operasi API pengindeksan, pencarian, dan metadata yang tersedia di.](https://opensearch.org/docs/latest/opensearch/rest-api/index/) OpenSearch Anda dapat menyertakan izin di kolom kiri tabel dalam [kebijakan akses data](serverless-data-access.md) untuk membatasi akses ke operasi tertentu.

**Topics**
+ [Operasi dan izin OpenSearch API yang didukung](#serverless-operations)
+ [OpenSearch Plugin yang didukung](#serverless-plugins)

## Operasi dan izin OpenSearch API yang didukung
<a name="serverless-operations"></a>

Tabel berikut mencantumkan operasi API yang didukung OpenSearch Tanpa Server, bersama dengan izin kebijakan akses data yang sesuai:


| Izin kebijakan akses data | OpenSearch Operasi API | Deskripsi dan peringatan | 
| --- | --- | --- | 
|  `aoss:CreateIndex`  | MENEMPATKAN <index> |  Buat indeks. Untuk informasi selengkapnya, lihat [Membuat indeks](https://opensearch.org/docs/latest/api-reference/index-apis/create-index/).  Izin ini juga berlaku untuk membuat indeks dengan data sampel di OpenSearch Dasbor.   | 
|  `aoss:DescribeIndex`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Jelaskan indeks. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | 
|  `aoss:WriteDocument`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Tulis dan perbarui dokumen. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  Beberapa operasi hanya diperbolehkan untuk koleksi jenis`SEARCH`. Untuk informasi selengkapnya, lihat [Memilih jenis koleksi](serverless-overview.md#serverless-usecase).   | 
|  `aoss:ReadDocument`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | Baca dokumen. Untuk informasi selengkapnya, lihat sumber daya berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html) | 
|  `aoss:DeleteIndex`  | HAPUS <target> | Hapus indeks. Untuk informasi selengkapnya, lihat [Menghapus indeks](https://opensearch.org/docs/latest/api-reference/index-apis/delete-index/). | 
|  `aoss:UpdateIndex`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Perbarui pengaturan indeks. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | 
|  `aoss:CreateCollectionItems`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html) | 
|  `aoss:DescribeCollectionItems`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Menjelaskan cara bekerja dengan alias, templat indeks dan kerangka kerja, dan saluran pipa. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | 
|  `aoss:UpdateCollectionItems`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | Perbarui alias, templat indeks, dan templat kerangka kerja. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html) \$1 API untuk menghilangkan ketentuan template. Layanan Klien dan OpenSearch Tanpa Server MLCommons mengelola kebijakan dependen.  | 
|  `aoss:DeleteCollectionItems`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Hapus alias, templat indeks dan kerangka kerja, dan saluran pipa. Untuk informasi selengkapnya, lihat sumber daya berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  | 
|  `aoss:DescribeMLResource`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Menjelaskan GET dan mencari APIs untuk mengambil informasi tentang model, dan konektor.   | 
|  `aoss:CreateMLResource`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Memberikan izin untuk membuat sumber daya ML.  | 
|  `aoss:UpdateMLResource`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Memberikan izin untuk memperbarui sumber daya HTML yang ada.  | 
|  `aoss:DeleteMLResource`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Memberikan izin untuk menghapus sumber daya ML.  | 
|  `aoss:ExecuteMLResource`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/opensearch-service/latest/developerguide/serverless-genref.html)  |  Memberikan izin untuk menjalankan model.  | 

## OpenSearch Plugin yang didukung
<a name="serverless-plugins"></a>

OpenSearch Koleksi tanpa server dikemas dengan plugin berikut dari komunitas. OpenSearch Tanpa server secara otomatis menyebarkan dan mengelola plugin untuk Anda.

**Plugin analisis**
+  [Analisis ICU](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-icu) 
+  [Analisis Jepang (kuromoji)](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-kuromoji)
+  [Analisis Korea (Nori)](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-nori) 
+  [Analisis Fonetik](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-phonetic) 
+  [Analisis Bahasa Mandarin Cerdas](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-smartcn) 
+  [Gambar Analisis Polandia](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-stempel)
+  [Analisis Ukraina](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/analysis-ukrainian)

**Plugin mapper**
+  [Ukuran Mapper](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/mapper-size) 
+  [Pemetaan Murmur3](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/mapper-murmur3) 
+  [Teks Beranotasi Mapper](https://github.com/opensearch-project/OpenSearch/tree/main/plugins/mapper-annotated-text)

**Plugin skrip**
+  [Tanpa rasa sakit](https://opensearch.org/docs/latest/api-reference/script-apis/exec-script/)
+  [Ekspresi](https://opensearch.org/docs/latest/data-prepper/pipelines/expression-syntax/) 
+  [Kumis](https://mustache.github.io/mustache.5.html)

Selain itu, OpenSearch Serverless mencakup semua plugin yang dikirimkan sebagai modul. 

# Memantau Amazon Tanpa OpenSearch Server
<a name="serverless-monitoring"></a>

Pemantauan adalah bagian penting dalam menjaga keandalan, ketersediaan, dan kinerja Amazon OpenSearch Tanpa Server dan solusi Anda yang lain AWS . AWS menyediakan alat pemantauan berikut untuk menonton OpenSearch Tanpa Server, melaporkan ketika ada sesuatu yang salah, dan mengambil tindakan otomatis bila perlu:
+ *Amazon CloudWatch* memantau AWS sumber daya Anda dan aplikasi yang Anda jalankan AWS secara real time. Anda dapat mengumpulkan dan melacak metrik, membuat dasbor yang disesuaikan, dan mengatur alarm yang memberi tahu Anda atau mengambil tindakan saat metrik tertentu mencapai ambang batas yang ditentukan. 

  Misalnya, Anda dapat CloudWatch melacak penggunaan CPU atau metrik lain dari instans Amazon EC2 Anda dan secara otomatis meluncurkan instans baru bila diperlukan. Untuk informasi selengkapnya, lihat [Panduan CloudWatch Pengguna Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/).
+ *AWS CloudTrail* menangkap panggilan API dan peristiwa terkait yang dilakukan oleh atau atas nama Akun AWS Anda. Ini mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Anda dapat mengidentifikasi pengguna dan akun mana yang dipanggil AWS, alamat IP sumber dari mana panggilan dilakukan, dan kapan panggilan terjadi. Untuk informasi selengkapnya, silakan lihat [Panduan Pengguna AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/).
+ *Amazon EventBridge* memberikan aliran kejadian sistem yang mendekati real-time yang menjelaskan perubahan dalam domain OpenSearch Layanan Anda. Anda dapat membuat aturan yang mengawasi peristiwa tertentu, dan memicu tindakan otomatis di tempat lain Layanan AWS saat peristiwa ini terjadi. Untuk informasi selengkapnya, lihat [Panduan EventBridge Pengguna Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/).

# Memantau OpenSearch Tanpa Server dengan Amazon CloudWatch
<a name="monitoring-cloudwatch"></a>

Anda dapat memantau penggunaan Amazon OpenSearch Tanpa Server CloudWatch, yang mengumpulkan data mentah dan memprosesnya menjadi metrik yang dapat dibaca, mendekati waktu nyata. Statistik ini disimpan untuk jangka waktu 15 bulan, sehingga Anda dapat mengakses informasi historis dan mendapatkan perspektif yang lebih baik tentang performa aplikasi atau layanan web Anda. 

Anda juga dapat mengatur alarm yang memperhatikan ambang batas tertentu dan mengirim notifikasi atau mengambil tindakan saat ambang batas tersebut terpenuhi. Untuk informasi selengkapnya, lihat [Panduan CloudWatch Pengguna Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/).

OpenSearch Tanpa server melaporkan metrik berikut di namespace. `AWS/AOSS`


| Metrik | Deskripsi | 
| --- | --- | 
| ActiveCollection |  Menunjukkan apakah koleksi aktif. Nilai 1 berarti koleksi dalam `ACTIVE` keadaan. Nilai ini dipancarkan setelah berhasil membuat koleksi dan tetap 1 sampai Anda menghapus koleksi. Metrik tidak dapat memiliki nilai 0. **Statistik yang relevan**: Max **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| DeletedDocuments |  Jumlah total dokumen yang dihapus. **Statistik yang relevan**: Rata-rata, Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| IndexingOCU |  Jumlah OpenSearch Compute Units (OCUs) yang digunakan untuk menelan data pengumpulan. Metrik ini berlaku di tingkat akun. Merupakan penggunaan hanya untuk koleksi yang bukan bagian dari grup koleksi apa pun. **Statistik yang relevan**: Jumlah **Dimensi**: `ClientId` **Frekuensi**: 60 detik  | 
| IndexingOCU |  Jumlah OpenSearch Compute Units (OCUs) yang digunakan untuk menelan data pengumpulan. Metrik ini berlaku di tingkat grup koleksi. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionGroupId`, `CollectionGroupName` **Frekuensi**: 60 detik  | 
| IngestionDataRate |  Tingkat pengindeksan dalam GiB per detik untuk koleksi atau indeks. Metrik ini hanya berlaku untuk permintaan pengindeksan massal. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| IngestionDocumentErrors |  Jumlah total kesalahan dokumen selama konsumsi untuk koleksi atau indeks. Setelah permintaan pengindeksan massal berhasil, penulis memproses permintaan dan mengeluarkan kesalahan untuk semua dokumen yang gagal dalam permintaan. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| IngestionDocumentRate |  Tingkat per detik di mana dokumen dicerna ke koleksi atau indeks. Metrik ini hanya berlaku untuk permintaan pengindeksan massal. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| IngestionRequestErrors |  Jumlah total kesalahan permintaan pengindeksan massal ke koleksi. OpenSearch Tanpa server memancarkan metrik ini ketika permintaan pengindeksan massal gagal karena alasan apa pun, seperti masalah otentikasi atau ketersediaan. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| IngestionRequestLatency |  Latensi, dalam hitungan detik, untuk operasi penulisan massal ke koleksi. **Statistik yang relevan**: Minimum, Maksimum, Rata-rata **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| IngestionRequestRate |  Jumlah total operasi penulisan massal yang diterima oleh koleksi. **Statistik yang relevan**: Minimum, Maksimum, Rata-rata **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| IngestionRequestSuccess |  Jumlah total operasi pengindeksan yang berhasil ke koleksi. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| SearchableDocuments |  Jumlah total dokumen yang dapat dicari dalam koleksi atau indeks. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| SearchRequestErrors |  Jumlah total kesalahan kueri per menit untuk koleksi. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| SearchRequestLatency |  Waktu rata-rata, dalam milidetik, yang diperlukan untuk menyelesaikan operasi pencarian terhadap koleksi. **Statistik yang relevan**: Minimum, Maksimum, Rata-rata **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| SearchOCU |  Jumlah OpenSearch Compute Units (OCUs) yang digunakan untuk mencari data pengumpulan. Metrik ini berlaku di tingkat akun. Merupakan penggunaan hanya untuk koleksi yang bukan bagian dari grup koleksi apa pun. **Statistik yang relevan**: Jumlah **Dimensi**: `ClientId` **Frekuensi**: 60 detik  | 
| SearchOCU |  Jumlah OpenSearch Compute Units (OCUs) yang digunakan untuk mencari data pengumpulan. Metrik ini berlaku di tingkat grup koleksi. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionGroupId`, `CollectionGroupName` **Frekuensi**: 60 detik  | 
| SearchRequestRate |  Jumlah total permintaan pencarian per menit untuk koleksi. **Statistik yang relevan**: Rata-rata, Maksimum, Jumlah **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 
| StorageUsedInS3 |  Jumlah, dalam byte, penyimpanan Amazon S3 yang digunakan. OpenSearch Tanpa server menyimpan data yang diindeks di Amazon S3. Anda harus memilih periode pada satu menit untuk mendapatkan nilai yang akurat. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`,`CollectionName`,`IndexId`, `IndexName` **Frekuensi**: 60 detik  | 
| VectorIndexBuildAccelerationOCU |  Jumlah OpenSearch Compute Units (OCUs) yang digunakan untuk mempercepat pengindeksan vektor. Metrik ini berlaku di tingkat pengumpulan. **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`, `CollectionId` **Frekuensi**: 60 detik  | 
| 2xx, 3xx, 4xx, 5xx |  Jumlah permintaan ke koleksi yang menghasilkan kode respons HTTP yang diberikan (2 *xx*, 3 *xx*, 4 *xx*, 5 *xx*). **Statistik yang relevan**: Jumlah **Dimensi**:`ClientId`,`CollectionId`, `CollectionName` **Frekuensi**: 60 detik  | 

# Mencatat OpenSearch panggilan API Tanpa Server menggunakan AWS CloudTrail
<a name="logging-using-cloudtrail"></a>

Amazon OpenSearch Serverless terintegrasi dengan AWS CloudTrail, layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, peran, atau AWS layanan di Tanpa Server. 

CloudTrail menangkap semua panggilan API untuk OpenSearch Tanpa Server sebagai peristiwa. Panggilan yang diambil mencakup panggilan dari bagian Tanpa Server pada konsol OpenSearch Layanan dan panggilan kode ke operasi API Tanpa OpenSearch Server.

Jika Anda membuat jejak, Anda dapat mengaktifkan pengiriman CloudTrail acara secara terus menerus ke bucket Amazon S3, termasuk peristiwa untuk OpenSearch Tanpa Server. Jika Anda tidak mengonfigurasi jejak, Anda masih dapat melihat peristiwa terbaru di CloudTrail konsol dalam **Riwayat acara**. 

Dengan menggunakan informasi yang dikumpulkan oleh CloudTrail, Anda dapat menentukan permintaan yang dibuat ke OpenSearch Tanpa Server, alamat IP dari mana permintaan dibuat, siapa yang membuat permintaan, kapan dibuat, dan detail tambahan.

Untuk mempelajari selengkapnya CloudTrail, lihat [Panduan AWS CloudTrail Pengguna](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html).

## OpenSearch Informasi tanpa server di CloudTrail
<a name="service-name-info-in-cloudtrail"></a>

CloudTrail diaktifkan pada Akun AWS saat Anda membuat akun. Ketika aktivitas terjadi di OpenSearch Tanpa Server, aktivitas tersebut direkam dalam suatu CloudTrail peristiwa bersama dengan peristiwa AWS layanan lainnya dalam riwayat **Acara**. Anda dapat melihat, mencari, dan mengunduh acara terbaru di situs Anda Akun AWS. Untuk informasi selengkapnya, lihat [Melihat peristiwa dengan Riwayat CloudTrail acara](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html).

Untuk catatan acara yang sedang berlangsung di Anda Akun AWS, termasuk acara untuk OpenSearch Tanpa Server, buat jejak. *Jejak* memungkinkan CloudTrail untuk mengirimkan file log ke bucket Amazon S3. Secara default, saat Anda membuat jejak di konsol, jejak tersebut berlaku untuk semua Wilayah AWS. 

Jejak mencatat peristiwa dari semua Wilayah di AWS partisi dan mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Selain itu, Anda dapat mengonfigurasi AWS layanan lain untuk menganalisis lebih lanjut dan menindaklanjuti data peristiwa yang dikumpulkan dalam CloudTrail log. Untuk informasi selengkapnya, lihat berikut:
+ [Gambaran umum untuk membuat jejak](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail layanan dan integrasi yang didukung](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html)
+ [Mengonfigurasi notifikasi Amazon SNS untuk CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/configure-sns-notifications-for-cloudtrail.html)
+ [Menerima file CloudTrail log dari beberapa wilayah](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html) dan [Menerima file CloudTrail log dari beberapa akun](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

Semua tindakan OpenSearch Tanpa Server dicatat oleh CloudTrail dan didokumentasikan dalam referensi API Tanpa [OpenSearch Server](https://docs.aws.amazon.com/opensearch-service/latest/ServerlessAPIReference/Welcome.html). Misalnya, panggilan ke`CreateCollection`,`ListCollections`, dan `DeleteCollection` tindakan menghasilkan entri dalam file CloudTrail log.

Setiap entri peristiwa atau log berisi informasi tentang entitas yang membuat permintaan tersebut. Informasi identitas membantu Anda menentukan:
+ Apakah permintaan itu dibuat dengan kredenal pengguna root atau AWS Identity and Access Management (IAM).
+ Apakah permintaan tersebut dibuat dengan kredensial keamanan sementara untuk satu peran atau pengguna gabungan.
+ Apakah permintaan itu dibuat oleh AWS layanan lain.

Untuk informasi selengkapnya, lihat [Elemen userIdentity CloudTrail ](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html).

## OpenSearch Peristiwa data tanpa server di CloudTrail
<a name="cloudtrail-data-events"></a>

[Peristiwa data](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events) memberikan informasi tentang operasi sumber daya yang dilakukan pada atau di sumber daya (misalnya, mencari atau mengindeks ke Koleksi OpenSearch Tanpa Server). Ini juga dikenal sebagai operasi bidang data. Peristiwa data sering kali merupakan aktivitas bervolume tinggi. Secara default, CloudTrail tidak mencatat peristiwa data. **Riwayat CloudTrail peristiwa** tidak merekam peristiwa data.

Biaya tambahan berlaku untuk peristiwa data. Untuk informasi selengkapnya tentang CloudTrail harga, lihat [AWS CloudTrail Harga](https://aws.amazon.com/cloudtrail/pricing/).

Anda dapat mencatat peristiwa data untuk jenis `AWS::AOSS::Collection` sumber daya menggunakan CloudTrail konsol AWS CLI, atau operasi CloudTrail API. Untuk informasi selengkapnya tentang cara mencatat peristiwa data, lihat [Mencatat peristiwa data dengan Konsol Manajemen AWS](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#logging-data-events-console) dan [Logging peristiwa data dengan AWS Command Line Interface](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html#creating-data-event-selectors-with-the-AWS-CLI) di *Panduan AWS CloudTrail Pengguna*.

Anda dapat mengonfigurasi pemilih acara lanjutan untuk memfilter pada `eventName``readOnly`,, dan `resources.ARN` bidang untuk mencatat hanya peristiwa yang penting bagi Anda. Untuk informasi selengkapnya tentang bidang ini, lihat [https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedFieldSelector.html)di *Referensi AWS CloudTrail API*.

## Memahami OpenSearch entri Peristiwa Data Tanpa Server
<a name="understanding-data-event-entries"></a>

Dalam contoh berikut:
+ `requestParameters`Bidang berisi detail tentang panggilan API yang dilakukan ke koleksi. Ini termasuk jalur permintaan dasar (tanpa parameter kueri).
+ `responseElements`Kolom ini menyertakan kode status yang menunjukkan hasil permintaan Anda saat memodifikasi sumber daya. Kode status ini membantu Anda melacak apakah perubahan Anda berhasil diproses atau memerlukan perhatian.
+ OpenSearch Serverless mencatat peristiwa CloudTrail data hanya untuk permintaan yang telah berhasil menyelesaikan autentikasi IAM.

**Example**  

```
 {
      "eventVersion": "1.11",
      "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROA123456789EXAMPLE",
        "arn": "arn:aws::sts::111122223333:assumed-role/Admin/user-role",
        "accountId": "111122223333",
        "accessKeyId": "access-key",
        "userName": "",
        "sessionContext": {
          "sessionIssuer": {
            "type": "Role",
            "principalId": "AROA123456789EXAMPLE",
            "arn": "arn:aws:iam::111122223333:role/Admin",
            "accountId": "111122223333",
            "userName": "Admin"
          },
          "attributes": {
            "creationDate": "2025-08-15T22:57:38Z",
            "mfaAuthenticated": "false"
          },
          "sourceIdentity": "",
          "ec2RoleDelivery": "",
          "assumedRoot": ""
        },
        "identityProvider": "",
        "credentialId": ""
      },
      "eventTime": "2025-08-15T22:58:00Z",
      "eventSource": "aoss.amazonaws.com",
      "eventName": "Search",
      "awsRegion": "us-east-1",
      "sourceIPAddress": "AWS Internal",
      "userAgent": "python-requests/2.32.3",
      "requestParameters": {
        "pathPrefix": "/_search"
      },
      "responseElements": null,
      "requestID": "2cfee788-EXAM-PLE1-8617-4018cEXAMPLE",
      "eventID": "48d43617-EXAM-PLE1-9d9c-f7EXAMPLE",
      "readOnly": true,
      "resources": [
        {
          "type": "AWS::AOSS::Collection",
          "ARN": "arn:aws:aoss:us-east-1:111122223333:collection/aab9texampletu45xh77"
        }
      ],
      "eventType": "AwsApiCall",
      "managementEvent": false,
      "recipientAccountId": "111122223333",
      "eventCategory": "Data"
    }
  ]
}
```

## Memahami OpenSearch entri Acara Manajemen Tanpa Server
<a name="understanding-service-name-entries"></a>

Trail adalah konfigurasi yang memungkinkan pengiriman peristiwa sebagai file log ke bucket Amazon S3 yang Anda tentukan. CloudTrail file log berisi satu atau lebih entri log. 

Peristiwa menunjukkan satu permintaan dari sumber mana pun. Ini mencakup informasi tentang tindakan yang diminta, tanggal dan waktu tindakan, parameter permintaan, dan sebagainya. CloudTrail file log bukanlah jejak tumpukan yang diurutkan dari panggilan API publik, jadi file tersebut tidak muncul dalam urutan tertentu. 

Contoh berikut menampilkan entri CloudTrail log yang menunjukkan `CreateCollection` tindakan.

```
{
   "eventVersion":"1.08",
   "userIdentity":{
      "type":"AssumedRole",
      "principalId":"AIDACKCEVSQ6C2EXAMPLE",
      "arn":"arn:aws:iam::123456789012:user/test-user",
      "accountId":"123456789012",
      "accessKeyId":"access-key",
      "sessionContext":{
         "sessionIssuer":{
            "type":"Role",
            "principalId":"AIDACKCEVSQ6C2EXAMPLE",
            "arn":"arn:aws:iam::123456789012:role/Admin",
            "accountId":"123456789012",
            "userName":"Admin"
         },
         "webIdFederationData":{
            
         },
         "attributes":{
            "creationDate":"2022-04-08T14:11:34Z",
            "mfaAuthenticated":"false"
         }
      }
   },
   "eventTime":"2022-04-08T14:11:49Z",
   "eventSource":"aoss.amazonaws.com",
   "eventName":"CreateCollection",
   "awsRegion":"us-east-1",
   "sourceIPAddress":"AWS Internal",
   "userAgent":"aws-cli/2.1.30 Python/3.8.8 Linux/5.4.176-103.347.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/aoss.create-collection",
   "errorCode":"HttpFailureException",
   "errorMessage":"An unknown error occurred",
   "requestParameters":{
      "accountId":"123456789012",
      "name":"test-collection",
      "description":"A sample collection",
      "clientToken":"d3a227d2-a2a7-49a6-8fb2-e5c8303c0718"
   },
   "responseElements": null,
   "requestID":"12345678-1234-1234-1234-987654321098",
   "eventID":"12345678-1234-1234-1234-987654321098",
   "readOnly":false,
   "eventType":"AwsApiCall",
   "managementEvent":true,
   "recipientAccountId":"123456789012",
   "eventCategory":"Management",
   "tlsDetails":{
      "clientProvidedHostHeader":"user.aoss-sample.us-east-1.amazonaws.com"
   }
}
```

# Memantau peristiwa OpenSearch Tanpa Server menggunakan Amazon EventBridge
<a name="serverless-monitoring-events"></a>

 OpenSearch Layanan Amazon terintegrasi dengan Amazon EventBridge untuk memberi tahu Anda tentang peristiwa tertentu yang memengaruhi domain Anda. Acara dari AWS layanan dikirim ke EventBridge dalam waktu dekat. Acara yang sama juga dikirim ke [Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatchEvents.html), pendahulu Amazon EventBridge. Anda dapat menulis aturan untuk menunjukkan acara mana yang menarik bagi Anda, dan tindakan otomatis apa yang harus diambil ketika suatu acara cocok dengan aturan. Contoh tindakan yang dapat Anda aktifkan secara otomatis meliputi yang berikut:
+ Memanggil fungsi AWS Lambda 
+ Melakukan invokasi Amazon EC2 Run Command
+ Mengirimkan kejadian ke Amazon Kinesis Data Streams
+ Mengaktifkan mesin status AWS Step Functions
+ Memberi tahu topik Amazon SNS atau antrean Amazon SQS

Untuk informasi selengkapnya, lihat [Memulai Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-get-started.html) *di Panduan EventBridge Pengguna Amazon*.

## Menyiapkan notifikasi
<a name="monitoring-events-notifications"></a>

Anda dapat menggunakan [Pemberitahuan AWS Pengguna](https://docs.aws.amazon.com/notifications/latest/userguide/what-is-service.html) untuk menerima pemberitahuan saat peristiwa OpenSearch Tanpa Server terjadi. Peristiwa adalah indikator perubahan lingkungan OpenSearch Tanpa Server, seperti ketika Anda mencapai batas maksimum penggunaan OCU Anda. Amazon EventBridge menerima acara dan merutekan pemberitahuan ke Pusat Konsol Manajemen AWS Pemberitahuan dan saluran pengiriman yang Anda pilih. Anda akan menerima notifikasi saat ada sebuah peristiwa yang cocok dengan sebuah aturan yang Anda tentukan.

## OpenSearch Acara Compute Units (OCU)
<a name="monitoring-events-ocu"></a>

OpenSearch Tanpa server mengirimkan peristiwa ke EventBridge saat salah satu peristiwa terkait OCU berikut terjadi. 

### Penggunaan OCU mendekati batas maksimum
<a name="monitoring-events-ocu-approaching-max"></a>

OpenSearch Tanpa server mengirimkan acara ini ketika penggunaan OCU pencarian atau indeks Anda mencapai 75% dari batas kapasitas Anda. Penggunaan OCU Anda dihitung berdasarkan batas kapasitas yang dikonfigurasi dan konsumsi OCU Anda saat ini.

**Contoh**

Berikut ini adalah contoh peristiwa jenis ini (cari OCU):

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "OCU Utilization Approaching Max Limit",
  "source": "aws.aoss",
  "account": "123456789012",
  "time": "2016-11-01T13:12:22Z",
  "region": "us-east-1",
  "resources": ["arn:aws:es:us-east-1:123456789012:domain/test-domain"],
  "detail": {
    "eventTime" : 1678943345789,
    "description": "Your search OCU usage is at 75% and is approaching the configured maximum limit."
  }
}
```

Berikut ini adalah contoh peristiwa jenis ini (indeks OCU):

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "OCU Utilization Approaching Max Limit",
  "source": "aws.aoss",
  "account": "123456789012",
  "time": "2016-11-01T13:12:22Z",
  "region": "us-east-1",
  "resources": ["arn:aws:es:us-east-1:123456789012:domain/test-domain"],
  "detail": {
    "eventTime" : 1678943345789,
    "description": "Your indexing OCU usage is at 75% and is approaching the configured maximum limit."
  }
```

### Penggunaan OCU mencapai batas maksimum
<a name="monitoring-events-ocu-approaching-max"></a>

OpenSearch Tanpa server mengirimkan acara ini ketika penggunaan OCU pencarian atau indeks Anda mencapai 100% dari batas kapasitas Anda. Penggunaan OCU Anda dihitung berdasarkan batas kapasitas yang dikonfigurasi dan konsumsi OCU Anda saat ini.

**Contoh**

Berikut ini adalah contoh peristiwa jenis ini (cari OCU):

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "OCU Utilization Reached Max Limit",
  "source": "aws.aoss",
  "account": "123456789012",
  "time": "2016-11-01T13:12:22Z",
  "region": "us-east-1",
  "resources": ["arn:aws:es:us-east-1:123456789012:domain/test-domain"],
  "detail": {
    "eventTime" : 1678943345789,
    "description": "Your search OCU usage has reached the configured maximum limit."
  }
}
```

Berikut ini adalah contoh peristiwa jenis ini (indeks OCU):

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "OCU Utilization Reached Max Limit",
  "source": "aws.aoss",
  "account": "123456789012",
  "time": "2016-11-01T13:12:22Z",
  "region": "us-east-1",
  "resources": ["arn:aws:es:us-east-1:123456789012:domain/test-domain"],
  "detail": {
    "eventTime" : 1678943345789,
    "description": "Your indexing OCU usage has reached the configured maximum limit."
  }
}
```