『單一登入(Single Sign-On),簡稱 SSO 在我們的日常生活中已經是眾多用戶不可或缺的一種身分驗證方式,我們不再需要在不同的應用程式上註冊不同的使用者帳戶,不需要記著一大堆的帳戶密碼,透過SSO整合讓我們能夠透過一組帳號驗證並使用眾多應用程式。』
SSO 整合準備
在開始思考如何進行 SSO 整合前,我們要先來認識什麼是 SAML 以及 IdP 與 SP :
安全斷言標記式語言(Security Assertion Markup Language,SAML)
SAML是一種可擴展標記語言的用戶身份驗證的技術,透過HTTP request 傳遞 base64 編碼的XML文件,在IdP與SP之間進行標準化授權通信。
身分提供商(Identity Provider,IdP)
用戶憑證和其他識別信息由稱為 IdP 集中式系統存儲及管理的可信系統,對其他網站和應用程序的訪問 IdP 是在輸入憑據後將用戶驗證為用戶的身份提供者。
服務提供商(Service Provider,SP)
服務提供商向最終用戶提供服務,依靠 SAML 傳輸 IdP 提供的內容驗證用戶身份,簡而言之,服務提供者不對用戶進行身份驗證,而是向身份提供商請求身份驗證決策。
**整合前規劃 **
在多方考量下筆者認為,大部分的企業通常習慣使用微軟的 Active Directory 對使用者進行管理,而在公有雲裡的 Azure AD 在各方面的功能及應用上都是最合適的選擇,因此將透過 Azure 做為 IdP 使用 Azure Active Directory (AAD) 建立的使用者管理筆者 Alibaba Cloud 的帳號。
預計的 SSO 流程圖
實務操作上的考量:
在 Alibaba Cloud 上提供了兩種 SSO 登入方式,分別為:
實務操作規劃
為了後續更方便進行分類管理,明日的實作將使用用戶SSO來實現登入!
請大家敬請期待明天的實戰演練吧!