View a markdown version of this page

Buat rahasia klien Salesforce - AWS Secrets Manager

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

Buat rahasia klien Salesforce

Dalam tutorial ini, Anda membuat rahasia klien Salesforce dan menyimpannya AWS Secrets Manager sebagai rahasia eksternal yang dikelola, mengaktifkan rotasi terkelola, dan kemudian menguji kredenal yang diputar dengan menukarnya dengan token akses. Tutorial ini membutuhkan waktu sekitar 20-30 menit untuk menyelesaikannya.

Tutorial ini menggunakan AWS layanan yang mungkin dikenakan biaya untuk Anda Akun AWS, termasuk biaya untuk rahasia yang Anda simpan di Secrets Manager dan, jika Anda memilih untuk menggunakannya, kunci yang dikelola pelanggan. Untuk informasi selengkapnya, lihat Harga.

catatan

Tutorial ini menggunakan tipe SalesforceClientSecretrahasia sebagai contoh. Jenis rahasia eksternal terkelola lainnya mengikuti aliran serupa. Anda membuat rahasia menggunakan format yang ditentukan oleh mitra integrasi, mengaktifkan rotasi terkelola, dan kemudian menggunakan kredenal yang diputar. Untuk daftar mitra onboard dan format rahasia yang diperlukan, lihat. Mitra Integrasi

Sebelum Anda memulai tutorial ini, pastikan Anda memiliki yang berikut ini.

  • Akun Salesforce (pengembang atau lainnya) yang memungkinkan Anda membuat Aplikasi Klien Eksternal (ECA).

  • Izin administratif untuk Anda Akun AWS. Dalam pengaturan produksi, ini adalah praktik terbaik untuk menggunakan peran yang berbeda untuk tugas yang berbeda. Misalnya, peran yang mengelola rahasia di organisasi Anda akan menciptakan rahasia, dan peran terpisah akan menggunakan rahasia saat runtime. Untuk langkah-langkah tutorial, kami sarankan Anda terus menggunakan identitas yang sama. Untuk informasi tentang cara mengatur izin di lingkungan produksi, lihatKendali autentikasi dan akses untuk AWS Secrets Manager.

Langkah 1: Buat Aplikasi Klien Eksternal dan aktifkan OAuth

Langkah pertama adalah membuat External Client App (ECA) di Salesforce dan mengkonfigurasinya untuk OAuth sehingga Secrets Manager dapat memutar rahasia klien. Untuk prosedur Salesforce lengkap, lihat Mengatur otorisasi dengan Aplikasi Klien Eksternal dalam dokumentasi Salesforce.

Saat Anda mengatur ECA, pastikan Anda mengonfigurasi yang berikut:

  • Di tingkat organisasi, aktifkan Izinkan akses ke rahasia konsumen Aplikasi Klien Eksternal melalui REST API. Pengaturan ini memungkinkan Secrets Manager untuk mengambil dan memutar rahasia konsumen melalui Salesforce REST API.

  • Di ECA, aktifkan lingkup OAuth Kelola data pengguna melalui API (api).

  • Pada ECA, aktifkan Aktifkan Aliran Kredensial Klien.

  • Pada ECA, aktifkan Aktifkan Token Exchange Flow dan Memerlukan rahasia untuk Token Exchange Flow.

Setelah Anda membuat ECA, kumpulkan nilai-nilai yang perlu Anda simpan dalam rahasia di langkah berikutnya:

  • Kunci konsumen (ID klien) dan rahasia konsumen (rahasia klien) dari pengaturan ECA Manager OAuth.

  • URL dasar Salesforce My Domain Anda, misalnya. https://MyDomainName.my.salesforce.com

  • ID aplikasi dan ID konsumen untuk ECA. Ini sesuai dengan external_client_app_identifier dan consumer_id bidang dalam dokumentasi Salesforce. Untuk mempelajari cara mengambil nilai-nilai ini, lihat Stage OAuth Credentials dalam dokumentasi Salesforce.

Untuk deskripsi setiap bidang yang diperlukan dalam rahasia, lihatRahasia Klien Salesforce.

Langkah 2: Buat rahasia eksternal yang dikelola dan aktifkan rotasi

Selanjutnya, Anda menyimpan rahasia klien Salesforce di Secrets Manager sebagai rahasia eksternal yang dikelola dan mengaktifkan rotasi terkelola. Dengan rotasi terkelola, Anda tidak membuat atau mempertahankan fungsi rotasi Lambda. Secrets Manager memutar rahasia untuk Anda.

Untuk membuat rahasia dan mengaktifkan rotasi (konsol)
  1. Buka konsol Secrets Manager di https://console.aws.amazon.com/secretsmanager/.

  2. Pilih Simpan rahasia baru.

  3. Pada halaman Pilih jenis rahasia, lakukan hal berikut:

    1. Untuk tipe Rahasia, pilih jenis rahasia eksternal terkelola rahasia klien Salesforce () SalesforceClientSecret.

    2. Masukkan bidang nilai rahasia untuk rahasia klien Salesforce: kunci konsumen, rahasia konsumen, URI dasar, ID aplikasi, dan ID konsumen. Untuk deskripsi setiap bidang, lihatRahasia Klien Salesforce.

    3. Untuk kunci Enkripsi, pilih aws/secretsmanageruntuk menggunakan Secrets Manager. Kunci yang dikelola AWS Tidak ada biaya untuk menggunakan kunci ini. Anda juga dapat menggunakan kunci yang dikelola pelanggan Anda sendiri. Untuk informasi tentang biaya penggunaan kunci yang dikelola pelanggan, lihatHarga.

    4. Pilih Berikutnya.

  4. Pada halaman Konfigurasi rahasia, masukkan nama Rahasia deskriptif dan Deskripsi, lalu pilih Berikutnya.

  5. Pada halaman Konfigurasi rotasi, lakukan hal berikut. Untuk rahasia eksternal yang dikelola, rotasi diaktifkan secara default selama pembuatan rahasia.

    1. Konfirmasikan itu Rotasi otomatis dihidupkan.

    2. Di bawah Metadata rotasi, untuk versi API (apiVersion), masukkan versi API organisasi Salesforce Anda. Bidang ini wajib diisi. Itu harus dalam formatvXX.X, di mana X adalah karakter numerik, dan harus setidaknyav65.0. Jika Anda ingin Secrets Manager memutar rahasia menggunakan seperangkat kredensi administratif terpisah, berikan juga ARN rahasia admin. Untuk deskripsi setiap bidang metadata, lihat. Rahasia Klien Salesforce

    3. Di Izin layanan untuk rotasi rahasia, pilih Buat peran baru untuk secara otomatis membuat peran IAM dengan izin yang dibutuhkan Secrets Manager untuk memutar rahasia. Secara default, izin dicakup ke mitra integrasi di AWS Wilayah tempat rahasia dibuat. Untuk informasi selengkapnya, lihat Keamanan dan izin.

    4. Di bawah jadwal Rotasi, masukkan jadwal Anda di zona waktu UTC, misalnya putar secara otomatis setiap 30 hari.

    5. Pilih Berikutnya.

  6. Pada halaman Ulasan, tinjau detail rahasia Anda, lalu pilih Store.

Untuk lebih banyak cara mengonfigurasi rotasi untuk rahasia eksternal terkelola, termasuk AWS AWS CLI, lihatRotate Secrets Manager mengelola rahasia eksternal.

Langkah 3: Uji kredensi yang diputar

Langkah terakhir adalah mengonfirmasi bahwa kredenal yang diputar berfungsi dengan mengambil nilai rahasia dan menukar kredensialnya dengan token akses Salesforce.

Untuk mengambil nilai rahasia (konsol)
  1. Buka konsol Secrets Manager di https://console.aws.amazon.com/secretsmanager/.

  2. Pada halaman Rahasia, pilih rahasia Anda.

  3. Pada halaman Detail rahasia, gulir ke bawah dan pilih Ambil nilai rahasia. Perhatikan arus consumerKey dan consumerSecret nilai.

catatan

Konfirmasikan bahwa consumerSecret nilai consumerKey dan sebenarnya telah berubah dari nilai yang awalnya Anda simpan. Jika belum berubah, tunggu beberapa menit dan periksa lagi. Jika masih belum berubah, periksa AWS CloudTrail rahasia RotationFailed peristiwa apa pun, yang mencakup detail tentang mengapa rotasi gagal. Untuk informasi selengkapnya, lihat Rahasia eksternal saya yang dikelola tidak berputar.

Selanjutnya, gunakan kredensi yang diambil untuk meminta token akses dari Salesforce. Ganti MyDomainName dengan nama Domain Saya Salesforce Anda, dan ganti consumerKey dan consumerSecret dengan nilai yang Anda ambil.

curl -X POST "https://MyDomainName.my.salesforce.com/services/oauth2/token" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=client_credentials" \ -d "client_id=consumerKey" \ -d "client_secret=consumerSecret"

Jika kredensialnya valid, Salesforce mengembalikan respons JSON yang berisi file. access_token Menerima token akses mengonfirmasi bahwa kredenal yang diputar berfungsi.

Saat Anda memasukkan perintah di shell perintah, ada risiko riwayat perintah diakses atau utilitas memiliki akses ke parameter perintah Anda. Lihat Mengurangi risiko menggunakan AWS CLI untuk menyimpan rahasia Anda AWS Secrets Manager.

Langkah 4: Bersihkan Sumber Daya

Untuk menghindari biaya yang sedang berlangsung, hapus sumber daya yang Anda buat dalam tutorial ini saat Anda tidak lagi membutuhkannya: rahasia dan peran rotasi IAM yang dibuat Secrets Manager. Menghapus rahasia juga menghentikan rotasi otomatis.

Untuk menghapus rahasia (konsol)
  1. Buka konsol Secrets Manager di https://console.aws.amazon.com/secretsmanager/.

  2. Pada halaman Rahasia, pilih rahasia Anda.

  3. Di bagian Detail rahasia, pilih Tindakan, lalu pilih Hapus rahasia.

  4. Dalam kotak dialog Nonaktifkan rahasia dan jadwal penghapusan, masukkan masa tunggu, lalu pilih Jadwal penghapusan. Secrets Manager membuat rahasia tidak dapat diakses segera dan menjadwalkannya untuk dihapus setelah jendela pemulihan. Untuk informasi selengkapnya, lihat Hapus sebuah AWS Secrets Manager Rahasia.

Untuk menghapus peran rotasi (konsol)
  1. Buka konsol IAM di https://console.aws.amazon.com/iam/, lalu pilih Peran.

  2. Temukan peran yang dibuat Secrets Manager untuk rotasi, pilih, lalu pilih Hapus. Untuk informasi lebih lanjut, lihat Menghapus peran atau profil instans dalam Panduan Pengguna IAM.

Langkah selanjutnya