

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

# Menggunakan variabel lingkungan dalam aplikasi Amplify
<a name="environment-variables"></a>

Variabel lingkungan adalah pasangan nilai kunci yang dapat Anda tambahkan ke pengaturan aplikasi Anda untuk membuatnya tersedia untuk Amplify Hosting. Sebagai praktik terbaik, Anda dapat menggunakan variabel lingkungan untuk mengekspos data konfigurasi aplikasi. Semua variabel lingkungan yang Anda tambahkan dienkripsi untuk mencegah akses nakal.

Amplify memberlakukan batasan berikut pada variabel lingkungan yang Anda buat.
+ Amplify tidak memungkinkan Anda membuat nama variabel lingkungan dengan awalan. `AWS` Awalan ini dicadangkan untuk Amplify penggunaan internal saja.
+ Nilai variabel lingkungan tidak dapat melebihi 5500 karakter.

**penting**  
Jangan gunakan variabel lingkungan untuk menyimpan rahasia. Untuk aplikasi Gen 2, gunakan fitur **manajemen Rahasia** di konsol Amplify. Untuk informasi selengkapnya, lihat [Rahasia dan vars lingkungan](https://docs.amplify.aws/react/deploy-and-host/fullstack-branching/secrets-and-vars/) di *Amplify Documentation*. Untuk aplikasi Gen 1, simpan rahasia dalam rahasia lingkungan yang dibuat menggunakan AWS Systems Manager Parameter Store. Untuk informasi selengkapnya, lihat [Mengelola rahasia lingkungan](environment-secrets.md).

## Amplify referensi variabel lingkungan
<a name="amplify-console-environment-variables"></a>

Variabel lingkungan berikut dapat diakses secara default dalam konsol Amplify.


****  

| Nama variabel | Deskripsi | Nilai contoh | 
| --- | --- | --- | 
|  \$1BUILD\$1TIMEOUT  |  Durasi batas waktu build dalam menit. Nilai minimum adalah 5. Nilai maksimumnya adalah 120.  |  `30`  | 
|  \$1LIVE\$1UPDATES  |  Alat akan ditingkatkan ke versi terbaru.  |  `[{"name":"Amplify CLI","pkg":"@aws-amplify/cli","type":"npm","version":"latest"}]`  | 
|  USER\$1DISABLE\$1TESTS  |  Langkah pengujian dilewati selama pembuatan. Anda dapat menonaktifkan pengujian untuk semua cabang atau cabang tertentu di aplikasi. Variabel lingkungan ini digunakan untuk aplikasi yang melakukan pengujian selama fase build. Untuk informasi selengkapnya tentang pengaturan variabel ini, lihat[Mematikan pengujian untuk aplikasi atau cabang Amplify](running-tests.md#disabling-tests).  |  `true`  | 
|  AWS\$1APP\$1ID  |  ID aplikasi build saat ini  |  `abcd1234`  | 
|  AWS\$1BRANCH  |  Nama cabang build saat ini  |  `main`, `develop`, `beta`, `v2.0`  | 
|  AWS\$1BRANCH\$1ARN  |  Cabang Amazon Resource Name (ARN) dari build saat ini  | `aws:arn:amplify:us-west-2:123456789012:appname/branch/... ` | 
|  AWS\$1CLONE\$1URL  |  URL klon yang digunakan untuk mengambil isi repositori git  |   `git@github.com:<user-name>/<repo-name>.git`   | 
|  AWS\$1COMMIT\$1ID  |  ID komit dari build saat ini “KEPALA” untuk rebuild  |  `abcd1234`  | 
|  AWS\$1JOB\$1ID  |  ID tugas build saat ini. ID tugas mencakup beberapa ‘0’ yang ditambahkan sehingga panjangnya selalu sama.  |  `0000000001`  | 
|  AWS\$1PULL\$1REQUEST\$1ID  |  ID permintaan tarik dari build pratinjau web permintaan tarik. Variabel lingkungan ini tidak tersedia saat digunakan AWS CodeCommit sebagai penyedia repositori Anda.  |  `1`  | 
|  AWS\$1PULL\$1REQUEST\$1SOURCE\$1BRANCH  |  Nama cabang fitur untuk pratinjau permintaan tarik yang dikirimkan ke cabang aplikasi di konsol Amplify.  |  `featureA`  | 
|  AWS\$1PULL\$1REQUEST\$1DESTINATION\$1BRANCH  |  Nama cabang aplikasi di konsol Amplify tempat permintaan tarik cabang fitur dikirimkan.  |  `main`  | 
|  AMPLIFY\$1AMAZON\$1CLIENT\$1ID  |  ID klien Amazon  |  `123456`  | 
|  AMPLIFY\$1AMAZON\$1CLIENT\$1SECRET  |  Rahasia klien Amazon  |  `example123456`  | 
|  AMPLIFY\$1FACEBOOK\$1CLIENT\$1ID  |  ID klien Facebook  |  `123456`  | 
|  AMPLIFY\$1FACEBOOK\$1CLIENT\$1SECRET  |  Rahasia klien Facebook  |  `example123456`  | 
|  AMPLIFY\$1GOOGLE\$1CLIENT\$1ID  |  ID klien Google  |  `123456`  | 
|  AMPLIFY\$1GOOGLE\$1CLIENT\$1SECRET  |  Rahasia klien Google  |  `example123456`  | 
|  AMPLIFY\$1DIFF\$1DEPLOY  |  Mengaktifkan atau menonaktifkan deployment frontend berbasis diff. Untuk informasi selengkapnya, lihat [Mengonfigurasi pembuatan dan penerapan frontend berbasis diff](edit-build-settings.md#enable-diff-deploy).  |  `true`  | 
|  AMPLIFY\$1DIFF\$1DEPLOY\$1ROOT  |  Path yang digunakan untuk perbandingan deployment frontend berbasis diff, bergantung pada root repositori.  | `dist` | 
|  AMPLIFY\$1DIFF\$1BACKEND  |  Aktifkan atau nonaktifkan build backend berbasis diff. Ini hanya berlaku untuk aplikasi Gen 1. Untuk informasi selengkapnya, lihat [Mengonfigurasi build backend berbasis diff untuk aplikasi Gen 1](edit-build-settings.md#enable-diff-backend)  | `true` | 
|  AMPLIFY\$1BACKEND\$1PULL\$1ONLY  |  Amplify mengelola variabel lingkungan ini. Ini hanya berlaku untuk aplikasi Gen 1. Untuk informasi selengkapnya, lihat [Mengedit frontend yang ada agar mengarah ke backend berbeda](reuse-backends.md#reuse-backends-edit-existing)  | `true` | 
|  AMPLIFY\$1BACKEND\$1APP\$1ID  |  Amplify mengelola variabel lingkungan ini. Ini hanya berlaku untuk aplikasi Gen 1. Untuk informasi selengkapnya, lihat [Mengedit frontend yang ada agar mengarah ke backend berbeda](reuse-backends.md#reuse-backends-edit-existing)  | `abcd1234` | 
|  AMPLIFY\$1SKIP\$1BACKEND\$1BUILD  |  Jika Anda tidak memiliki bagian backend dalam spesifikasi build dan ingin menonaktifkan build backend, setel variabel lingkungan ini ke. `true` Ini hanya berlaku untuk aplikasi Gen 1.  | `true` | 
|  AMPLIFY\$1ENABLE\$1DEBUG\$1OUTPUT  |  Atur variabel ini `true` untuk mencetak jejak tumpukan di log. Ini berguna untuk men-debug kesalahan build backend.  | `true` | 
|  AMPLIFY\$1MONOREPO\$1APP\$1ROOT  |  Path yang digunakan untuk menentukan root aplikasi dari aplikasi monorepo, bergantung pada root repositori.  | `apps/react-app` | 
|  AMPLIFY\$1USERPOOL\$1ID  |  ID untuk kumpulan pengguna Amazon Cognito yang diimpor untuk autentikasi  |  `us-west-2_example`  | 
|  AMPLIFY\$1WEBCLIENT\$1ID  |  ID untuk klien aplikasi yang akan digunakan oleh aplikasi web Klien aplikasi harus dikonfigurasi dengan akses ke kumpulan pengguna Amazon Cognito yang ditentukan oleh variabel lingkungan AMPLIFY\$1USERPOOL\$1ID.  | `123456` | 
|  AMPLIFY\$1NATIVECLIENT\$1ID  |  ID untuk klien aplikasi yang akan digunakan oleh aplikasi asli Klien aplikasi harus dikonfigurasi dengan akses ke kumpulan pengguna Amazon Cognito yang ditentukan oleh variabel lingkungan AMPLIFY\$1USERPOOL\$1ID.  | `123456` | 
|  AMPLIFY\$1IDENTITYPOOL\$1ID  |  ID untuk kumpulan identitas Amazon Cognito  |  `example-identitypool-id`  | 
|  AMPLIFY\$1PERMISSIONS\$1BOUNDARY\$1ARN  |  ARN untuk kebijakan IAM untuk digunakan sebagai batas izin yang berlaku untuk semua peran IAM yang dibuat oleh Amplify.  |  `arn:aws:iam::123456789012:policy/example-policy`  | 
|  AMPLIFY\$1DESTRUCTIVE\$1UPDATES  |  Setel variabel lingkungan ini ke true untuk memungkinkan GraphQL API diperbarui dengan operasi skema yang berpotensi menyebabkan kehilangan data.  |  `true`  | 

**catatan**  
Variabel `AMPLIFY_AMAZON_CLIENT_ID` dan `AMPLIFY_AMAZON_CLIENT_SECRET` lingkungan adalah OAuth token, bukan kunci AWS akses dan kunci rahasia. 

## Variabel lingkungan kerangka kerja frontend
<a name="frontend-framework-environment-variables"></a>

Jika Anda mengembangkan aplikasi dengan kerangka kerja frontend yang mendukung variabel lingkungannya sendiri, penting untuk dipahami bahwa ini tidak sama dengan variabel lingkungan yang Anda konfigurasikan di konsol Amplify. Misalnya, React (dengan prefiks REACT\$1APP) dan Gatsby (dengan prefiks GATSBY) memungkinkan Anda untuk membuat variabel lingkungan waktu aktif yang diintegrasikan secara otomatis ke dalam build produksi frontend Anda oleh kerangka kerja tersebut. Guna memahami efek penggunaan variabel lingkungan ini untuk menyimpan nilai, lihat dokumentasi terkait kerangka kerja frontend yang Anda gunakan.

Menyimpan nilai sensitif, seperti kunci API, di dalam variabel lingkungan dengan prefiks kerangka kerja frontend bukanlah praktik terbaik dan sangat tidak dianjurkan.

# Mengatur variabel lingkungan
<a name="setting-env-vars"></a>

Gunakan petunjuk berikut untuk mengatur variabel lingkungan untuk aplikasi di konsol Amplify.

**catatan**  
**Variabel lingkungan** terlihat di menu **Pengaturan aplikasi** konsol Amplify hanya jika aplikasi disiapkan untuk penerapan berkelanjutan dan terhubung ke repositori git. Untuk langkah-langkah seputar jenis deployment ini, lihat [Memulai dengan kode yang ada](getting-started.md).

**Untuk mengatur variabel lingkungan**

1. Masuk ke Konsol Manajemen AWS dan buka konsol [Amplify](https://console.aws.amazon.com/amplify/).

1. Di konsol Amplify, pilih **Hosting**, lalu pilih variabel **Lingkungan**.

1. Di halaman **Variabel lingkungan**, pilih **Kelola variabel**.

1. Untuk **Variable**, masukkan kunci Anda. Untuk **Nilai**, masukkan nilai Anda. Secara default, Amplify menerapkan variabel lingkungan di semua cabang, jadi Anda tidak perlu memasukkan kembali variabel saat menghubungkan cabang baru.

1. (Opsional) Untuk menyesuaikan variabel lingkungan secara khusus untuk sebuah cabang, tambahkan timpaan cabang sebagai berikut: 

   1. Pilih **Tindakan**, lalu pilih **Tambahkan timpaan variabel**.

   1. Anda sekarang memiliki serangkaian variabel lingkungan khusus untuk cabang Anda.

1. Pilih **Simpan**.

## Membuat lingkungan backend baru dengan parameter autentikasi untuk masuk sosial
<a name="creating-a-new-backend-environment-with-authentication-parameters"></a>

**Untuk menghubungkan cabang ke aplikasi**

1. Masuk ke Konsol Manajemen AWS dan buka konsol [Amplify](https://console.aws.amazon.com/amplify/).

1. Cara menghubungkan cabang ke aplikasi bervariasi, bergantung pada apakah Anda menghubungkan cabang ke aplikasi baru atau aplikasi yang sudah ada.
   + **Menghubungkan cabang ke aplikasi baru**

     1. Pada halaman **Pengaturan Build**, cari bagian **Pilih lingkungan backend yang akan digunakan dengan cabang ini**. Untuk **Lingkungan**, pilih **Buat lingkungan baru**, dan masukkan nama lingkungan backend Anda. Tangkapan layar berikut menunjukkan **Pilih lingkungan backend untuk digunakan dengan cabang ini** bagian dari halaman **Pengaturan Build** dengan **backend** dimasukkan untuk nama lingkungan backend.  
![\[Pilih lingkungan backend yang akan digunakan dengan cabang ini pada halaman Pengaturan Build.\]](http://docs.aws.amazon.com/id_id/amplify/latest/userguide/images/amplify-newenvironment-1.png)

     1. Perluas bagian **Pengaturan lanjutan** di halaman **Pengaturan build** dan tambahkan variabel lingkungan untuk kunci masuk sosial. Misalnya, **AMPLIFY\$1FACEBOOK\$1CLIENT\$1SECRET** adalah variabel lingkungan yang valid. Untuk daftar variabel lingkungan sistem Amplify yang tersedia secara default, lihat tabel di [Amplify referensi variabel lingkungan](environment-variables.md#amplify-console-environment-variables).
   + **Menghubungkan cabang ke aplikasi yang sudah ada**

     1. Jika Anda menghubungkan cabang baru ke aplikasi yang sudah ada, atur variabel lingkungan masuk sosial sebelum menghubungkan cabang. Di panel navigasi, pilih **Pengaturan Aplikasi**, lalu **Variabel lingkungan**.

     1. Di bagian **Variabel lingkungan**, pilih **Kelola variabel**.

     1. Di bagian **Kelola variabel**, pilih **Tambahkan variabel**.

     1. Untuk **Variabel** (kunci), masukkan ID klien Anda. Untuk **Nilai**, masukkan rahasia klien.

     1. Pilih, **Simpan**.

# Mengelola rahasia lingkungan
<a name="environment-secrets"></a>

Dengan dirilisnya Amplify Gen 2, alur kerja untuk rahasia lingkungan disederhanakan untuk memusatkan pengelolaan rahasia dan variabel lingkungan di konsol Amplify. *Untuk petunjuk tentang menyetel dan mengakses rahasia untuk aplikasi Amplify Gen 2, [lihat Rahasia dan vars lingkungan](https://docs.amplify.aws/react/deploy-and-host/fullstack-branching/secrets-and-vars/) di Dokumentasi Amplify.*

Rahasia lingkungan untuk aplikasi Gen 1 mirip dengan variabel lingkungan, tetapi mereka adalah pasangan nilai kunci AWS Systems Manager Parameter Store yang dapat dienkripsi. Beberapa nilai harus dienkripsi, seperti kunci pribadi Masuk dengan Apple untuk Amplify.

## Menggunakan AWS Systems Manager untuk mengatur rahasia lingkungan untuk aplikasi Amplify Gen 1
<a name="set-environment-secrets"></a>

Gunakan petunjuk berikut untuk menyetel rahasia lingkungan untuk aplikasi Amplify Gen 1 menggunakan konsol. AWS Systems Manager 

**Untuk mengatur rahasia lingkungan**

1. Masuk ke Konsol Manajemen AWS dan buka [AWS Systems Manager konsol](https://console.aws.amazon.com/systems-manager/).

1. Di panel navigasi, pilih **Manajemen Aplikasi**, lalu pilih **Parameter Store**.

1. Pada halaman **AWS Systems Manager Parameter Store**, pilih **Buat parameter**.

1. Pada halaman **Create parameter**, di bagian **Parameter details**, lakukan hal berikut:

   1. Untuk **Nama**, masukkan parameter dalam format**/amplify/\$1your\$1app\$1id\$1/\$1your\$1backend\$1environment\$1name\$1/\$1your\$1parameter\$1name\$1**.

   1. Untuk **Jenis**, pilih **SecureString**.

   1. Untuk **sumber kunci KMS**, pilih **Akun saya saat ini** untuk menggunakan kunci default untuk akun Anda.

   1. Untuk **Nilai**, masukkan nilai rahasia Anda untuk mengenkripsi.

1. Pilih, **Buat parameter**.

**catatan**  
Amplify hanya memiliki akses ke kunci di bawah `/amplify/{your_app_id}/{your_backend_environment_name}` untuk build lingkungan tertentu. Anda harus menentukan default AWS KMS key untuk mengizinkan Amplify mendekripsi nilai.

## Mengakses rahasia lingkungan untuk aplikasi Gen 1
<a name="access-environment-secrets"></a>

Rahasia lingkungan untuk aplikasi Gen 1 disimpan `process.env.secrets` sebagai string JSON.

## Amplify referensi rahasia lingkungan
<a name="amplify-environment-secrets"></a>

Tentukan parameter Systems Manager dalam format`/amplify/{your_app_id}/{your_backend_environment_name}/AMPLIFY_SIWA_CLIENT_ID`.

Anda dapat menggunakan rahasia lingkungan berikut yang dapat diakses secara default dalam konsol Amplify.


****  

| Nama variabel | Deskripsi | Nilai contoh | 
| --- | --- | --- | 
|  AMPLIFY\$1SIWA\$1CLIENT\$1ID  |  Masuk dengan ID klien Apple  |  `com.yourapp.auth`  | 
|  AMPLIFY\$1SIWA\$1TEAM\$1ID  |  Masuk dengan ID tim Apple  |  `ABCD123`  | 
|  AMPLIFY\$1SIWA\$1KEY\$1ID  |  Masuk dengan ID kunci Apple  |  `ABCD123`  | 
|  AMPLIFY\$1SIWA\$1PRIVATE\$1KEY  |  Masuk dengan kunci pribadi Apple  |  ------ MULAI KUNCI PRIBADI ------ \$1\$1\$1\$1...... ------ AKHIRI KUNCI PRIBADI ------  | 