Langkau ke kandungan utama

Single Sign-On

Glasswall Halo boleh dikonfigurasikan untuk mendayakan Single Sign-On (SSO) dengan OpenID Connect (OIDC).

SSO ialah kaedah pengesahan yang membolehkan pengguna log masuk menggunakan satu set kelayakan untuk berbilang sistem perisian bebas. Dengan menggunakan SSO, pengguna tidak perlu log masuk ke setiap aplikasi yang mereka gunakan.

Di bawah ialah maklumat tentang cara mengkonfigurasi SSO dalam penyelesaian Glasswall Halo anda menggunakan Microsoft Entra ID sebagai penyedia pengurusan identiti dan akses (IAM).

Pada prinsipnya, mana-mana penyelesaian IAM yang menawarkan OIDC boleh dikonfigurasikan untuk menyokong SSO bagi Glasswall Halo.

Prasyarat untuk integrasi Microsoft Entra ID

  • Perjanjian perusahaan Microsoft untuk akaun Microsoft Entra ID diperlukan untuk mendayakan pilihan SSO ini.
  • Nama domain mesti dikonfigurasikan untuk portal Halo (portal service) bagi menggunakan pengesahan SSO.
  • Azure App Registrations diperlukan apabila pengesahan SSO menggunakan Microsoft Entra ID perlu didayakan.
  • Three App Registrations must be created:
    • Cdrplatform-API-access
    • Cdrplatform-portal-access
    • Cdrplatform-portal-client
  • Skrip shell yang dilampirkan membantu mencipta pendaftaran aplikasi ini. Masukkan nama domain yang anda ingin gunakan untuk portal sebagai argumen kepada skrip. Contoh:
bash create-azure-app-registrations.sh halo.glasswall.com
  • Aplikasi perusahaan ar-Halo-portal-client mesti diberikan persetujuan pentadbir.

Konfigurasi

Dayakan pengesahan API Microsoft Entra ID

Untuk mendayakan pengesahan berasaskan Microsoft Entra ID, tetapkan configuration.authenticationscheme=bearer. Tetapkan juga pemboleh ubah tenant_id, api_domain dan valid_audiences semasa menggunakan carta Helm.

Nota: Tetapkan valid_audiences kepada ID Aplikasi (klien) bagi pendaftaran aplikasi cdrplatform-api-access (ditemui dalam portal Azure di bawah App registrations > Overview).

tenant_id=""
api_domain=""
valid_audiences="" # Application (client) ID of the cdrplatform-api-access app registration (copy from Azure portal)
helm upgrade cdrplatform-api-access cdrplatform-api-access \
--reuse-values \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${api_domain} \
--set ingress.tls.secretName=tls-secret \
--set configuration.AuthenticationScheme=Bearer \
--set configuration.Authentication__Schemes__Bearer__ValidAudiences__0=${valid_audiences} \
--set configuration.Authentication__Schemes__Bearer__ValidIssuer=https://sts.windows.net/${tenant_id}/ \
--set configuration.Authentication__Schemes__Bearer__Authority=https://login.microsoftonline.com/${tenant_id}/v2.0/ \
--atomic

Konfigurasikan log masuk SSO untuk Glasswall Halo

Tetapkan pemboleh ubah portal_domain, portal_client_id, tenant_id dalam arahan di bawah.
portal_domain ialah domain yang digunakan untuk TLS pada perkhidmatan portal dan juga domain yang digunakan dalam App Registration cdrplatform-portal-client.

portal_client_id ialah ID aplikasi (klien) bagi App Registration cdrplatform-portal-client.

enabled_pages merangkumi halaman tambahan berdasarkan perkhidmatan yang digunakan:

  • ICAP Server: tambah IcapSettings,IcapRequests,IcapReporting
  • Storage Monitor: tambah SharePointMonitoring,OneDriveMonitoring,OutlookMonitoring
portal_domain=""
portal_client_id=""
tenant_id=""
# Add pages based on deployed services:
# + ICAP Server: IcapSettings,IcapRequests,IcapReporting
# + Storage Monitor: SharePointMonitoring,OneDriveMonitoring,OutlookMonitoring
enabled_pages="SystemSettings\,PolicySettings\,ValidationSettings"
helm upgrade cdrplatform-portal cdrplatform-portal \
--reuse-values \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${portal_domain} \
--set ingress.tls.secretName=tls-secret \
--set configuration.BackendUrl="https://${portal_domain}" \
--set configuration.EnabledPages=${enabled_pages} \
--set configuration.OIDC.ProviderOptions.Authority="https://login.microsoftonline.com/${tenant_id}/v2.0" \
--set configuration.OIDC.ProviderOptions.RedirectUri="https://${portal_domain}/authentication/login-callback" \
--set configuration.OIDC.ProviderOptions.ClientId="${portal_client_id}" \
--set configuration.OIDC.ProviderOptions.PostLogoutRedirectUri="https://${portal_domain}/authentication/logout-callback" \
--atomic

Seterusnya, perkhidmatan portal access perlu mendayakan pengesahan SSO menggunakan Microsoft Entra ID.

Tetapkan pemboleh ubah tenant_id, portal_domain dan valid_audiences di bawah.

Nota: Tetapkan valid_audiences kepada Application (client) ID bagi pendaftaran aplikasi cdrplatform-portal-access (ditemui dalam portal Azure di bawah App registrations > Overview).

tenant_id=""
portal_domain=""
valid_audiences="" # Application (client) ID of the cdrplatform-portal-access app registration (copy from Azure portal)
helm upgrade cdrplatform-portal-access cdrplatform-portal-access \
--reuse-values \
--set ingress.tls.enabled=true \
--set ingress.tls.domain=${portal_domain} \
--set ingress.tls.secretName=tls-secret \
--set configuration.AuthenticationScheme=Bearer \
--set configuration.Authentication__Schemes__Bearer__ValidAudiences__0=${valid_audiences} \
--set configuration.Authentication__Schemes__Bearer__ValidIssuer=https://sts.windows.net/${tenant_id}/ \
--set configuration.Authentication__Schemes__Bearer__Authority=https://login.microsoftonline.com/${tenant_id}/v2.0/ \
--atomic

Peranan pengguna

Untuk menetapkan peranan kepada pengguna portal

  1. Navigasi ke aplikasi perusahaan bertajuk ar-cdrplatform-portal-access dalam Microsoft Entra ID.

Nota: Tangkapan skrin menggunakan ar-cdrplatform-perf-portal-access sebagai contoh.

Sso_1 Sso_2

  1. Navigasi ke bahagian Users and groups dan pilih Add user/group.

Sso_3

  1. Pilih pengguna atau kumpulan yang dikehendaki, kemudian pilih peranan yang sesuai.

Sso_4 Sso_5

  1. Klik Assign.

Sso_6 Sso_7


Untuk menetapkan peranan kepada pengguna API