Single Sign-On
Glasswall Halo สามารถกำหนดค่าเพื่อเปิดใช้ การลงชื่อเข้าใช้ครั้งเดียว (SSO) ด้วย OpenID Connect (OIDC) ได้
SSO เป็นวิธีการยืนยันตัวตนที่ช่วยให้ผู้ใช้ลงชื่อเข้าใช้ระบบซอฟต์แวร์อิสระหลายระบบได้ด้วยชุดข้อมูลรับรองเพียงชุดเดียว การใช้ SSO หมายความว่าผู้ใช้ไม่จำเป็นต้องลงชื่อเข้าใช้ทุกแอปพลิเคชันที่ใช้งาน
ด้านล่างนี้คือข้อมูลเกี่ยวกับวิธีกำหนดค่า SSO ภายในโซลูชัน Glasswall Halo ของคุณ โดยใช้ Microsoft Entra ID เป็นผู้ให้บริการการจัดการตัวตนและการเข้าถึง (IAM)
โดยหลักการแล้ว โซลูชัน IAM ใดก็ตาม ที่รองรับ OIDC สามารถกำหนดค่าให้รองรับ SSO สำหรับ Glasswall Halo ได้
ข้อกำหนดเบื้องต้นสำหรับการผสานรวม Microsoft Entra ID
- ต้องมีข้อตกลงระดับองค์กรของ Microsoft สำหรับบัญชี Microsoft Entra ID เพื่อเปิดใช้ตัวเลือก SSO นี้
- ต้องกำหนดค่าชื่อโดเมนสำหรับพอร์ทัล Halo (portal service) เพื่อใช้การยืนยันตัวตนแบบ SSO
- จำเป็นต้องมี Azure App Registrations ทุกครั้งที่ต้องเปิดใช้การยืนยันตัวตนแบบ SSO โดยใช้ Microsoft Entra ID
- Three App Registrations must be created:
Cdrplatform-API-accessCdrplatform-portal-accessCdrplatform-portal-client
- สคริปต์ shell ที่แนบมา ช่วยสร้าง app registrations เหล่านี้ ป้อนชื่อโดเมนที่คุณต้องการใช้สำหรับพอร์ทัลเป็นอาร์กิวเมนต์ให้กับสคริปต์ ตัวอย่าง:
bash create-azure-app-registrations.sh halo.glasswall.com
- enterprise application
ar-Halo-portal-clientต้องได้รับ admin consent
การกำหนดค่า
เปิดใช้งานการยืนยันตัวตน API ของ Microsoft Entra ID
หากต้องการเปิดใช้งานการยืนยันตัวตนแบบอิง Microsoft Entra ID ให้ตั้งค่า configuration.authenticationscheme=bearer และตั้งค่าตัวแปร tenant_id, api_domain และ valid_audiences ระหว่างการ deploy Helm chart
หมายเหตุ: ตั้งค่า valid_audiences เป็น Application (client) ID ของ app registration cdrplatform-api-access (พบได้ใน Azure portal ภายใต้ 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
กำหนดค่า SSO login สำหรับ Glasswall Halo
ตั้งค่าตัวแปร portal_domain, portal_client_id, tenant_id ในคำสั่งด้านล่าง
portal_domain คือโดเมนที่ใช้สำหรับ TLS บนบริการพอร์ทัล และยังเป็นโดเมนที่ใช้ใน App Registration cdrplatform-portal-client ด้วย
portal_client_id คือ application (client) ID ของ App Registration cdrplatform-portal-client
enabled_pages รวมหน้าต่างๆ เพิ่มเติมตามบริการที่มีการ deploy:
- ICAP Server: เพิ่ม
IcapSettings,IcapRequests,IcapReporting - Storage Monitor: เพิ่ม
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
ถัดไป บริการ portal access ต้องเปิดใช้การยืนยันตัวตนแบบ SSO โดยใช้ Microsoft Entra ID.
ตั้งค่าตัวแปร tenant_id, portal_domain และ valid_audiences ด้านล่าง
หมายเหตุ: ตั้งค่า valid_audiences เป็น Application (client) ID ของการลงทะเบียนแอป cdrplatform-portal-access (พบได้ใน Azure portal ภายใต้ 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
บทบาทผู้ใช้
การกำหนดบทบาทให้ผู้ใช้พอร์ทัล
- ไปที่แอปพลิเคชันองค์กรชื่อ
ar-cdrplatform-portal-accessภายใน Microsoft Entra ID.
หมายเหตุ: ภาพหน้าจอใช้ ar-cdrplatform-perf-portal-access เป็นตัวอย่าง

- ไปที่ส่วน Users and groups แล้วเลือก Add user/group.

- เลือกผู้ใช้หรือกลุ่มที่ต้องการ จากนั้นเลือกบทบาทที่เหมาะสม

- คลิก Assign.

การกำหนดบทบาทให้ผู้ใช้ API
- ไปที่แอปพลิเคชันองค์กรชื่อ
ar-cdrplatform-API-accessใน Microsoft Entra ID. - จากส่วน Users and groups ให้คลิก Add user/group.
- Select the desired user or group, then choose the appropriate role.
- คลิก Assign.