View a markdown version of this page

Nama dan pengidentifikasi penyedia identitas SAML - Amazon Cognito

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

Nama dan pengidentifikasi penyedia identitas SAML

Saat memberi nama penyedia identitas SAML (IdPs) dan menetapkan pengidentifikasi IdP, Anda dapat mengotomatiskan aliran permintaan SP-initiated masuk dan keluar ke penyedia tersebut. Untuk informasi tentang batasan string ke nama penyedia, lihat ProviderName properti dari CreateIdentityProvider.

Diagram alir otentikasi masuk Amazon Cognito SP-initiated SAML dengan pengenal IdP dan login terkelola. Pengguna memberikan alamat email untuk login yang dikelola dan Amazon Cognito secara otomatis mengalihkan mereka ke penyedia mereka.

Anda juga dapat memilih hingga 50 pengidentifikasi untuk penyedia SAML Anda. Pengidentifikasi adalah nama ramah untuk IdP di kumpulan pengguna Anda, dan harus unik dalam kumpulan pengguna. Jika pengidentifikasi SAML Anda cocok dengan domain email pengguna, login terkelola meminta alamat email setiap pengguna, mengevaluasi domain di alamat email mereka, dan mengalihkan mereka ke IdP yang sesuai dengan domain mereka. Karena organisasi yang sama dapat memiliki beberapa domain, satu IdP dapat memiliki beberapa pengidentifikasi.

Baik Anda menggunakan atau tidak menggunakan pengidentifikasi domain email, Anda dapat menggunakan pengenal di aplikasi multi-penyewa untuk mengarahkan pengguna ke IdP yang benar. Jika Anda ingin melewati login terkelola sepenuhnya, Anda dapat menyesuaikan tautan yang Anda sajikan kepada pengguna sehingga mereka mengarahkan Otorisasi titik akhir langsung ke IdP mereka. Untuk masuk ke pengguna Anda dengan pengidentifikasi dan mengarahkan ke IdP mereka, sertakan pengidentifikasi idp_identifier=myidp.example.com dalam format dalam parameter permintaan permintaan otorisasi awal mereka.

Metode lain untuk meneruskan pengguna ke IdP Anda adalah mengisi parameter identity_provider dengan nama IdP Anda dalam format URL berikut.

https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/authorize? response_type=code& identity_provider=MySAMLIdP& client_id=1example23456789& redirect_uri=https://www.example.com

Setelah pengguna masuk dengan IdP SAML Anda, IdP Anda mengalihkan mereka dengan respons SAML di tubuh ke titik akhir HTTP POST Anda. /saml2/idpresponse Amazon Cognito memproses pernyataan SAML dan, jika klaim dalam respons memenuhi harapan, mengalihkan ke URL panggilan balik klien aplikasi Anda. Setelah pengguna Anda menyelesaikan otentikasi dengan cara ini, mereka telah berinteraksi dengan halaman web hanya untuk IdP dan aplikasi Anda.

Dengan pengidentifikasi IdP dalam format domain, login terkelola meminta alamat email saat masuk dan kemudian, ketika domain email cocok dengan pengenal IdP, mengarahkan pengguna ke halaman masuk untuk IdP mereka. Sebagai contoh, Anda membuat aplikasi yang memerlukan login oleh karyawan dari dua perusahaan yang berbeda. Perusahaan pertama, AnyCompany A, memiliki exampleA.com danexampleA.co.uk. Perusahaan kedua, AnyCompany B, memilikiexampleB.com. Untuk contoh ini, Anda telah menyiapkan dua IdPs, satu untuk setiap perusahaan, sebagai berikut:

  • Untuk IdP A, Anda menentukan pengidentifikasi exampleA.com danexampleA.co.uk.

  • Untuk IdP B, Anda mendefinisikan pengen exampleB.com al.

Di aplikasi Anda, panggil login terkelola untuk klien aplikasi Anda untuk meminta setiap pengguna memasukkan alamat email mereka. Amazon Cognito memperoleh domain dari alamat email, menghubungkan domain dengan IdP dengan pengenal domain, dan mengarahkan pengguna Anda ke IdP yang benar dengan permintaan ke Otorisasi titik akhir yang berisi parameter permintaan. idp_identifier Misalnya, jika pengguna masukbob@exampleA.co.uk, halaman berikutnya yang berinteraksi dengan mereka adalah halaman masuk IdP di. https://auth.exampleA.co.uk/sso/saml

Anda juga dapat menerapkan logika yang sama secara mandiri. Di aplikasi Anda, Anda dapat membuat formulir khusus yang mengumpulkan input pengguna dan menghubungkannya dengan IdP yang benar sesuai dengan logika Anda sendiri. Anda dapat membuat portal kustom untuk setiap penyewa aplikasi, di mana masing-masing menautkan ke titik akhir otorisasi dengan pengidentifikasi penyewa di parameter permintaan.

Untuk mengumpulkan alamat email dan mengurai domain dalam login terkelola, tetapkan setidaknya satu pengidentifikasi untuk setiap IdP SAML yang telah Anda tetapkan ke klien aplikasi Anda. Secara default, layar masuk masuk terkelola menampilkan tombol untuk setiap tombol IdPs yang telah Anda tetapkan ke klien aplikasi Anda. Namun, jika Anda berhasil menetapkan pengidentifikasi, halaman masuk UI yang dihosting klasik Anda terlihat seperti gambar berikut.

Halaman login yang dikelola Amazon Cognito menampilkan login pengguna lokal dan permintaan pengguna federasi untuk memasukkan alamat email.
catatan

Di UI yang dihosting klasik, halaman masuk untuk klien aplikasi Anda secara otomatis meminta alamat email saat Anda menetapkan pengidentifikasi ke aplikasi. IdPs Dalam pengalaman login terkelola, Anda harus mengaktifkan perilaku ini di editor merek. Dalam kategori pengaturan perilaku otentikasi, pilih Input pencarian domain di bawah judul T ampilan penyedia.

Penguraian domain dalam login terkelola mengharuskan Anda menggunakan domain sebagai pengidentifikasi IdP Anda. Jika Anda menetapkan pengidentifikasi jenis apa pun ke masing-masing SAML IdPs untuk klien aplikasi, login terkelola untuk aplikasi tersebut tidak lagi menampilkan IdP-selection tombol. Tambahkan pengidentifikasi IdP untuk SAML saat Anda bermaksud menggunakan penguraian email atau logika khusus untuk menghasilkan pengalihan. Jika Anda ingin membuat pengalihan tanpa suara dan juga ingin halaman login terkelola menampilkan daftar IdPs, jangan tetapkan pengidentifikasi dan gunakan parameter identity_provider permintaan dalam permintaan otorisasi Anda.

  • Jika Anda menetapkan hanya satu IdP SAML ke klien aplikasi Anda, halaman masuk masuk terkelola menampilkan tombol untuk masuk dengan IdP tersebut.

  • Jika Anda menetapkan pengidentifikasi ke setiap IdP SAML yang Anda aktifkan untuk klien aplikasi, permintaan input pengguna untuk alamat email akan muncul di halaman masuk masuk terkelola.

  • Jika Anda memiliki beberapa IdPs dan Anda tidak menetapkan pengidentifikasi untuk semuanya, halaman masuk masuk terkelola menampilkan tombol untuk masuk dengan setiap IdP yang ditetapkan.

  • Jika Anda menetapkan pengidentifikasi IdPs dan ingin halaman login terkelola menampilkan pilihan tombol IdP, tambahkan IdP baru yang tidak memiliki pengenal ke klien aplikasi Anda, atau buat klien aplikasi baru. Anda juga dapat menghapus IdP yang ada dan menambahkannya lagi tanpa pengenal. Jika Anda membuat IdP baru, pengguna SAML Anda akan membuat profil pengguna baru. Duplikasi pengguna aktif ini mungkin memiliki dampak penagihan pada bulan ketika Anda mengubah konfigurasi IdP.

Untuk informasi lebih lanjut tentang penyiapan IdP, lihat Mengkonfigurasi penyedia identitas untuk kumpulan pengguna Anda.