OpenID Connect (OIDC) adalah protokol otentikasi dan otorisasi berbasis OAuth 2.0 yang umum digunakan untuk menerapkan Single Sign-On (SSO). Setelah mengonfigurasi kebijakan keamanan Service Mesh (ASM) untuk menerapkan OIDC SSO, Anda dapat menggunakan informasi identitas dari Alibaba Cloud Identity as a Service (IDaaS) atau penyedia identitas lainnya (IdP) yang sesuai dengan protokol OIDC untuk masuk dengan satu ID ke beberapa sistem terkait tanpa perlu memodifikasi aplikasi Anda. Hal ini meningkatkan keamanan aplikasi serta menyederhanakan pengembangan dan manajemen aplikasi.
Prasyarat
Aplikasi telah diterapkan di kluster yang ditambahkan ke instance ASM.
Gateway ingress telah diterapkan, dan alamat IP gateway ingress telah diperoleh.
Gateway Istio dan layanan virtual telah dibuat untuk memastikan bahwa jalur berikut dapat diakses. Untuk informasi lebih lanjut, lihat Langkah 1 hingga Langkah 3 dalam Gunakan sumber daya Istio untuk merutekan lalu lintas ke versi layanan yang berbeda.
http://${alamat IP gateway ingress}/productpage http://${alamat IP gateway ingress}/api/v1/products/1 http://${alamat IP gateway ingress}/static/jquery.min.jsIdP telah dikonfigurasi. Untuk informasi lebih lanjut, lihat Langkah 1 dan Langkah 2 dalam Integrasi Alibaba Cloud IDaaS dengan ASM untuk menerapkan single sign-on.
Setelah IdP dikonfigurasi, Anda dapat memperoleh informasi berikut yang akan digunakan dalam Langkah 5.
redirect uri: http://${alamat IP gateway ingress}/oauth2/callback issuer: https://eiam-api-cn-hangzhou.aliyuncs.com/v2/idaas_tbn25osdlmz6gtqfq3j2pz****/app_ml5tzapsl7zmfo53wb3nwk****/oidc client id: app_ml5tzapsl7zmfo53wb3nwk**** client secret: CSCfHeZ1nyvfMWyKHtE8ZRdif7j89dv9CvmJLurtGC****
Prosedur
Dalam contoh ini, instance Alibaba Cloud IDaaS digunakan sebagai IdP untuk menerapkan SSO ke aplikasi dalam ASM. Jika Anda menggunakan OIDC IdP yang dikelola sendiri, lihat Integrasi Keycloak dengan ASM untuk menerapkan SSO.
Masuk ke Konsol ASM. Di panel navigasi sebelah kiri, pilih .
Di halaman Mesh Management, klik nama instance ASM. Di panel navigasi sebelah kiri, pilih .
Di halaman ASMSecurityPolicy, klik Create.
Dalam kotak dialog Create ASMSecurityPolicy, klik OIDC Single Sign-On dan kemudian klik OK.
Dalam langkah OIDC Config dari wizard konfigurasi, atur parameter dan klik Next.
Tabel berikut menjelaskan parameter tersebut.
Parameter
Deskripsi
ASMSecurityPolicyName
Nama kebijakan keamanan ASM. Dalam contoh ini, nama tersebut diatur menjadi test-oidc.
Redirect address
Opsi berikut tersedia: Use ingressgateway IP address dan Customized Domain. Dalam contoh ini, Use ingressgateway IP address dipilih. http dan ingressgateway dipilih.
Callback Address
URL pengalihan.
OIDC Issuer URL
URL yang digunakan untuk mengidentifikasi dan mengotentikasi penerbit OIDC.
Client ID
ID klien yang disediakan oleh penerbit.
Client Secret
Rahasia klien yang disediakan oleh penerbit.
Cookie Secret
String seed untuk cookie aman, yang dapat dienkripsi Base64.
Cookie Expire
Masa berlaku cookie. Cookie kadaluarsa setelah periode berakhir. Jika Anda menetapkan parameter ini ke 0, cookie tidak akan kadaluarsa.
Cookie refresh interval
Interval di mana cookie diperbarui. Jika Anda menetapkan parameter ini ke 0, cookie tidak diperbarui.
Scopes
Jenis informasi pengguna yang dapat diperoleh. Scopes yang ditentukan harus didukung oleh penerbit.
Untuk informasi lebih lanjut tentang cara menetapkan Scopes, lihat Integrasi Alibaba Cloud IDaaS dengan ASM untuk menerapkan single sign-on.

Dalam langkah Workload and Match Rules dari wizard konfigurasi, klik Add Workload Group. Dalam kotak dialog New Workload Group, atur parameter, klik OK, dan kemudian klik Submit.
Tabel berikut menjelaskan cara mengonfigurasi parameter dalam contoh ini.
Parameter
Deskripsi
Workload Group Name
Atur parameter menjadi test-policy.
Workload List
Gateway ingress yang Anda tentukan untuk parameter Redirect address pada langkah sebelumnya dipilih secara default dan tidak dapat diubah. Jika Anda ingin memilih workload lain, kembali ke langkah OIDC Config dan ubah pengaturan Redirect address.
CatatanJika Anda menetapkan parameter Redirect address ke Customized Domain dalam langkah OIDC Config, lakukan langkah-langkah berikut:
Dalam kotak dialog New Workload Group, klik Add Workload dan pilih Gateway Scope.
Dalam kotak Select workloads, pilih workload yang ingin Anda tambahkan, klik ikon
untuk menambahkan workload yang dipilih ke kotak selected, dan kemudian klik OK.
Match Rule List
Dua mode pencocokan berikut tersedia:
Auth If Matched: Pengguna harus diautentikasi sebelum mereka dapat mengakses workload.
Bypass Auth If Matched: Tidak diperlukan autentikasi untuk mengakses workload.
Untuk contoh ini, pilih Auth If Matched. Pilih Custom Matching Rules untuk Matching Rules. Kemudian, klik Add Match Rule dan atur aturan berikut: Aturan tersebut menentukan bahwa permintaan untuk mengakses sumber daya di jalur yang dimulai dengan /static dan /api memerlukan autentikasi OIDC.
Aturan 1: Nyalakan saklar Path dan atur parameter menjadi /static/*.
Aturan 2: Nyalakan saklar Path dan atur parameter menjadi /api/*.

Dalam langkah Complete dari wizard konfigurasi, pesan "Pembuatan ASMSecurityPolicy berhasil" muncul, menunjukkan bahwa kebijakan keamanan ASM telah dibuat. Anda dapat mengklik YAML untuk melihat sumber daya yang dibuat, atau klik Complete untuk kembali ke halaman ASMSecurityPolicy untuk melihat kebijakan keamanan yang dibuat.
Verifikasi apakah konfigurasi OIDC SSO berlaku.
Buka browser dan kunjungi URL berikut:
http://${alamat IP gateway ingress}/productpage http://${alamat IP gateway ingress}/api/v1/products/1 http://${alamat IP gateway ingress}/static/jquery.min.jsHasil berikut menunjukkan bahwa konfigurasi OIDC SSO berlaku:
Permintaan untuk mengakses jalur yang dimulai dengan
/productpagediizinkan tanpa autentikasi.
Permintaan untuk mengakses jalur yang dimulai dengan
/apidan/staticmemerlukan autentikasi.
Ubah konfigurasi OIDC SSO.
Di halaman ASMSecurityPolicy, temukan kebijakan keamanan OIDC SSO yang ingin Anda ubah dan klik Edit di kolom Actions.
Dalam langkah OIDC Config dari wizard konfigurasi, klik Next.
Dalam langkah Workload and Match Rules, temukan grup workload yang ingin Anda ubah dan klik Edit di kolom Operator. Ubah pengaturan parameter, klik OK, dan kemudian klik Submit.
Tabel berikut menjelaskan cara mengubah pengaturan parameter dalam contoh ini.
Parameter
Deskripsi
Match Mode
Pilih Bypass Auth If Matched.
Matching Rules
Klik Add Match Rule dan atur aturan berikut: Aturan tersebut menentukan bahwa permintaan untuk mengakses jalur yang dimulai dengan /productpage dan /static diizinkan tanpa autentikasi OIDC.
Aturan 1: Nyalakan saklar Path dan atur parameter menjadi /productpage.
Aturan 2: Nyalakan saklar Path dan atur parameter menjadi /static/*.
Buka browser dalam mode penyamaran dan kunjungi URL berikut:
http://${alamat IP gateway ingress}/productpage http://${alamat IP gateway ingress}/api/v1/products/1 http://${alamat IP gateway ingress}/static/jquery.min.jsHasil berikut menunjukkan bahwa konfigurasi OIDC SSO baru berlaku.
Permintaan untuk mengakses jalur yang dimulai dengan
/productpagedan/staticdiizinkan tanpa autentikasi.Permintaan untuk mengakses jalur yang dimulai dengan
/apimemerlukan autentikasi.
Referensi
Untuk informasi lebih lanjut tentang item konfigurasi aplikasi OIDC, seperti operasi API, rotasi rahasia, jenis grant OIDC yang didukung oleh IDaaS, konfigurasi dalam IDaaS, dan konfigurasi dalam aplikasi, lihat Konfigurasi Umum, Konfigurasikan SSO, Konfigurasi OIDC SSO, dan Aturan untuk nilai bidang id_token OIDC yang diperluas.
Ketika pengguna yang telah masuk ke aplikasi menggunakan SSO yang didukung oleh IDaaS ingin keluar, pengguna dapat memulai logout global di aplikasi untuk mengakhiri sesi aplikasi serta sesi logon utama IDaaS. Untuk informasi lebih lanjut, lihat SLO.