Topik ini memberikan contoh cara mengimplementasikan Single Sign-On (SSO) berbasis peran dari Okta ke Alibaba Cloud. Contoh ini menjelaskan proses end-to-end SSO dari penyedia identitas cloud (IdP) ke Alibaba Cloud.
Prosedur
Dalam contoh ini, atribut bernama approle ditambahkan ke profil aplikasi Okta dan digunakan untuk menentukan Peran RAM (Resource Access Management). Gambar berikut menunjukkan prosedur implementasi SSO berbasis peran antara Alibaba Cloud dan Okta.

Langkah 1: Buat aplikasi yang mendukung SSO berbasis SAML 2.0 di Okta
Masuk ke portal Okta.
Di pojok kanan atas portal Okta, klik nama akun dan pilih Your Org dari daftar drop-down.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Applications, klik Create App Integration.
Dalam kotak dialog Create a new app integration, pilih SAML 2.0 dan klik Next.
Pada langkah General Settings, masukkan role-sso-test di bidang App name dan klik Next.
Pada langkah Configure SAML, konfigurasikan parameter berikut dan klik Next:
Single sign-on URL:
https://signin.alibabacloud.com/saml-role/sso.Audience URI (SP Entity ID): atau
urn:alibaba:cloudcomputing:international.Pada bidang Default RelayState, masukkan URL tempat pengguna akan dialihkan setelah login.
CatatanUntuk alasan keamanan, Anda harus memasukkan URL yang mengarah ke situs web Alibaba di bidang Default RelayState. Sebagai contoh, Anda dapat menggunakan URL yang berisi salah satu nama domain berikut: *.aliyun.com, *.hichina.com, *.yunos.com, *.taobao.com, *.tmall.com, *.alibabacloud.com, dan *.alipay.com. Jika Anda memasukkan URL yang tidak mengarah ke situs web Alibaba, konfigurasi tersebut tidak valid. Jika bidang ini dibiarkan kosong, pengguna akan dialihkan ke halaman utama Konsol Manajemen Alibaba Cloud secara default.
Pilih EmailAddress dari daftar drop-down Name ID format.
Pilih Email dari daftar drop-down Application username.
Biarkan nilai default untuk parameter Update application username on.
Pada halaman Feedback, pilih jenis aplikasi dan klik Finish.
Langkah 2: Unduh file metadata IdP SAML Okta
Pada halaman Applications, klik role-sso-test. Di halaman yang muncul, klik tab Sign On.
Di bagian SAML 2.0, salin metadata URL dan unduh file metadata ke mesin lokal Anda.
Langkah 3: Buat IdP SAML di Alibaba Cloud
Masuk ke Konsol RAM sebagai administrator RAM.
Di panel navigasi sebelah kiri, pilih .
Pada tab Role-based SSO, klik tab SAML dan klik Add IdP.
Pada halaman Create IdP, atur parameter IdP Name menjadi okta-provider dan konfigurasikan parameter Remarks.
Di bagian Metadata File, klik Upload Metadata dan unggah file metadata IdP yang diperoleh di Langkah 2: Dapatkan metadata IdP SAML dari Okta.
Klik tombol Create IdP.
Langkah 4: Buat peran RAM di Alibaba Cloud
Di panel navigasi sebelah kiri Konsol RAM, pilih .
Pada halaman Roles, klik Create Role.
Di pojok kanan atas halaman Create Role, klik Switch to Policy Editor.
Tentukan Penyedia Identitas Markup Bahasa Aserksi Keamanan (SAML) di editor.
Editor mendukung mode Visual dan JSON. Contoh ini menggunakan editor Visual. Tentukan IdP yang Anda buat di Langkah 3: Buat IdP SAML di Alibaba Cloud sebagai Principal dan pilih SAML untuk Identity Provider Type.
Di editor, atur kondisi
saml:recipientmenjadihttps://signin.alibabacloud.com/saml-role/sso.Dalam kotak dialog Create Role, atur parameter Role Name menjadi admin dan klik OK.
Langkah 5: Konfigurasikan profil aplikasi di Okta
Tambahkan atribut ke profil aplikasi.
Di panel navigasi sebelah kiri, pilih .
Cari role-sso-test dan klik namanya.
Di bagian Attributes pada halaman Profile Editor, klik Add Attribute.
Dalam kotak dialog Add Attribute, konfigurasikan parameter untuk atribut.
Pilih string dari daftar drop-down Data type.
Untuk Display name, masukkan nama yang muncul di antarmuka pengguna. Dalam contoh ini, masukkan
approle.Untuk Variable name, masukkan nama variabel untuk referensi dalam pemetaan, seperti
approle. Catat nilai parameter ini karena Anda akan membutuhkannya saat mengonfigurasi atribut.Di bidang Description, masukkan deskripsi untuk atribut. Parameter ini opsional.
Pilih Define enumerated list of values di samping Enum.
CatatanAnda dapat menggunakan Enum untuk membatasi nilai properti ke set yang telah ditentukan sebelumnya. Anda juga dapat mengabaikan Enum untuk fleksibilitas yang lebih besar.
Di bagian Attribute members, tentukan nilai enumerasi untuk atribut. Setiap nilai enumeration value harus sama dengan nama peran RAM yang Anda buat di Alibaba Cloud. Dalam contoh ini, nilainya adalah admin dan reader.
Dalam contoh ini, Anda tidak perlu mengatur Attribute Length karena nilai enumerasi telah dikonfigurasikan untuk atribut. Jika tidak ada nilai enumerasi yang ditentukan, konfigurasikan parameter Attribute Length.
Pilih Yes di samping Attribute required.
Scope: Hapus centang pada Personal.
Klik Save.
Konfigurasikan atribut.
Di panel navigasi sebelah kiri, pilih .
Pada halaman Applications, klik aplikasi bernama role-sso-test.
Di bagian SAML Settings pada tab General, klik Edit.
Di bagian Attribute Statements (optional) pada halaman Configure SAML, konfigurasikan dua pernyataan seperti yang ditunjukkan pada gambar berikut.
Mengonfigurasi item data pertama:
Atur Name menjadi
https://www.aliyun.com/SAML-Role/Attributes/RoleSessionName.Pilih user.email dari daftar drop-down Value.
Konfigurasikan entri data kedua:
Atur Name menjadi
https://www.aliyun.com/SAML-Role/Attributes/Role.Atur Value menjadi
String.replace("acs:ram::<account_id>:role/$approle,acs:ram::<account_id>:saml-provider/okta-provider", "$approle", appuser.approle). Ekspresi ini menggantikan placeholder$approledengan nilai atributapproledari profil aplikasi pengguna yang masuk. Atributapproleadalah atribut yang Anda definisikan di profil.okta-provideradalah IdP yang Anda buat di Langkah 3: Buat IdP SAML di Alibaba Cloud. Ganti<account_id>dengan ID akun Alibaba Cloud Anda. Sebagai contoh:String.replace("acs:ram::177242285274****:role/$approle,acs:ram::177242285274****:saml-provider/okta-provider", "$approle", appuser.approle).
Langkah 6: Buat pengguna dan tetapkan aplikasi kepada pengguna di Okta
Buat pengguna.
Di panel navigasi sebelah kiri, pilih .
Pada halaman yang muncul, klik Add Person.
Dalam kotak dialog Add Person, masukkan alamat email pengguna di bidang Primary email, konfigurasikan parameter lainnya, lalu klik Save. Dalam contoh ini, alamat email adalah username@example.com.
Di daftar pengguna, temukan username@example.com dan klik Activate di kolom Status. Di kotak dialog yang muncul, aktifkan username@example.com sesuai petunjuk.
Tetapkan aplikasi kepada pengguna.
Anda dapat menggunakan salah satu metode berikut untuk menetapkan aplikasi.
Tetapkan aplikasi kepada pengguna
Di panel navigasi sebelah kiri, pilih .
Klik nama aplikasi role-sso-test. Pada tab Assignments, pilih .
Dalam kotak dialog yang muncul, klik Assign di sebelah pengguna username@example.com.
Pilih admin dari daftar drop-down approle.
Dalam kotak dialog yang muncul, klik Save and Go Back.
Klik Done.
Tambahkan pengguna ke grup dan tetapkan aplikasi kepada grup
Di panel navigasi sebelah kiri, pilih . Pada halaman yang muncul, klik Add Group untuk membuat grup.
Klik nama grup. Pada halaman yang muncul, klik Manage People untuk menambahkan pengguna ke grup.
Di panel navigasi sebelah kiri, pilih .
Klik nama aplikasi role-sso-test. Pada tab Assignments, pilih .
Klik Assign di sebelah grup.
Pilih admin dari daftar drop-down approle.
Dalam kotak dialog yang muncul, klik Save and Go Back.
Klik Done.
CatatanJika pengguna termasuk dalam beberapa grup, hanya satu nilai atribut approle yang dapat digunakan. Nilai atribut yang digunakan adalah nilai yang ditentukan untuk grup tempat pengguna pertama kali ditambahkan. Jika pengguna ditambahkan ke atau dihapus dari grup, nilai atribut approle berubah. Untuk informasi lebih lanjut, lihat Dokumentasi Okta.
Hasil verifikasi
Di panel navigasi sebelah kiri, pilih .
Pada halaman Applications, klik aplikasi bernama role-sso-test.
Di bagian App Embed Link pada tab General, salin logon URL.
Buka jendela browser baru, tempel URL logon di bilah alamat, lalu tekan Enter. Di halaman logon, gunakan username@example.com untuk masuk.
Jika Anda dialihkan ke halaman yang ditentukan oleh
Default RelayState(atau halaman utama Konsol Manajemen Alibaba Cloud), login berhasil.
(Opsional) Tetapkan beberapa peran kepada pengguna di Okta
Untuk memetakan pengguna ke beberapa peran Alibaba Cloud, Anda harus menggunakan Group Attribute Statement yang dikonfigurasi dengan Nama Grup. Metode konfigurasinya adalah sebagai berikut:
Buat beberapa grup. Nama setiap grup harus mengikuti format yang sama dengan nilai atribut role dalam asersi SAML. Sebagai contoh, Anda dapat menetapkan nama grup menjadi acs:ram::177242285274****:role/admin,acs:ram::177242285274****:saml-provider/okta-provider.
Tambahkan username@example.com ke grup-grup tersebut.
Di SAML Settings aplikasi, hapus pernyataan atribut untuk Role, lalu tambahkan Group Attribute Statement. Atur Name menjadi
https://www.aliyun.com/SAML-Role/Attributes/Roledan atur Filter menjadi nilai yang menyaring nama grup, misalnya `Dimulai dengan acs:ram`.
Setelah konfigurasi selesai, masuk ke Konsol Manajemen Alibaba Cloud sebagai pengguna username@example.com. Anda akan diminta untuk memilih peran yang ingin diasumsikan.
Untuk informasi lebih lanjut tentang cara menggunakan Okta, lihat Dokumentasi Okta.