Chuyển đến nội dung chính

Đăng nhập một lần

Glasswall Halo có thể được cấu hình để bật Đăng nhập một lần (SSO) với OpenID Connect (OIDC).

SSO là một phương thức xác thực cho phép người dùng đăng nhập bằng một bộ thông tin xác thực vào nhiều hệ thống phần mềm độc lập. Việc sử dụng SSO có nghĩa là người dùng không phải đăng nhập vào mọi ứng dụng họ sử dụng.

Dưới đây là thông tin về cách cấu hình SSO trong giải pháp Glasswall Halo của bạn bằng cách sử dụng Microsoft Entra ID làm nhà cung cấp quản lý danh tính và truy cập (IAM).

Về nguyên tắc, bất kỳ giải pháp IAM nào cung cấp OIDC đều có thể được cấu hình để hỗ trợ SSO cho Glasswall Halo.

Điều kiện tiên quyết để tích hợp Microsoft Entra ID

  • Cần có thỏa thuận doanh nghiệp Microsoft cho tài khoản Microsoft Entra ID để bật tùy chọn SSO này.
  • Phải cấu hình tên miền cho cổng Halo (dịch vụ cổng) để sử dụng xác thực SSO.
  • Cần có Azure App Registrations bất cứ khi nào cần bật xác thực SSO bằng Microsoft Entra ID.
  • Three App Registrations must be created:
    • Cdrplatform-API-access
    • Cdrplatform-portal-access
    • Cdrplatform-portal-client
  • Tập lệnh shell đính kèm giúp tạo các đăng ký ứng dụng này. Nhập tên miền bạn muốn sử dụng cho portal làm đối số cho tập lệnh. Ví dụ:
bash create-azure-app-registrations.sh halo.glasswall.com
  • Ứng dụng doanh nghiệp ar-Halo-portal-client phải được cấp admin consent.

Cấu hình

Bật xác thực API Microsoft Entra ID

Để bật xác thực dựa trên Microsoft Entra ID, hãy đặt configuration.authenticationscheme=bearer. Đồng thời đặt các biến tenant_id, api_domainvalid_audiences trong khi triển khai Helm chart.

Lưu ý: Đặt valid_audiences thành Application (client) ID của đăng ký ứng dụng cdrplatform-api-access (tìm thấy trong Azure portal tại 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

Cấu hình đăng nhập SSO cho Glasswall Halo

Đặt các biến portal_domain, portal_client_id, tenant_id trong các lệnh bên dưới.
portal_domain là miền được dùng cho TLS trên dịch vụ portal và cũng là miền được dùng trong App Registration cdrplatform-portal-client.

portal_client_id là ID ứng dụng (client) của App Registration cdrplatform-portal-client.

enabled_pages bao gồm các trang bổ sung dựa trên những dịch vụ được triển khai:

  • ICAP Server: thêm IcapSettings,IcapRequests,IcapReporting
  • Storage Monitor: thêm 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

Tiếp theo, dịch vụ portal access cần bật xác thực SSO bằng Microsoft Entra ID.

Đặt các biến tenant_id, portal_domainvalid_audiences bên dưới.

Lưu ý: Đặt valid_audiences thành Application (client) ID của đăng ký ứng dụng cdrplatform-portal-access (có trong Azure portal tại 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

Vai trò người dùng

Để gán vai trò cho người dùng cổng thông tin

  1. Đi tới ứng dụng doanh nghiệp có tên ar-cdrplatform-portal-access trong Microsoft Entra ID.

Lưu ý: Các ảnh chụp màn hình sử dụng ar-cdrplatform-perf-portal-access làm ví dụ.

Sso_1 Sso_2

  1. Đi tới phần Users and groups và chọn Add user/group.

Sso_3

  1. Chọn người dùng hoặc nhóm mong muốn, sau đó chọn vai trò phù hợp.

Sso_4 Sso_5

  1. Nhấp vào Assign.

Sso_6 Sso_7


Để gán vai trò cho người dùng API