# Kunci API

Gunakan kunci API untuk mengautentikasi permintaan API.

Stripe menggunakan kunci API untuk mengautentikasi permintaan dari integrasi Anda dan menentukan sumber daya Stripe mana yang dapat diaksesnya. Pilih jenis kunci yang sesuai dengan tempat kode Anda berjalan dan berikan kunci sisi server hanya izin yang dibutuhkan integrasi Anda.

Gunakan halaman [kunci API](https://dashboard.stripe.com/test/apikeys) di Dashboard untuk membuat, menampilkan, mengakhiri masa berlaku, dan memutar kunci. Panduan ini mencakup kunci yang digunakan dengan API Stripe. Untuk mempelajari tentang endpoint API v2, perilaku, dan pengujian, lihat [Gambaran Umum API v2](https://docs.stripe.com/api-v2-overview.md).

Jika permintaan tidak menyertakan kunci yang valid, Stripe mengembalikan [kesalahan permintaan tidak valid](https://docs.stripe.com/error-handling.md#invalid-request-errors). Jika permintaan menyertakan kunci yang sudah kedaluwarsa, Stripe mengembalikan [kesalahan autentikasi](https://docs.stripe.com/error-handling.md#authentication-errors). Gunakan [log permintaan Workbench](https://docs.stripe.com/workbench.md) untuk memeriksa permintaan API dan memecahkan masalah kesalahan.

> #### Jika Anda baru mengenal Stripe
> 
> - **Jaga keamanan bisnis Anda:** Baca [praktik terbaik](https://docs.stripe.com/keys-best-practices.md) kami dalam mengelola kunci API.
- **Membangun dan menguji**: Gunakan kunci sandbox (pengujian) Anda. Kunci sandbox dimulai dengan `pk_test_` untuk kunci yang dapat dipublikasikan, `rk_test_` untuk kunci yang dibatasi, dan `sk_test_` untuk kunci rahasia. Kunci tersebut memungkinkan Anda menguji tanpa memengaruhi data live.
- **Bila Anda siap untuk menerima pembayaran sungguhan**: Beralih ke kunci mode live Anda, yang dimulai dengan `pk_live_`, `rk_live_`, dan `sk_live_`. Lihat [Beralih ke mode live](https://docs.stripe.com/keys.md#switch-to-live-mode) untuk panduannya.
- **Mencari rahasia penandatanganan webhook**: Rahasia webhook berbeda dari kunci API. Anda dapat menemukannya di bagian [Webhook](https://dashboard.stripe.com/webhooks) pada Dashboard di bawah setiap endpoint webhook.

## Tipe kunci

Saat mendaftar akun Stripe, kami membuat tiga jenis kunci API untuk Anda:

| Tipe | Aman untuk diungkapkan | Deskripsi |
| --- | --- | --- |
| Kunci API yang dapat dipublikasikan `pk_...` | Ya | Kunci API untuk Stripe.js, Elements, dan SDK seluler. Kunci ini dapat mengidentifikasi Akun Anda dan membuat token atau PaymentMethods dari detail pembayaran, tetapi tidak dapat melakukan operasi sensitif seperti membuat charge atau membaca data Akun. Anda dapat menyertakannya dalam kode front-end atau aplikasi yang Anda distribusikan. |
| Kunci API yang dibatasi (RAK)`rk_...` | Tidak | Kunci API dengan izin yang Anda kontrol. Batasi kerusakan pada bisnis Anda yang dapat disebabkan oleh pelaku penipuan jika mereka mendapatkan kunci Anda. Buat RAK sebanyak yang Anda inginkan dan tetapkan ke berbagai bagian aplikasi Anda. Stripe Apps juga dapat menggunakan [autentikasi RAK](https://docs.stripe.com/stripe-apps/api-authentication/rak.md) untuk menghasilkan kunci berizin saat pengguna menginstal aplikasi. [Panduan ini](https://docs.stripe.com/keys/restricted-api-keys.md) menjelaskan cara mengonfigurasi dan menggunakan RAK. |
| Kunci API rahasia `sk_...` | Tidak | Kunci API yang memiliki izin tidak dibatasi pada semua API Stripe. Karena Anda tidak dapat membatasi izinnya, kami tidak merekomendasikan penggunaan kunci rahasia untuk contoh penggunaan baru, dan untuk integrasi yang sudah ada, kami merekomendasikan migrasi penggunaan kunci rahasia ke RAK. |
| Kunci API organisasi `sk_org_...` | Tidak | Kunci API yang berfungsi di tingkat organisasi. Kunci ini sama seperti kunci rahasia atau kunci terbatas di tingkat akun, tetapi beroperasi di tingkat [organisasi](https://docs.stripe.com/get-started/account/orgs.md) untuk mengelola beberapa akun Stripe sekaligus. [Panduan ini](https://docs.stripe.com/keys/organization-api-keys.md) menjelaskan cara mengonfigurasi dan menggunakan kunci API organisasi. |

Kami juga mendukung [kunci API terkelola](https://docs.stripe.com/keys/managed-api-keys.md) yang diterbitkan oleh platform hosting tertentu. Kunci terkelola ini merupakan kunci API rahasia yang dikirimkan oleh platform hosting langsung ke aplikasi hosting Anda. Anda tidak perlu mengelola kunci terkelola ini secara langsung; penyedia layanan hosting yang akan menerbitkan dan memperbarui kunci terkelola secara berkala untuk Anda.

> #### Rahasia penandatanganan webhook
> 
> Rahasia penandatanganan webhook bukanlah kunci API—rahasia per-webhook yang digunakan penerima webhook Anda untuk mengautentikasi bahwa webhook sebenarnya berasal dari Stripe. Anda dapat menemukan rahasia penandatanganan untuk setiap endpoint webhook di [Webhook](https://dashboard.stripe.com/webhooks) bagian Dashboard.

Anda bertanggung jawab untuk mengelola kunci API dengan aman. Baca panduan kami tentang [praktik terbaik untuk melindungi kunci API](https://docs.stripe.com/keys-best-practices.md).

### Sandbox versus mode live

Semua permintaan API Stripe berlangsung baik dalam *sandbox* (A sandbox is an isolated test environment that allows you to test Stripe functionality in your account without affecting your live integration. Use sandboxes to safely experiment with new features and changes) maupun *mode langsung* (Use this mode when you’re ready to launch your app. Card networks or payment providers process payments). Anda dapat menggunakan sandbox untuk menguji integrasi Anda dan mengakses data pengujian, serta mode langsung untuk mengakses data akun yang sebenarnya. Setiap mode memiliki kumpulan kunci API tersendiri, dan objek dalam satu mode tidak dapat diakses oleh mode lainnya. Sebagai contoh, [objek product](https://docs.stripe.com/api/products/object.md) di sandbox tidak dapat menjadi bagian dari pembayaran mode langsung.

| Tipe | Waktu menggunakan | Objek | Cara menggunakan | Pertimbangan |
| --- | --- | --- | --- | --- |
| Sandbox | Gunakan sandbox, dan kunci API percobaan yang terkait, saat Anda membuat integrasi. Di sandbox, jaringan kartu dan penyedia pembayaran tidak memproses pembayaran. | Panggilan API mengembalikan objek simulasi. Misalnya, Anda dapat mengambil dan menggunakan objek pengujian [Pelanggan](https://docs.stripe.com/api/customers/object.md), [PaymentIntent](https://docs.stripe.com/api/payment_intents/object.md), [Pengembalian Dana](https://docs.stripe.com/api/refunds/object.md), dan [Langganan](https://docs.stripe.com/api/subscriptions/object.md). | Gunakan [kartu kredit dan akun percobaan](https://docs.stripe.com/testing.md#cards). Anda tidak dapat menerima metode pembayaran aktual atau menggunakan akun aktual. | [Identitas](https://docs.stripe.com/identity.md) tidak melakukan pemeriksaan verifikasi. Selain itu, [objek akun](https://docs.stripe.com/api/accounts/object.md) Connect tidak mengembalikan bidang sensitif. |
| Mode live | Gunakan mode live, dan kunci API live yang terkait, saat Anda siap meluncurkan integrasi dan menerima uang aktual. Dalam mode live, jaringan kartu dan penyedia pembayaran akan memproses pembayaran. | Panggilan API mengembalikan objek nyata. Misalnya, Anda dapat mengambil dan menggunakan objek nyata [Pelanggan](https://docs.stripe.com/api/customers/object.md), [PaymentIntent](https://docs.stripe.com/api/payment_intents/object.md), [Pengembalian Dana](https://docs.stripe.com/api/refunds/object.md), dan [Langganan](https://docs.stripe.com/api/subscriptions/object.md). | Terima kartu kredit aktual dan gunakan akun pelanggan. Anda dapat menerima otorisasi pembayaran, charge, dan penarikan aktual untuk kartu kredit dan akun. | Sengketa memiliki alur yang lebih bernuansa dan [proses percobaan](https://docs.stripe.com/testing.md#disputes) yang lebih sederhana. Selain itu, beberapa [metode pembayaran](https://docs.stripe.com/payments/payment-methods.md) memiliki alur yang lebih bernuansa dan memerlukan lebih banyak langkah. |

## Lindungi kunci Anda

Hanya kunci yang dapat dipublikasikan yang aman untuk diekspos di luar backend aplikasi Anda. Anda bertanggung jawab untuk melindungi kunci API Stripe lainnya, termasuk kunci API yang dibatasi. Berikut ini adalah beberapa cara yang dapat Anda lakukan untuk melindungi kunci Anda:

- Simpan kunci sensitif di brankas rahasia yang disediakan oleh platform hosting Anda. [Postingan blog ini](https://stripe.dev/blog/securing-stripe-api-keys-aws-automatic-rotation) memberikan contohnya. Jika Anda tidak dapat menggunakan brankas rahasia, gunakan variabel lingkungan untuk menyediakan kunci ke aplikasi backend Anda.
- Jangan menaruh kunci dalam kode sumber atau file konfigurasi yang disimpan dalam kontrol versi.
- Konfigurasikan [kebijakan akses](https://docs.stripe.com/keys.md#access-policies) agar kunci hanya dapat digunakan dari server yang Anda kenal.
- [Putar tombol](https://docs.stripe.com/keys.md#rolling-keys) saat anggota tim dengan akses ke kunci meninggalkan organisasi Anda.
- Jangan membagikan kunci melalui email, obrolan, atau saluran lain yang tidak terenkripsi.

Untuk panduan lengkapnya, baca [praktik terbaik dalam mengelola kunci API rahasia](https://docs.stripe.com/keys-best-practices.md). Kami juga menyediakan [pustaka keterampilan](https://github.com/stripe/ai/tree/main/skills) untuk membantu agen AI mengikuti praktik terbaik tersebut.

## Mengelola kunci API Anda

Bagian berikut menjelaskan cara membuat dan mengelola kunci di halaman Kunci API.

#### Buat kunci API yang dibatasi

Gunakan [kunci API yang dibatasi](https://docs.stripe.com/keys/restricted-api-keys.md) (RAK) untuk sebagian besar kasus penggunaan. Anda dapat menggunakan RAK untuk menetapkan izin yang tepat yang diperlukan integrasi Anda, yang dapat membantu mengurangi kerusakan yang dapat ditimbulkan oleh pelaku penipuan pada bisnis Anda jika mereka mendapatkan kunci Anda.

- Ikuti petunjuk pada [Kunci API Terbatas](https://docs.stripe.com/keys/restricted-api-keys.md) untuk membuat RAK, mengonfigurasi izin aksesnya, dan bermigrasi dari kunci rahasia.

#### Buat kunci API rahasia

Buat kunci API rahasia yang tidak dibatasi hanya saat integrasi Anda memerlukan akses ke semua API dan sumber daya Stripe tanpa batasan. Jika pelaku penipuan mendapatkan kunci rahasia Anda, mereka dapat merugikan bisnis Anda. Sebaliknya, kami menyarankan untuk menggunakan RAK.

1. Di halaman [Kunci API](https://dashboard.stripe.com/test/apikeys), klik **Buat kunci rahasia**.
2. Pada dialog, masukkan kode verifikasi yang kami kirimkan melalui email atau pesan teks. Jika dialog tidak berlanjut secara otomatis, klik **Lanjutkan**.
3. Masukkan nama di bidang **Nama kunci**, kemudian klik **Buat**.
4. Klik nilai kunci untuk menyalinnya.
5. Simpan nilai kunci. Anda tidak dapat mengambilnya nanti.
6. Di bidang **Tambahkan catatan**, masukkan lokasi tempat Anda menyimpan kunci dan klik **Selesai**.

### Perlihatkan kunci API

Saat Anda membuat kunci rahasia di mode live, Stripe menampilkannya sekali sebelum Anda menyimpannya. Salin kunci sebelum Anda menyimpannya karena Anda tidak dapat menampilkannya di lain waktu.

Di mode live, Anda hanya dapat menampilkan kunci API yang dibuat Stripe untuk Anda, seperti kunci rahasia default atau kunci yang dihasilkan oleh rotasi terjadwal. Di mode sandbox, Anda selalu dapat melihat semua kunci API Anda, termasuk kunci rahasia dan yang dibatasi.

> Simpan kunci sensitif di tempat yang aman agar tidak hilang, seperti brankas rahasia yang disediakan oleh platform Anda. Jangan menaruh kunci dalam kode aplikasi Anda.

Kunci API yang dapat dipublikasikan tidak bersifat sensitif, sehingga kami menampilkannya secara default dan Anda tidak perlu melakukan apa pun untuk menampilkannya.

Kami tidak dapat memulihkan kunci yang terlupakan atau yang aksesnya hilang. Jika Anda kehilangan suatu kunci, ganti atau hapus kunci tersebut dan buat yang baru.

#### Ungkap RAK dalam mode live

Anda hanya dapat menampilkan RAK mode langsung yang kami buat untuk Anda. Jika Anda membuat RAK sendiri, Anda tidak dapat menampilkannya kembali setelah pertama kali melihatnya.

1. Di halaman [Kunci API](https://dashboard.stripe.com/apikeys) dalam mode live, pada daftar **Kunci yang dibatasi**, klik **Tampilkan kunci live** untuk kunci yang ingin Anda tampilkan.
2. Klik nilai kunci untuk menyalinnya.
3. Simpan nilai kunci di [secrets vault](https://docs.stripe.com/keys-best-practices.md#use-a-secrets-vault) platform Anda. Jika platform Anda tidak menyediakan, gunakan variabel lingkungan.
4. Klik **Sembunyikan kunci live**.

#### Ungkap kunci API rahasia dalam mode live

Anda hanya dapat menampilkan kunci rahasia mode live yang kami buat untuk Anda. Jika Anda membuat sendiri kunci rahasia tersebut, Anda tidak dapat menampilkannya kembali setelah pertama kali melihatnya.

1. Di halaman [Kunci API](https://dashboard.stripe.com/apikeys) dalam mode live, pada daftar **Kunci standar**, klik **Tampilkan kunci live** untuk kunci yang ingin Anda tampilkan.
2. Klik nilai kunci untuk menyalinnya.
3. Simpan nilai kunci di [secrets vault](https://docs.stripe.com/keys-best-practices.md#use-a-secrets-vault) platform Anda. Jika platform Anda tidak menyediakan, gunakan variabel lingkungan.
4. Klik **Sembunyikan kunci live**.
5. Klik menu perluasan (⋯), kemudian pilih **Edit kunci** untuk kunci yang ingin Anda tambahkan catatan.
6. Di bidang **Catatan**, masukkan lokasi tempat Anda menyimpan kunci, kemudian klik **Simpan**.

### Batasi kunci API ke alamat IP tertentu

[Kebijakan akses](https://docs.stripe.com/keys.md#access-policies) telah menggantikan pembatasan alamat IP. Gunakan kebijakan, bukan pembatasan.

### Mengubah nama atau catatan kunci API

1. Di halaman [Kunci API](https://dashboard.stripe.com/test/apikeys), klik menu tiga titik (⋯) untuk kunci yang ingin Anda ubah.
2. Pilih **Edit kunci**.
3. Lakukan hal berikut ini:
   - Untuk mengubah nama, masukkan nama baru di bidang **Nama kunci**.
   - Untuk mengubah teks catatan, masukkan teks catatan baru di bidang **Catatan**.
4. Klik **Simpan**.

### Kedaluwarsa kunci API

Bila masa berlaku kunci API rahasia atau kunci API dibatasi Anda telah habis, Anda harus membuat kunci baru dan memperbarui setiap kode yang menggunakan kunci kedaluwarsa tersebut. Kode yang menggunakan kunci kedaluwarsa tidak dapat lagi melakukan panggilan API.

> Anda tidak dapat mengakhiri kedaluwarsa kunci yang dapat dipublikasikan.

1. Di halaman [Kunci API](https://dashboard.stripe.com/test/apikeys), pada daftar **Kunci yang dibatasi** atau **Kunci standar**, klik menu tiga titik (⋯) untuk kunci yang ingin Anda buat kedaluwarsa.
2. Pilih **Kunci kedaluwarsa**.
3. Dalam dialog, klik **Tombol kedaluwarsa**. Jika Anda tidak ingin lagi kedaluwarsa kunci, klik **Batal**.

### Rotasikan kunci API

Rotasikan kunci API akan mencabutnya dan menghasilkan kunci pengganti yang siap digunakan segera. Anda juga dapat menjadwalkan kunci API untuk berotasi setelah waktu tertentu. Nama kunci pengganti adalah sebagai berikut:

- Nama kunci pengganti yang dapat dipublikasikan selalu berupa `Publishable key`.

- Nama kunci rahasia penggantian selalu berupa kunci `Secret key`.
- Nama kunci dibatasi penggantian sama dengan kunci yang dirotasi.

Anda dapat mengubah nama kunci API rahasia atau dibatasi dengan mengedit kunci.

Rotasikan kunci API dalam skenario seperti:

- Jika Anda kehilangan kunci API yang dibatasi atau rahasia dalam mode live dan tidak dapat memulihkannya dari Dashboard.
- Jika kunci API yang dibatasi atau rahasia disusupi, Anda harus mencabutnya untuk memblokir permintaan API berpotensi berbahaya yang mungkin menggunakan kunci tersebut.
- Jika anggota tim dengan akses ke kunci meninggalkan organisasi Anda atau mengubah peran.
- Jika kebijakan Anda mengharuskan rotasi kunci pada interval tertentu.

#### Putar dengan aman untuk menghindari downtime

Untuk menghindari downtime selama pemutaran kunci:

1. **Gunakan masa tenggang**: Saat Anda memutar kunci di Dashboard, kunci lama dan baru akan berfungsi hingga 7 hari. Hal ini memungkinkan Anda bermigrasi secara bertahap tanpa downtime. Jika Anda membutuhkan waktu lebih dari 7 hari, buat kunci baru secara manual, lakukan migrasi ke kunci tersebut, lalu kedaluwarsakan kunci lama setelah Anda selesai.
2. **Luncurkan secara bertahap**: Jika memungkinkan, gunakan kunci baru dari sebagian kecil server atau layanan Anda terlebih dahulu, dan pantau log server Anda dari adanya kesalahan sebelum menyebarkan lebih lanjut.
3. **Pantau sebelum mencabut**: Sebelum kunci lama kedaluwarsa, [periksa log permintaannya](https://docs.stripe.com/keys.md#view-request-logs), dan kedaluwarsakan hanya setelah volume permintaannya berada di angka nol selama beberapa jam atau hari.

#### Rotasi kunci API di Dashboard

1. Di halaman [Kunci API](https://dashboard.stripe.com/test/apikeys), klik menu tiga titik (⋯) untuk kunci yang ingin Anda rotasi.
2. Pilih **Rotasikan kunci**.
3. Pilih tanggal kedaluwarsa dari menu dropdown **Kedaluwarsa**. Jika Anda memilih **Sekarang**, kunci lama akan dihapus. Jika Anda menentukan waktu, sisa waktu hingga kunci kedaluwarsa ditampilkan di bawah nama kunci.
4. Klik **Rotasikan kunci API**.
5. Klik nilai kunci untuk menyalinnya.
6. Simpan nilai kunci. Anda tidak dapat mengambilnya nanti.
7. Di bidang **Catatan**, masukkan lokasi tempat Anda menyimpan kunci, kemudian klik **Simpan** atau **Selesai**.

### Memulihkan akses kunci API

Kunci API dapat dibatasi aksesnya jika tidak digunakan untuk membuat transfer, payout, atau memperbarui tujuan payout selama lebih dari 180 hari. Kunci dengan akses terbatas tidak dapat digunakan untuk membuat payout dan transfer maupun untuk membuat tujuan payout. Anda dapat memulihkan akses agar kunci tersebut dapat digunakan kembali secara normal atau untuk melakukan tindakan yang sebelumnya diblokir.

#### Pulihkan akses untuk kunci API

1. Di halaman [Kunci API](https://dashboard.stripe.com/test/apikeys), klik menu tiga titik (⋯) untuk kunci yang ingin Anda pulihkan.
2. Pilih **Pulihkan akses**.
3. Klik **Pulihkan**.

## Melihat log permintaan API untuk suatu kunci

Untuk [membuka log permintaan API](https://docs.stripe.com/workbench/overview.md#request-logs), klik menu tiga titik (⋯) pada kunci apa pun, lalu pilih **Lihat log permintaan**. Membuka log akan mengarahkan Anda ke Workbench di Dashboard Stripe.

## Beralih ke mode live

Saat Anda siap menerima pembayaran sungguhan, gunakan kunci API mode live, bukan kunci sandbox (uji). Pada halaman [Kunci API](https://dashboard.stripe.com/apikeys), alihkan dari **mode sandbox** ke **mode live**. Halaman tersebut sekarang akan menampilkan kunci API mode live Anda.

> #### Daftar periksa jadikan live lengkap
> 
> Mengganti kunci API hanyalah salah satu langkah. Tinjau seluruh [daftar periksa go-live](https://docs.stripe.com/get-started/checklist/go-live.md) untuk memastikan integrasi Anda siap digunakan di lingkungan produksi.

### Kunci yang dapat dipublikasikan (sisi klien)

Salin **kunci yang dapat dipublikasikan untuk mode live** Anda (diawali dengan `pk_live_`) dan ganti kunci `pk_test_` dalam kode sisi klien Anda. Kunci ini aman untuk disematkan di dalam kode atau aplikasi Anda.

### Kunci API terbatas atau rahasia (sisi server)

Kunci API sisi server bersifat sensitif, jadi tinjau [praktik terbaik kami untuk mengelola kunci API rahasia](https://docs.stripe.com/keys-best-practices.md). Kami menyarankan untuk membuat [kunci API terbatas](https://docs.stripe.com/keys/restricted-api-keys.md) bagi kode sisi server Anda guna membatasi dampak terhadap bisnis Anda apabila suatu saat kunci tersebut terekspos atau disusupi.

1. Sebelum mulai menggunakan kunci mode live di aplikasi backend Anda, hapus semua API key yang di-hardcode dari kode Anda. Sebagai gantinya, gunakan [secrets vault](https://docs.stripe.com/keys-best-practices.md#use-a-secrets-vault) untuk menyediakan kunci sandbox, dan konfirmasi bahwa aplikasi Anda masih berfungsi. Jika platform Anda tidak menyediakan secrets vault, Anda dapat menggunakan variabel lingkungan.
2. [Tampilkan](https://docs.stripe.com/keys.md#reveal-an-api-key) dan salin **kunci mode live** Anda (yang dimulai dengan `rk_live_` atau `sk_live_`). Simpan nilai kunci dengan aman di lingkungan server Anda.
3. Konfigurasikan lingkungan server Anda untuk memberikan kunci mode live ke aplikasi Anda, bukan lagi kunci sandbox.

#### Kunci penandatanganan webhook (sisi server)

Jika Anda menggunakan webhook, perbarui URL setiap endpoint webhook dan salin **rahasia penandatanganan** baru dari [Webhook](https://dashboard.stripe.com/webhooks) bagian Dashboard.

## Kebijakan akses

Anda dapat membatasi akses ke suatu kunci dengan melampirkan kebijakan akses padanya. Jika seseorang mencoba melakukan permintaan menggunakan kunci yang tidak dapat mereka akses, Stripe akan memblokir permintaan tersebut dan memberi tahu Anda.

Stripe merekomendasikan untuk mengonfigurasi kebijakan akses pada semua kunci mode live. Hal tersebut akan memberi tahu Anda jika ada akses yang tidak sah, sehingga Anda dapat mengganti kunci sesuai kebutuhan.

Anda dapat mengelola akses dengan menetapkan kebijakan yang berbeda untuk kunci yang berbeda. Sebagai contoh, Anda dapat membedakan antara lingkungan staging dan produksi dengan menetapkan kebijakan yang berbeda untuk masing-masing kunci mereka.

### Jenis kebijakan akses

Stripe mendukung jenis kebijakan akses berikut:

- **Alamat IP**: Membatasi akses ke satu atau beberapa alamat IPv4 tertentu atau rentang CIDR. Gunakan pendekatan ini jika server Anda memiliki alamat IP tetap.
- **Lanjutan**: Membatasi akses berdasarkan Nomor Sistem Otonom (ASN), negara, dan kategori ancaman umum. Jika Anda melakukan penskalaan dinamis, Anda dapat memberikan akses kepada penyedia cloud Anda menggunakan ASN dan negara.

Kebijakan akses lanjutan dapat menggunakan kombinasi berikut dari aturan:

- **ASN yang diizinkan**: Permintaan dari ASN yang ditentukan akan diizinkan; semua yang lain diblokir.
- **Negara**: Permintaan dari negara yang ditentukan akan diizinkan; semua yang lain diblokir.
- **Sumber**: Permintaan dari sumber yang dipilih akan diblokir. Anda dapat memilih sumber berikut:
  - **VPN anonim**: Layanan VPN pihak ketiga yang dijual untuk privasi dan anonimitas (tidak termasuk VPN perusahaan). Pertimbangkan untuk memblokir ini jika Anda tidak menggunakan VPN untuk mengakses API Stripe.
  - **Proksi publik**: Server proksi terbuka dari daftar publik. Pertimbangkan untuk memblokir ini jika Anda tidak menggunakan proksi publik untuk mengakses API Stripe.
  - **Proksi residensial**: Proksi yang terkait dengan penyedia layanan internet residensial. Pertimbangkan untuk memblokir ini jika Anda tidak menggunakan penyedia layanan internet residensial untuk mengakses API Stripe.
  - **Node keluar Tor**: Lalu lintas dari jaringan Tor. Pertimbangkan untuk memblokir ini jika Anda tidak mengakses API Stripe melalui Tor.

Memilih beberapa aturan akan menggabungkannya menggunakan logika AND. Sebagai contoh, jika Anda mengizinkan ASN 16509 (Amazon), mengizinkan AS, dan memblokir node keluar Tor, maka kebijakan tersebut hanya mengizinkan permintaan dari IP AWS di Amerika Serikat yang tidak diketahui sebagai node keluar Tor. Semua permintaan lainnya akan diblokir.

### Membuat kebijakan akses

Untuk membuat kebijakan akses, buka halaman [Kebijakan akses](https://dashboard.stripe.com/api-access-policies) di Dashboard Anda dan ikuti langkah-langkah berikut:

1. Klik **+ Buat kebijakan**.
2. Masukkan nama (misalnya, “Server produksi”) dan deskripsi opsional.
3. Pilih **Alamat IP** atau **Lanjutan**.
4. Bergantung pada jenis yang dipilih, konfigurasi kebijakan:
   - **Alamat IP:** Masukkan satu atau beberapa alamat IPv4 publik yang valid atau rentang CIDR. Sebagai contoh, `192.0.2.0/24` mencakup rentang 192.0.2.0–192.0.2.255.
   - **Lanjutan:** Tentukan kombinasi apa pun dari ASN yang diizinkan, negara yang diizinkan, dan sumber yang diblokir, sebagaimana dijelaskan dalam [Jenis kebijakan akses](https://docs.stripe.com/keys.md#access-policy-types).
5. Klik **Berikutnya**.
6. Tinjau detail kebijakan, lalu klik **Buat kebijakan**.
7. Jika diminta untuk melakukan autentikasi, ikuti petunjuk pada layar.

Jika pembuatan berhasil, kebijakan baru akan muncul dalam daftar.

### Menerapkan atau menghapus kebijakan akses

Untuk menerapkan kebijakan akses ke kunci API, buka halaman [Kunci API](https://dashboard.stripe.com/apikeys) di Dashboard Anda dan ikuti langkah-langkah berikut:

1. Dalam daftar **Kunci standar** atau **Kunci yang dibatasi**, cari kunci yang ingin Anda perbarui lalu buka menu opsi kunci tersebut (⋯).
2. Pilih **Kelola kebijakan akses**.
3. Pada menu tarik turun **Kebijakan akses**, pilih kebijakan yang Anda inginkan.
4. Tinjau detail kebijakan yang dipilih, lalu klik **Simpan**.
5. Jika diminta untuk melakukan autentikasi, ikuti petunjuk pada layar.

Untuk menghapus kebijakan akses dari suatu kunci, buka halaman [Kunci API](https://dashboard.stripe.com/apikeys) di Dashboard Anda dan ikuti langkah-langkah berikut:

1. Dalam daftar **Kunci standar** atau **Kunci yang dibatasi**, cari kunci yang ingin Anda perbarui lalu buka menu opsi kunci tersebut (⋯).
2. Pilih **Kelola kebijakan akses**.
3. Pada menu tarik turun **Kebijakan akses**, pilih **Tidak ada**.
4. Klik **Simpan**.

### Memperbarui kebijakan akses

Untuk membuat perubahan pada kebijakan akses, buka halaman [Kebijakan akses](https://dashboard.stripe.com/api-access-policies) di Dashboard Anda dan ikuti langkah-langkah berikut:

1. Temukan kebijakan yang ingin Anda ubah, lalu buka menu tambahan (⋯).
2. Pilih **Edit kebijakan**.
3. Perbarui opsi kebijakan sebagaimana dijelaskan dalam [Membuat kebijakan akses](https://docs.stripe.com/keys.md#create-an-access-policy), lalu klik **Berikutnya**.
4. Tinjau detail kebijakan, lalu klik **Simpan**.
5. Jika diminta untuk melakukan autentikasi, ikuti petunjuk pada layar.

Saat Anda memperbarui kebijakan akses, perubahan akan langsung diterapkan ke semua kunci API yang ditetapkan pada kebijakan tersebut.

### Menghapus kebijakan akses

Untuk menghapus kebijakan akses, buka halaman [Kebijakan akses](https://dashboard.stripe.com/api-access-policies) di Dashboard Anda dan ikuti langkah-langkah berikut:

1. Temukan kebijakan yang ingin Anda hapus lalu buka menu tambahan (⋯).
2. Pilih **Hapus kebijakan**.
3. Tinjau dialog konfirmasi untuk memahami dampaknya, lalu klik **Hapus kebijakan**.

Menghapus kebijakan akses akan segera menghapusnya dari semua kunci API yang sebelumnya menerapkannya. Kunci tersebut akan mengizinkan permintaan dari sumber mana pun sampai Anda menerapkan kebijakan lain pada kunci tersebut.

## See also

- [Praktik terbaik untuk mengelola kunci API rahasia](https://docs.stripe.com/keys-best-practices.md)
- [Melindungi dari kunci API yang disusupi](https://support.stripe.com/questions/protecting-against-compromised-api-keys)
- [Mengapa kunci API saya memiliki akses terbatas](https://support.stripe.com/questions/why-does-my-api-key-have-limited-access)
