Variabel-variabel lingkungan - AWS Amplify Hosting

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

Variabel-variabel lingkungan

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 tidak memungkinkan Anda membuat variabel lingkungan dengan awalan. AWS Awalan ini dicadangkan untuk Amplify penggunaan internal saja.

penting

Jangan gunakan variabel lingkungan untuk menyimpan rahasia. Simpan rahasia dalam rahasia lingkungan yang dibuat menggunakan AWS Systems Manager Parameter Store. Untuk informasi selengkapnya, lihat Rahasia lingkungan.

Amplify variabel lingkungan

Variabel lingkungan berikut dapat diakses secara default dalam konsol Amplify.

Nama variabel Deskripsi Nilai contoh

_BUILD_TIMEOUT

Durasi waktu tunggu build dalam hitungan menit

30

_LIVE_UPDATES

Alat akan ditingkatkan ke versi terbaru.

[{"name":"Amplify CLI","pkg":"@aws-amplify/cli","type":"npm","version":"latest"}]

USER_DISABLE_TESTS

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, lihatMenonaktifkan pengujian.

true

AWS_APP_ID

ID aplikasi build saat ini

abcd1234

AWS_BRANCH

Nama cabang build saat ini

main, develop, beta, v2.0

AWS_BRANCH_ARN

Cabang Amazon Resource Name (ARN) dari build saat ini

aws:arn:amplify:us-west-2:123456789012:appname/branch/...

AWS_CLONE_URL

URL klon yang digunakan untuk mengambil isi repositori git

git@github.com:<user-name>/<repo-name>.git

AWS_COMMIT_ID

ID komit dari build saat ini

“KEPALA” untuk rebuild

abcd1234

AWS_JOB_ID

ID tugas build saat ini.

ID tugas mencakup beberapa ‘0’ yang ditambahkan sehingga panjangnya selalu sama.

0000000001

AWS_PULL_REQUEST_ID

ID permintaan tarik dari build pratinjau web permintaan tarik.

Variabel lingkungan ini tidak tersedia saat digunakan AWS CodeCommit sebagai penyedia repositori Anda.

1

AWS_PULL_REQUEST_SOURCE_BRANCH

Nama cabang fitur untuk pratinjau permintaan tarik yang dikirimkan ke cabang aplikasi di konsol Amplify.

featureA

AWS_PULL_REQUEST_DESTINATION_BRANCH

Nama cabang aplikasi di konsol Amplify tempat permintaan tarik cabang fitur dikirimkan.

main

AMPLIFY_AMAZON_CLIENT_ID

ID klien Amazon

123456

AMPLIFY_AMAZON_CLIENT_SECRET

Rahasia klien Amazon

example123456

AMPLIFY_FACEBOOK_CLIENT_ID

ID klien Facebook

123456

AMPLIFY_FACEBOOK_CLIENT_SECRET

Rahasia klien Facebook

example123456

AMPLIFY_GOOGLE_CLIENT_ID

ID klien Google

123456

AMPLIFY_GOOGLE_CLIENT_SECRET

Rahasia klien Google

example123456

AMPLIFY_DIFF_DEPLOY

Mengaktifkan atau menonaktifkan deployment frontend berbasis diff. Untuk informasi selengkapnya, lihat Mengaktifkan atau menonaktifkan build dan deploy frontend berbasis diff.

true

AMPLIFY_DIFF_DEPLOY_ROOT

Path yang digunakan untuk perbandingan deployment frontend berbasis diff, bergantung pada root repositori.

dist

AMPLIFY_DIFF_BACKEND

Aktifkan atau nonaktifkan build backend berbasis diff. Ini hanya berlaku untuk aplikasi Gen 1. Untuk informasi selengkapnya, lihat Mengaktifkan atau menonaktifkan build backend berbasis diff untuk aplikasi Gen 1

true

AMPLIFY_BACKEND_PULL_ONLY

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

true

AMPLIFY_BACKEND_APP_ID

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

abcd1234

AMPLIFY_SKIP_BACKEND_BUILD

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_ENABLE_DEBUG_OUTPUT

Atur variabel ini true untuk mencetak jejak tumpukan di log. Ini berguna untuk men-debug kesalahan build backend.

true

AMPLIFY_MONOREPO_APP_ROOT

Path yang digunakan untuk menentukan root aplikasi dari aplikasi monorepo, bergantung pada root repositori.

apps/react-app

AMPLIFY_USERPOOL_ID

ID untuk kumpulan pengguna Amazon Cognito yang diimpor untuk autentikasi

us-west-2_example

AMPLIFY_WEBCLIENT_ID

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_USERPOOL_ID.

123456

AMPLIFY_NATIVECLIENT_ID

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_USERPOOL_ID.

123456

AMPLIFY_IDENTITYPOOL_ID

ID untuk kumpulan identitas Amazon Cognito

example-identitypool-id

AMPLIFY_PERMISSIONS_BOUNDARY_ARN

ARN untuk kebijakan IAM untuk digunakan sebagai batas izin yang berlaku untuk semua peran IAM yang dibuat oleh Amplify. Untuk informasi selengkapnya, lihat Batas Izin IAM untuk peran yang dihasilkan Amplify.

arn:aws:iam::123456789012:policy/example-policy

AMPLIFY_DESTRUCTIVE_UPDATES

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 token OAuth, bukan kunci AWS akses dan kunci rahasia.

Tetapkan variabel lingkungan

Gunakan petunjuk berikut untuk menyetel 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.

Untuk mengatur variabel lingkungan
  1. Masuk ke AWS Management Console dan buka konsol Amplify.

  2. Di konsol Amplify, pilih Hosting, lalu pilih variabel Lingkungan.

  3. Di halaman Variabel lingkungan, pilih Kelola variabel.

  4. 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.

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

    1. Pilih Tindakan, lalu pilih Tambahkan timpaan variabel.

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

  6. Pilih Simpan.

Akses variabel lingkungan pada waktu pembuatan

Untuk mengakses variabel lingkungan selama build, edit pengaturan build sehingga menyertakan variabel lingkungan dalam perintah build.

Setiap perintah dalam konfigurasi build Anda berjalan di dalam shell Bash. Untuk informasi lebih lanjut seputar penggunaan variabel lingkungan di Bash, lihat Ekspansi Shell di Manual GNU Bash.

Untuk mengedit pengaturan build guna menyertakan variabel lingkungan
  1. Masuk ke AWS Management Console dan buka konsol Amplify.

  2. Di konsol Amplify, pilih Hosting, lalu pilih Build settings.

  3. Di bagian Spesifikasi build aplikasi, pilih Edit.

  4. Tambahkan variabel lingkungan ke perintah build. Anda sekarang dapat mengakses variabel lingkungan selama build berikutnya. Contoh ini mengubah perilaku npm (BUILD_ENV) dan menambahkan token API (TWITCH_CLIENT_ID) untuk layanan eksternal ke file lingkungan untuk digunakan nanti.

    build: commands: - npm run build:$BUILD_ENV - echo "TWITCH_CLIENT_ID=$TWITCH_CLIENT_ID" >> backend/.env
  5. Pilih Simpan.

Membuat variabel lingkungan dapat diakses oleh runtime sisi server

Komponen server Next.js tidak memiliki akses ke variabel lingkungan aplikasi Anda secara default. Perilaku ini disengaja untuk melindungi setiap rahasia yang disimpan dalam variabel lingkungan yang digunakan aplikasi Anda selama fase build.

Untuk membuat variabel lingkungan tertentu dapat diakses oleh Next.js, Anda harus memodifikasi file spesifikasi build Amplify untuk mengatur variabel lingkungan dalam file lingkungan yang dikenali Next.js. Hal ini memungkinkan Amplify untuk memuat variabel lingkungan sebelum membangun aplikasi. Untuk informasi selengkapnya tentang memodifikasi spesifikasi build Anda, lihat contoh cara menambahkan variabel lingkungan di bagian perintah build.

Membuat lingkungan backend baru dengan parameter autentikasi untuk masuk sosial

Untuk menghubungkan cabang ke aplikasi
  1. Masuk ke AWS Management Console dan buka konsol Amplify.

  2. 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 Build settings, cari bagian Select a backend environment to use with this branch. 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.

        Screenshot dari bagian penerapan Backend di konsol Amplify.
      2. Perluas bagian Pengaturan lanjutan di halaman Pengaturan build dan tambahkan variabel lingkungan untuk kunci masuk sosial. Misalnya, AMPLIFY_FACEBOOK_CLIENT_SECRET adalah variabel lingkungan yang valid. Untuk daftar variabel lingkungan sistem Amplify yang tersedia secara default, lihat tabel di Amplify variabel lingkungan.

    • 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.

      2. Di bagian Variabel lingkungan, pilih Kelola variabel.

      3. Di bagian Kelola variabel, pilih Tambahkan variabel.

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

      5. Pilih, Simpan.

Variabel lingkungan kerangka kerja frontend

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_APP) 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. Untuk contoh penggunaan variabel lingkungan waktu build Amplify untuk tujuan ini, lihatAkses variabel lingkungan pada waktu pembuatan.

Rahasia lingkungan

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

Tetapkan rahasia lingkungan

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

Untuk mengatur rahasia lingkungan
  1. Masuk ke AWS Management Console dan buka AWS Systems Manager konsol.

  2. Di panel navigasi, pilih Manajemen Aplikasi, lalu pilih Parameter Store.

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

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

    1. Untuk Nama, masukkan parameter dalam format/amplify/{your_app_id}/{your_backend_environment_name}/{your_parameter_name}.

    2. Untuk Jenis, pilih SecureString.

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

    4. Untuk Nilai, masukkan nilai rahasia Anda untuk mengenkripsi.

  5. 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.

Akses rahasia lingkungan

Mengakses rahasia lingkungan selama build mirip dengan mengakses variabel lingkungan, kecuali bahwa rahasia lingkungan disimpan process.env.secrets sebagai string JSON.

Amplify rahasia lingkungan

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_SIWA_CLIENT_ID

Masuk dengan ID klien Apple

com.yourapp.auth

AMPLIFY_SIWA_TEAM_ID

Masuk dengan ID tim Apple

ABCD123

AMPLIFY_SIWA_KEY_ID

Masuk dengan ID kunci Apple

ABCD123

AMPLIFY_SIWA_PRIVATE_KEY

Masuk dengan kunci pribadi Apple

------ MULAI KUNCI PRIBADI ------

****......

------ AKHIRI KUNCI PRIBADI ------