SpyBara
Go Premium

Documentation 2026-10-06 23:59 UTC to 2026-10-07 03:58 UTC

5 files changed +16 −10. View all changes and history on the product overview
2026
Wed 7 04:58 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

73| - | - |73| - | - |

74| Claude Code v2.1.195 atau lebih baru | Subperintah `claude gateway` dan alur sign-in gateway dikirim di v2.1.195. Build publik sebelumnya tidak menyertakannya. Baik mesin yang menjalankan server gateway maupun mesin setiap pengembang harus pada v2.1.195 atau lebih baru; jalankan `claude update` untuk mendapatkan rilis terbaru. Upstream [Claude Platform on AWS](/docs/id/claude-apps-gateway-config#claude-platform-on-aws) memerlukan Claude Code v2.1.198 atau lebih baru di server gateway. |74| Claude Code v2.1.195 atau lebih baru | Subperintah `claude gateway` dan alur sign-in gateway dikirim di v2.1.195. Build publik sebelumnya tidak menyertakannya. Baik mesin yang menjalankan server gateway maupun mesin setiap pengembang harus pada v2.1.195 atau lebih baru; jalankan `claude update` untuk mendapatkan rilis terbaru. Upstream [Claude Platform on AWS](/docs/id/claude-apps-gateway-config#claude-platform-on-aws) memerlukan Claude Code v2.1.198 atau lebih baru di server gateway. |

75| Penyedia identitas OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, atau Dex, atau IdP yang sesuai dengan OIDC lainnya seperti PingFederate. Gateway menjalankan penemuan OIDC standar dan alur kode otorisasi terhadapnya. SAML dan LDAP tidak didukung. |75| Penyedia identitas OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, atau Dex, atau IdP yang sesuai dengan OIDC lainnya seperti PingFederate. Gateway menjalankan penemuan OIDC standar dan alur kode otorisasi terhadapnya. SAML dan LDAP tidak didukung. |

76| PostgreSQL 14 atau lebih baru | Mendukung alur sign-in perangkat, di mana callback browser menulis dan CLI polling membaca, ditambah penghitung batas laju. Postgres yang dikelola apa pun berfungsi, termasuk tingkat terkecil. Tanpa batas pengeluaran yang dikonfigurasi, gateway menyimpan beberapa KB status auth berumur pendek; dengan [batas pengeluaran](/docs/id/claude-apps-gateway-spend-limits), ia juga menyimpan tabel pengeluaran, audit, dan identitas yang tahan lama yang harus dicadangkan. TLS melalui `?sslmode=require` direkomendasikan. |76| PostgreSQL 11 atau lebih baru | Mendukung alur sign-in perangkat dan penghitung rate limit. Layanan PostgreSQL terkelola berfungsi, termasuk tingkat terkecil; lihat [database mana yang didukung](/docs/id/claude-apps-gateway-deploy#postgres). Dengan [batas pengeluaran](/docs/id/claude-apps-gateway-spend-limits), ia juga menyimpan tabel pengeluaran, audit, dan identitas yang tahan lama yang harus dicadangkan. TLS melalui `?sslmode=require` direkomendasikan. PostgreSQL 11, 12, dan 13 memerlukan Claude Code v2.1.290 atau lebih baru di server gateway. Proyek PostgreSQL tidak lagi memelihara versi tersebut, jadi gunakan versi yang lebih baru jika memungkinkan. |

77| Model upstream | Kredensial Amazon Bedrock, kredensial Claude Platform on AWS, kredensial Google Cloud, sumber daya Microsoft Foundry, atau kunci API Anthropic. Beberapa upstream didukung dengan failover. |77| Model upstream | Kredensial Amazon Bedrock, kredensial Claude Platform on AWS, kredensial Google Cloud, sumber daya Microsoft Foundry, atau kunci API Anthropic. Beberapa upstream didukung dengan failover. |

78| HTTPS | Gateway harus dapat dijangkau melalui `https://` dari laptop pengembang dan dari browser apa pun yang digunakan untuk sign-in; gateway melayani halaman verifikasi perangkat pada pendengar yang sama. Berikan sertifikat TLS melalui `listen.tls` atau jalankan di balik ingress yang menghentikan TLS, dan atur `listen.public_url` ke asal eksternal dalam kedua kasus. Asal `http://` biasa hanya diterima ketika host gateway adalah loopback: `localhost`, `127.0.0.1`, atau `::1`. |78| HTTPS | Gateway harus dapat dijangkau melalui `https://` dari laptop pengembang dan dari browser apa pun yang digunakan untuk sign-in; gateway melayani halaman verifikasi perangkat pada pendengar yang sama. Berikan sertifikat TLS melalui `listen.tls` atau jalankan di balik ingress yang menghentikan TLS, dan atur `listen.public_url` ke asal eksternal dalam kedua kasus. Asal `http://` biasa hanya diterima ketika host gateway adalah loopback: `localhost`, `127.0.0.1`, atau `::1`. |

79| Alamat jaringan pribadi | Di `/login`, Claude Code memerlukan nama host atau alamat IP gateway untuk diselesaikan hanya ke alamat pribadi: RFC 1918, link-local, CGNAT `100.64.0.0/10`, IPv6 ULA `fc00::/7`, atau loopback. Untuk gateway yang Anda hosting, alamat publik apa pun di luar blok yang Anda deklarasikan ditolak; lihat [model ancaman](/docs/id/claude-apps-gateway-deploy#threat-model-summary) dalam panduan penyebaran. Jika mesin pengembang merutekan HTTPS melalui proxy perusahaan, sign-in juga memerlukan host proxy untuk diselesaikan ke alamat pribadi; jika tidak, tambahkan host gateway ke `NO_PROXY` sehingga CLI terhubung langsung. Jika jaringan internal Anda bernomor dari ruang IPv4 publik yang dimiliki organisasi Anda, [deklarasikan blok-blok tersebut](#allow-a-gateway-on-public-address-space-you-own) sehingga `/login` menerima gateway di sana. |79| Alamat jaringan pribadi | Di `/login`, Claude Code memerlukan nama host atau alamat IP gateway untuk diselesaikan hanya ke alamat pribadi: RFC 1918, link-local, CGNAT `100.64.0.0/10`, IPv6 ULA `fc00::/7`, atau loopback. Untuk gateway yang Anda hosting, alamat publik apa pun di luar blok yang Anda deklarasikan ditolak; lihat [model ancaman](/docs/id/claude-apps-gateway-deploy#threat-model-summary) dalam panduan penyebaran. Jika mesin pengembang merutekan HTTPS melalui proxy perusahaan, sign-in juga memerlukan host proxy untuk diselesaikan ke alamat pribadi; jika tidak, tambahkan host gateway ke `NO_PROXY` sehingga CLI terhubung langsung. Jika jaringan internal Anda bernomor dari ruang IPv4 publik yang dimiliki organisasi Anda, [deklarasikan blok-blok tersebut](#allow-a-gateway-on-public-address-space-you-own) sehingga `/login` menerima gateway di sana. |


89 </Step>89 </Step>

90 90 

91 <Step title="Sediakan database PostgreSQL">91 <Step title="Sediakan database PostgreSQL">

92 Postgres 14 atau lebih baru apa pun berfungsi, termasuk tingkat terkelola terkecil. Gateway menjalankan migrasi skema sendiri saat boot, jadi peran database memerlukan hak untuk membuat dan mengubah tabel; lihat [`store`](/docs/id/claude-apps-gateway-config#store).92 Gunakan PostgreSQL 11 atau lebih baru. Tingkat terkelola terkecil sudah cukup. Gateway menjalankan migrasi skema sendiri saat boot, jadi peran database memerlukan hak untuk membuat dan mengubah tabel; lihat [`store`](/docs/id/claude-apps-gateway-config#store).

93 </Step>93 </Step>

94 94 

95 <Step title="Tulis gateway.yaml">95 <Step title="Tulis gateway.yaml">

Details

158Gateway membaca key dan sertifikat sekali saat boot, jadi file yang berubah baru berlaku setelah restart. Lakukan rotasi dengan urutan ini agar tidak ada permintaan token yang menyajikan sertifikat yang tidak dimiliki IdP:158Gateway membaca key dan sertifikat sekali saat boot, jadi file yang berubah baru berlaku setelah restart. Lakukan rotasi dengan urutan ini agar tidak ada permintaan token yang menyajikan sertifikat yang tidak dimiliki IdP:

159 159 

1601. Unggah sertifikat baru ke IdP di samping sertifikat lama.1601. Unggah sertifikat baru ke IdP di samping sertifikat lama.

1612. Ganti file key dan sertifikat yang dimuat oleh `gateway.yaml`, lalu restart gateway.1612. Ganti file key dan sertifikat yang dimuat oleh `gateway.yaml`, lalu restart gateway. Jika Anda menjalankan beberapa replica, [rolling restart](/docs/id/claude-apps-gateway-deploy#upgrades) dapat digunakan, karena IdP memiliki kedua sertifikat sampai Anda menghapus sertifikat lama.

1623. Hapus sertifikat lama dari IdP.1623. Setelah setiap replica di-restart, hapus sertifikat lama dari IdP.

163 163 

164<h4 id="idp-requests-through-a-forward-proxy">164<h4 id="idp-requests-through-a-forward-proxy">

165 IdP requests through a forward proxy165 IdP requests through a forward proxy


227 227 

228| Field | Diperlukan | Deskripsi |228| Field | Diperlukan | Deskripsi |

229| - | - | - |229| - | - | - |

230| `postgres_url` | Ya | `postgres://` atau `postgresql://` URL. Diperlukan: device-grant rendezvous, di mana browser callback menulis dan polling CLI membaca, memerlukan cross-replica state. Gateway menjalankan schema migrations-nya sendiri saat boot dan pada upgrade, jadi role memerlukan rights untuk membuat dan mengubah tables pada target schema. Lihat [Upgrades](/docs/id/claude-apps-gateway-deploy#upgrades) dan [Postgres](/docs/id/claude-apps-gateway-deploy#postgres). |230| `postgres_url` | Ya | URL `postgres://` atau `postgresql://` dengan satu host, bukan daftar yang dipisahkan koma. Gateway menjalankan schema migrations-nya sendiri saat boot dan pada upgrade, jadi role memerlukan rights untuk membuat dan mengubah tables pada target schema. Lihat [Upgrades](/docs/id/claude-apps-gateway-deploy#upgrades) dan [Postgres](/docs/id/claude-apps-gateway-deploy#postgres). |

231| `username` | Tidak | Overrides user di `postgres_url` |231| `username` | Tidak | Overrides user di `postgres_url` |

232| `password` | Tidak | Database credential. Atur di sini daripada di `postgres_url` jadi credential tetap keluar dari URL. Menerima karakter apa pun dan mengambil precedence atas URL credentials. |232| `password` | Tidak | Database credential. Atur di sini daripada di `postgres_url` jadi credential tetap keluar dari URL. Menerima karakter apa pun dan mengambil precedence atas URL credentials. |

233| `max_connections` | Tidak | Postgres connection-pool size per replica. Default `5`, yang konservatif dan ramah ke shared databases. Dengan [spend limits](#admin) diaktifkan, hot path melakukan beberapa operasi per inference request, jadi naikkan untuk dedicated database di bawah load, dan simpan replicas × ini di bawah database's `max_connections`. |233| `max_connections` | Tidak | Postgres connection-pool size per replica. Default `5`, yang konservatif dan ramah ke shared databases. Dengan [spend limits](#admin) diaktifkan, hot path melakukan beberapa operasi per inference request, jadi naikkan untuk dedicated database di bawah load, dan simpan replicas × ini di bawah database's `max_connections`. |

Details

249 Postgres249 Postgres

250</h3>250</h3>

251 251 

252Gateway menyimpan statusnya dalam database PostgreSQL:

253 

254* **Database**: PostgreSQL itu sendiri, di-host sendiri atau terkelola, pada [versi minimum](/docs/id/claude-apps-gateway#prerequisites) atau lebih baru. Database yang hanya mengimplementasikan protokol Postgres, seperti database SQL terdistribusi, tidak didukung.

255* **Alamat**: `store.postgres_url` menerima satu host. Jika database memiliki beberapa node, gunakan alamat yang berada di depannya, seperti endpoint layanan terkelola Anda, load balancer, atau IP virtual. Atur [periode grace kesiapan](#readiness-grace-period) yang lebih lama dari waktu yang diperlukan failover.

256 

252Gateway menyimpan lima tabel data ditambah tabel `_migrations`, semuanya dibuat oleh migrasi waktu boot-nya:257Gateway menyimpan lima tabel data ditambah tabel `_migrations`, semuanya dibuat oleh migrasi waktu boot-nya:

253 258 

254| Tabel | Isi | Retensi |259| Tabel | Isi | Retensi |


396| CLI `/login`: `Could not resolve the configured HTTP proxy` | Nama host dalam `HTTPS_PROXY` atau `HTTP_PROXY` tidak diselesaikan dari mesin pengembang, biasanya karena tidak terhubung ke jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda dan coba ulang, atau perbaiki URL proxy |401| CLI `/login`: `Could not resolve the configured HTTP proxy` | Nama host dalam `HTTPS_PROXY` atau `HTTP_PROXY` tidak diselesaikan dari mesin pengembang, biasanya karena tidak terhubung ke jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda dan coba ulang, atau perbaiki URL proxy |

397| CLI `/login`: `Could not resolve gateway host <host>` | Mesin tidak dapat menyelesaikan nama DNS internal gateway, biasanya karena tidak berada di jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda, lalu coba ulang `/login` |402| CLI `/login`: `Could not resolve gateway host <host>` | Mesin tidak dapat menyelesaikan nama DNS internal gateway, biasanya karena tidak berada di jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda, lalu coba ulang `/login` |

398| Boot keluar dengan kesalahan validasi konfigurasi yang menamai `store.postgres_url` | Tidak ada Postgres yang dikonfigurasi; gateway memerlukan Postgres | Atur `store.postgres_url`. Untuk pengembangan lokal, gunakan kontainer sekali pakai: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |403| Boot keluar dengan kesalahan validasi konfigurasi yang menamai `store.postgres_url` | Tidak ada Postgres yang dikonfigurasi; gateway memerlukan Postgres | Atur `store.postgres_url`. Untuk pengembangan lokal, gunakan kontainer sekali pakai: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |

404| Boot keluar: `store.postgres_url in <path> is not a URL the gateway can read`, atau sebelum v2.1.290 hanya `Invalid URL` atau `URI error` | URL tidak dapat diurai, misalnya karena mencantumkan lebih dari satu host atau kata sandinya memiliki `/`, `?`, `#`, atau `%` yang tidak dienkode | Sebutkan [satu host](#postgres), dan pindahkan kata sandi ke [`store.password`](/docs/id/claude-apps-gateway-config#store) |

399| Boot keluar: `requires the native binary` | Berjalan di bawah Node bukan biner asli | Instal Claude Code dengan salah satu [metode instalasi mandiri](/docs/id/setup) |405| Boot keluar: `requires the native binary` | Berjalan di bawah Node bukan biner asli | Instal Claude Code dengan salah satu [metode instalasi mandiri](/docs/id/setup) |

400| Boot keluar dengan kesalahan penemuan OIDC setelah `config.load` | `oidc.issuer` tidak dapat dijangkau, atau rantai TLS tidak dipercaya | Periksa issuer dapat dijangkau dari pod dan melayani `/.well-known/openid-configuration`. Atur `ca_cert_pem` untuk PKI pribadi. Jika pod menjangkau IdP hanya melalui proxy forward, atur [`oidc.use_proxy: true`](/docs/id/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); pada versi sebelum v2.1.227, berikan pod rute langsung ke setiap endpoint IdP sebagai gantinya. Jika pod juga tidak dapat menyelesaikan nama host IdP, atau proxy menolak `CONNECT` ke alamat IP, lihat [Proxy-only egress](/docs/id/claude-apps-gateway-config#proxy-only-egress), yang memerlukan v2.1.277 atau lebih baru. |406| Boot keluar dengan kesalahan penemuan OIDC setelah `config.load` | `oidc.issuer` tidak dapat dijangkau, atau rantai TLS tidak dipercaya | Periksa issuer dapat dijangkau dari pod dan melayani `/.well-known/openid-configuration`. Atur `ca_cert_pem` untuk PKI pribadi. Jika pod menjangkau IdP hanya melalui proxy forward, atur [`oidc.use_proxy: true`](/docs/id/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); pada versi sebelum v2.1.227, berikan pod rute langsung ke setiap endpoint IdP sebagai gantinya. Jika pod juga tidak dapat menyelesaikan nama host IdP, atau proxy menolak `CONNECT` ke alamat IP, lihat [Proxy-only egress](/docs/id/claude-apps-gateway-config#proxy-only-egress), yang memerlukan v2.1.277 atau lebih baru. |

401| Boot keluar dengan kesalahan izin Postgres | Peran database kekurangan hak DDL pada skemanya | Berikan peran `CREATE` pada skema gateway sehingga dapat membuat dan mengubah tabelnya saat boot |407| Boot keluar dengan kesalahan izin Postgres | Peran database kekurangan hak DDL pada skemanya | Berikan peran `CREATE` pada skema gateway sehingga dapat membuat dan mengubah tabelnya saat boot |

402| Log: `could not connect to Postgres at boot, attempt 1 of 3` | Database tidak dapat dijangkau ketika gateway dimulai, misalnya pada instance dingin yang jaringannya masih sedang dimulai | Jika gateway kemudian selesai boot, tidak ada tindakan yang diperlukan. Ketika database tidak dapat dijangkau, gateway mencoba koneksi tiga kali, dua detik terpisah, sebelum keluar. Jika keluar dengan `could not connect to Postgres`, periksa `store.postgres_url` dan jalur jaringan ke database. Jika upaya habis waktu daripada ditolak, naikkan [`store.connect_timeout_seconds`](/docs/id/claude-apps-gateway-config#store) untuk memberikan masing-masing lebih lama. |408| Log: `could not connect to Postgres at boot, attempt 1 of 3` | Database tidak dapat dijangkau ketika gateway dimulai, misalnya pada instance dingin yang jaringannya masih sedang dimulai | Jika gateway kemudian selesai boot, tidak ada tindakan yang diperlukan. Ketika database tidak dapat dijangkau, gateway mencoba koneksi tiga kali, dua detik terpisah, sebelum keluar. Jika keluar dengan `could not connect to Postgres`, periksa `store.postgres_url`, termasuk bahwa URL tersebut menyebutkan satu host, dan jalur jaringan ke database. Jika upaya habis waktu daripada ditolak, naikkan [`store.connect_timeout_seconds`](/docs/id/claude-apps-gateway-config#store) untuk memberikan masing-masing lebih lama. |

403| `/oauth/callback` menampilkan "Sign-in could not be completed" | Domain email ditolak, validasi id\_token gagal, atau `email_verified` secara eksplisit `false`, yang gateway selalu tolak tanpa override | Periksa `allowed_email_domains` dan bahwa IdP mengembalikan klaim `email` yang diverifikasi. Untuk `email_verified: false`, perbaiki verifikasi sisi IdP. Jika IdP Anda memancarkan email di bawah nama klaim berbeda, atur `oidc.email_claim`. |409| `/oauth/callback` menampilkan "Sign-in could not be completed" | Domain email ditolak, validasi id\_token gagal, atau `email_verified` secara eksplisit `false`, yang gateway selalu tolak tanpa override | Periksa `allowed_email_domains` dan bahwa IdP mengembalikan klaim `email` yang diverifikasi. Untuk `email_verified: false`, perbaiki verifikasi sisi IdP. Jika IdP Anda memancarkan email di bawah nama klaim berbeda, atur `oidc.email_claim`. |

404| Log: `token exchange failed request_id=<id>: id_token missing email claim` | IdP tidak menyertakan `email` dalam id\_token secara default. Penolakan ini hanya terjadi ketika `allowed_email_domains` diatur; tanpanya, email yang hilang mencetak sesi tanpa email | Konfigurasikan IdP untuk memancarkan `email` dalam id\_token. Okta: tambahkan `email` ke klaim ID-token server otorisasi khusus. Entra: tambahkan `email` sebagai klaim opsional pada pendaftaran aplikasi. PingFederate: aktifkan Kebijakan OpenID Connect yang memancarkan `email`. Jika IdP melayani `email` dari endpoint userinfo tetapi tidak akan menyertakannya dalam id\_token, seperti server otorisasi org Okta, atur `oidc.userinfo_fallback: true`. |410| Log: `token exchange failed request_id=<id>: id_token missing email claim` | IdP tidak menyertakan `email` dalam id\_token secara default. Penolakan ini hanya terjadi ketika `allowed_email_domains` diatur; tanpanya, email yang hilang mencetak sesi tanpa email | Konfigurasikan IdP untuk memancarkan `email` dalam id\_token. Okta: tambahkan `email` ke klaim ID-token server otorisasi khusus. Entra: tambahkan `email` sebagai klaim opsional pada pendaftaran aplikasi. PingFederate: aktifkan Kebijakan OpenID Connect yang memancarkan `email`. Jika IdP melayani `email` dari endpoint userinfo tetapi tidak akan menyertakannya dalam id\_token, seperti server otorisasi org Okta, atur `oidc.userinfo_fallback: true`. |

405| Log: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, dan pengembang melihat `Cloud gateway session expired` setiap `session.ttl_hours` | IdP menerima token refresh tetapi tidak mengembalikan id\_token dengannya, jadi gateway menanyakan endpoint userinfo IdP untuk klaim pengguna. IdP menolak token akses yang diperbarui di sana. Gateway menjawab `temporarily_unavailable`, jadi Claude Code menyimpan token refresh tetapi tidak dapat memperbarui sesi. Versi gateway sebelum v2.1.260 mencatat baris yang sama tanpa detail `(at …)`. | Atur [`oidc.scope_on_refresh: true`](/docs/id/claude-apps-gateway-config#oidc), tersedia di gateway v2.1.260 atau lebih baru, sehingga permintaan refresh meminta `openid` lagi. Beberapa IdP, seperti Okta, mengembalikan id\_token pada refresh hanya ketika diminta. Di PingFederate, aktifkan **Return ID Token On Refresh Grant** di bawah **Applications > OAuth > OpenID Connect Policy Management** sebagai gantinya. Kunci tidak mengubah perilaku PingFederate. Untuk IdP lain yang masih menghilangkannya, periksa apakah endpoint userinfo menerima token akses yang dikeluarkan oleh refresh. Sebagai solusi sementara, naikkan [`session.ttl_hours`](/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |411| Log: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, dan pengembang melihat `Cloud gateway session expired` setiap `session.ttl_hours` | IdP menerima token refresh tetapi tidak mengembalikan id\_token dengannya, jadi gateway menanyakan endpoint userinfo IdP untuk klaim pengguna. IdP menolak token akses yang diperbarui di sana. Gateway menjawab `temporarily_unavailable`, jadi Claude Code menyimpan token refresh tetapi tidak dapat memperbarui sesi. Versi gateway sebelum v2.1.260 mencatat baris yang sama tanpa detail `(at …)`. | Atur [`oidc.scope_on_refresh: true`](/docs/id/claude-apps-gateway-config#oidc), tersedia di gateway v2.1.260 atau lebih baru, sehingga permintaan refresh meminta `openid` lagi. Beberapa IdP, seperti Okta, mengembalikan id\_token pada refresh hanya ketika diminta. Di PingFederate, aktifkan **Return ID Token On Refresh Grant** di bawah **Applications > OAuth > OpenID Connect Policy Management** sebagai gantinya. Kunci tidak mengubah perilaku PingFederate. Untuk IdP lain yang masih menghilangkannya, periksa apakah endpoint userinfo menerima token akses yang dikeluarkan oleh refresh. Sebagai solusi sementara, naikkan [`session.ttl_hours`](/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |

Details

169 </Step>169 </Step>

170 170 

171 <Step title="Sediakan Amazon RDS untuk PostgreSQL">171 <Step title="Sediakan Amazon RDS untuk PostgreSQL">

172 Instans berjalan di subnet pribadi tanpa alamat publik dan enkripsi penyimpanan aktif. Versi mesin disematkan ke Postgres 16, yang memenuhi lantai yang didukung gateway dari PostgreSQL 14 dan menjamin keluarga grup parameter di bawah cocok dengan instans.172 Instans menjalankan Postgres 16 di subnet pribadi, tanpa alamat publik dan dengan enkripsi penyimpanan aktif.

173 173 

174 Pertama, buat grup subnet yang menempatkan database di subnet pribadi, dan grup parameter dengan `rds.force_ssl=1` sehingga server menolak koneksi plaintext. Versi mesin disematkan sekali karena keluarga grup parameter harus cocok dengan versi utama mesin yang dijalankan instans:174 Pertama, buat grup subnet yang menempatkan database di subnet pribadi, dan grup parameter dengan `rds.force_ssl=1` sehingga server menolak koneksi plaintext. Versi mesin disematkan sekali karena keluarga grup parameter harus cocok dengan versi utama mesin yang dijalankan instans:

175 175 

sessions.md +3 −3

Details

83* Terminal: `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`. Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di tabel. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk mengganti mode yang dipulihkan.83* Terminal: `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`. Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di tabel. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk mengganti mode yang dipulihkan.

84* Non-interaktif: `claude -p --resume` atau `claude -p --continue`. Claude Code memulai jalankan dalam mode izin yang akan dimulai oleh jalankan `claude -p` baru, kecuali sesi yang berakhir dalam mode rencana dilanjutkan dalam mode rencana di bawah [kondisi di bawah](#resume-in-plan-mode-with-p).84* Non-interaktif: `claude -p --resume` atau `claude -p --continue`. Claude Code memulai jalankan dalam mode izin yang akan dimulai oleh jalankan `claude -p` baru, kecuali sesi yang berakhir dalam mode rencana dilanjutkan dalam mode rencana di bawah [kondisi di bawah](#resume-in-plan-mode-with-p).

85* VS Code: panel percakapan ekstensi. Tabel hanya mencakup percakapan yang berakhir dalam mode rencana; untuk sisanya, lihat [lanjutkan percakapan masa lalu](/docs/id/vs-code#resume-past-conversations).85* VS Code: panel percakapan ekstensi. Tabel hanya mencakup percakapan yang berakhir dalam mode rencana; untuk sisanya, lihat [lanjutkan percakapan masa lalu](/docs/id/vs-code#resume-past-conversations).

86* Pemilih sesi saat peluncuran: sesi yang Anda pilih dari [pemilih sesi](#use-the-session-picker), apakah Anda membukanya dengan `claude --resume` saja, `claude --from-pr`, atau nama yang cocok dengan lebih dari satu sesi. Claude Code tidak memulihkan mode izin yang disimpan. Ini memulai sesi dalam mode izin yang akan dimulai oleh sesi baru dari baris perintah yang sama.86* Pemilih sesi saat peluncuran: sesi yang Anda pilih dari [pemilih sesi](#use-the-session-picker), apakah Anda membukanya dengan `claude --resume` saja, `claude --from-pr`, atau nama yang cocok dengan lebih dari satu sesi. Claude Code memulai sesi dalam mode izin yang akan dimulai oleh sesi baru dari baris perintah yang sama, kecuali sesi yang berakhir dalam plan mode dilanjutkan dalam plan mode kecuali Anda meneruskan `--permission-mode`, `--dangerously-skip-permissions`, atau `--fork-session`. Tidak ada mode izin tersimpan lain yang dipulihkan.

87* `/resume` di dalam sesi, dengan atau tanpa argumen: Claude Code tidak memulihkan mode izin yang disimpan. Percakapan yang Anda alihkan berlanjut dalam mode izin yang ada di sesi saat ini.87* `/resume` di dalam sesi, dengan atau tanpa argumen: percakapan yang Anda alihkan berlanjut dalam mode izin yang ada di sesi saat ini, kecuali percakapan yang berakhir dalam plan mode dilanjutkan dalam plan mode, bahkan jika Anda meluncurkan Claude Code dengan `--permission-mode` atau `--dangerously-skip-permissions`. Jika percakapan tersebut sudah dibuka sebelumnya dalam jalankan Claude Code ini, seperti percakapan tempat Anda memulai atau percakapan yang Anda tinggalkan dengan `/clear` atau `/resume`, percakapan tersebut berlanjut dalam mode izin Anda saat ini sebagai gantinya.

88 88 

89Memulihkan mode rencana pada jalur non-interaktif dan VS Code memerlukan Claude Code v2.1.246 atau lebih baru. Setiap baris menyebutkan mode izin yang diakhiri sesi, jalur terminal, non-interaktif, dan VS Code mana yang Anda lanjutkan, dan mode izin yang dimulai Claude Code dalam sesi yang dilanjutkan.89Memulihkan mode rencana pada jalur non-interaktif dan VS Code memerlukan Claude Code v2.1.246 atau lebih baru. Setiap baris menyebutkan mode izin yang diakhiri sesi, jalur terminal, non-interaktif, dan VS Code mana yang Anda lanjutkan, dan mode izin yang dimulai Claude Code dalam sesi yang dilanjutkan.

90 90 

91| Sesi berakhir dalam | Cara Anda melanjutkan | Mode izin setelah Anda melanjutkan |91| Sesi berakhir dalam | Cara Anda melanjutkan | Mode izin setelah Anda melanjutkan |

92| :- | :- | :- |92| :- | :- | :- |

93| `bypassPermissions` | Terminal | Mode izin yang akan dimulai oleh sesi baru. Untuk [melewati izin](/docs/id/permission-modes#skip-all-checks-with-bypasspermissions-mode) lagi, aktifkan saat peluncuran dengan salah satu bendera peluncurannya atau `permissions.defaultMode: "bypassPermissions"` dalam [pengaturan pengguna, `--settings`, atau terkelola](/docs/id/settings-reference#permissions-defaultmode) |93| `bypassPermissions` | Terminal | Mode izin yang akan dimulai oleh sesi baru. Untuk [melewati izin](/docs/id/permission-modes#skip-all-checks-with-bypasspermissions-mode) lagi, aktifkan saat peluncuran dengan salah satu bendera peluncurannya atau `permissions.defaultMode: "bypassPermissions"` dalam [pengaturan pengguna, `--settings`, atau terkelola](/docs/id/settings-reference#permissions-defaultmode) |

94| `plan` | Terminal | Mode izin yang akan dimulai oleh sesi baru |94| `plan` | Terminal | Plan mode. Dengan `--fork-session`, mode izin yang akan dimulai oleh sesi baru |

95| `auto` | Terminal | `auto`, hanya ketika akun Anda masih memenuhi [persyaratan mode otomatis](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) |95| `auto` | Terminal | `auto`, hanya ketika akun Anda masih memenuhi [persyaratan mode otomatis](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) |

96| Manual | Terminal | Manual ketika sesi baru akan dimulai dalam mode otomatis dari [default bawaan](/docs/id/permission-modes#which-mode-a-session-starts-in). Ketika `defaultMode` dari file pengaturan [berlaku](/docs/id/permission-modes#which-mode-a-session-starts-in), Claude Code memulai sesi yang dilanjutkan dalam mode tersebut |96| Manual | Terminal | Manual ketika sesi baru akan dimulai dalam mode otomatis dari [default bawaan](/docs/id/permission-modes#which-mode-a-session-starts-in). Ketika `defaultMode` dari file pengaturan [berlaku](/docs/id/permission-modes#which-mode-a-session-starts-in), Claude Code memulai sesi yang dilanjutkan dalam mode tersebut |

97| `plan` | Non-interaktif, di bawah [kondisi di bawah](#resume-in-plan-mode-with-p) | Mode rencana |97| `plan` | Non-interaktif, di bawah [kondisi di bawah](#resume-in-plan-mode-with-p) | Mode rencana |