我是SSO實施的新手。我們正在考慮爲使用PHP應用程序(由我們支持)的客戶端實施SSO,以便他們的員工登錄到應用程序。我們正在爲此設置Simple SAML。我一直在閱讀有關SSO的文章,其中許多內容都很有幫助。請原諒我問這個,我知道這是愚蠢的。在這種情況下,誰是IDP,誰將成爲服務提供者。客戶端顯然也將SSO用於其他應用程序。有人能夠從我們的最終結果中看出我需要做些什麼。我會研究如何去做每一件事情。有人可以通過提及需要實施的事情來提供幫助。爲php應用程序實現SSO的步驟
1
A
回答
2
誰是IDP誰將成爲服務提供者。
IDP(身份提供者)是以saml條款創建,存儲,維護和驗證用戶或委託人身份的人。所以在你的情況下,它是客戶端應用程序。
SP(服務提供商)是向用戶提供服務或資源(由IDP進行身份驗證)的服務提供商,因此在您的情況下它是您的應用程序。
可能有人請提的是,需要實現的事情幫助。
,你可以在上面的圖中看到,當用戶嘗試訪問您網站上的資源,你將不得不重定向到IDP確認該用戶是否已經驗證過了,你應該爲他們服務的資源,他們正在找。通過元數據在IDP和SP之間交換SSO URL和其他詳細信息。
一旦IDP對用戶進行了身份驗證,他們將在您的應用程序url上發佈響應。此響應包含一個assertion,通過它您將瞭解一些用戶詳細信息以及用戶是否已通過身份驗證。你將不得不解析這個響應(xml)。此外,這些斷言通常用證書籤名,並以64編碼。
您還必須考慮SLO,因此當用戶在您的網站中單擊註銷時,您可能必須從應用程序中清除其會話並重定向它們到IDP,以便他們也從那裏註銷。
正如smartin所建議的那樣,您可以使用一些庫來實現SAML。我也正在學習SAML,因爲我們正在將我們當前的應用程序轉換爲IDP :)
我發現SAML官方文檔和一些圖表非常有幫助。 http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0-cd-02.html
1
您的應用程序是SP,客戶將向您提供IdP元數據以註冊您的SP。
爲了SAML支持添加到PHP應用程序,你有2種選擇:
他們都是有據可查的,你會需要花一些時間閱讀/學習。
相關問題
- 1. 步驟來實現使用PHP
- 2. XACML作爲現有應用程序的演進步驟
- 3. SAML:如何爲Web應用程序實現SSO(單點登錄)
- 4. 爲node.js應用程序實現SSO解決方案
- 5. 如何實現openAM SSO到我現有的Web應用程序
- 6. 步驟去編程android應用程序
- 7. 將lightswitch應用程序集成到現有Web應用程序的步驟
- 8. 部署Dataflow應用程序的步驟
- 9. 步驟在將Web應用程序轉換爲iPad時需要的步驟
- 10. 在我的Android應用程序中實現搜索(edittext)的步驟
- 11. 在更換現有Android應用程序時記住的步驟
- 12. 創建Spring Web應用程序:步驟?
- 13. ASP.NET應用程序 - 調試步驟
- 14. 如何將asp.net mvc5一起實現Office 365 sso和谷歌應用程序sso?
- 15. 步驟在應用程序商店上傳iPhone應用程序
- 16. 在React-Redux應用程序上實現SSO
- 17. 我們是否可以通過AIR應用程序實現SSO
- 18. 如何在Android應用程序中實現SSO
- 19. 在Oracle應用程序中使用並行程序的步驟
- 20. 爲託管在不同服務器上的Web應用程序實現SSO
- 21. 實現SSO和數據同步
- 22. 爲應用程序部署SQLite的設置步驟是什麼?
- 23. 爲生產部署django應用程序的必要步驟
- 24. 爲Windows 8創建簽名桌面應用程序的步驟?
- 25. 將LightSwitch應用程序轉換爲MVC的步驟
- 26. 爲現有(Spring安全+ Spring MVC + Restfull)應用程序開發Angular2 frent-end應用程序的步驟?
- 27. 使用Shiro實現SSO實施的分步指南
- 28. 將用戶註冊步驟注入到IdentityServer3 SSO過程
- 29. Lukas-Kanade步驟的高效matlab實現
- 30. Grails:實現SSO
非常感謝。非常感謝您的幫助! –