基于SAML2.0的SAP云产品Identity Authentication过程介绍
SAP官網(wǎng)的架構(gòu)圖
https://cloudplatform.sap.com/scenarios/usecases/authentication.html
上圖介紹了用戶訪問SAP云平臺(tái)時(shí)經(jīng)歷的Authentication過程。
本文使用的例子是用戶訪問SAP Marketing Cloud而非SAP云平臺(tái),但是原理一致。
步驟1:用戶向Service provider發(fā)起服務(wù)請(qǐng)求。
步驟2:Service provider把這個(gè)請(qǐng)求重定向到提供認(rèn)證的租戶上,在我這個(gè)例子是SAP ID service,即account.sap.com.
這里Marketing Cloud和SAP ID Service被配置為互相信任。
請(qǐng)求1響應(yīng)頭里的302重定向字段:https://let-me-in.hybris.com/saml/idp-redirection?httpd_location=https://hybris.com/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html
被重定向到SAP云平臺(tái)的account ID service(accounts.sap.com):
https://accounts.sap.com/saml2/idp/sso?sp=com:ydcHybris:spring:sp2&RelayState=https://hybris.com/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html
步驟3:IDP給用戶發(fā)送一個(gè)html page,要求用戶提供用戶名和密碼。
如果查看這個(gè)html的源代碼,能發(fā)現(xiàn)除了用戶名和密碼兩個(gè)輸入字段外,還包含了一些隱含字段,如下圖高亮所示,這些字段是IDP返回給用戶時(shí)在服務(wù)器端生成的,用于步驟5的IDP服務(wù)器端認(rèn)證處理:
- xsrfProtection
- spId
- spName
- authenticity_token
- idpSSOEndpoint
步驟4:用戶輸入用戶名和密碼后,點(diǎn)擊login按鈕,這些信息通過HTML form發(fā)送到了SAP ID service的服務(wù)器端:
sso請(qǐng)求的url:https://accounts.sap.com/saml2/idp/sso
第二個(gè)大寫的SSO請(qǐng)求的url:https://let-me-in.demo.hybris.com/saml/SSO
步驟5:SAP ID service的服務(wù)器端完成驗(yàn)證,發(fā)送SAML assertions作為響應(yīng)給用戶。
這個(gè)SAML響應(yīng)是XML格式的,結(jié)構(gòu)如下:
步驟6也就是最后一步,拿到這個(gè)SAML assertion后,用戶就能夠訪問service provider了。
[外鏈圖片轉(zhuǎn)存失敗(img-QZSbYmZ7-1566692676051)(https://upload-images.jianshu.io/upload_images/2085791-dcc88e58a67cac8c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]要獲取更多Jerry的原創(chuàng)文章,請(qǐng)關(guān)注公眾號(hào)"汪子熙":
總結(jié)
以上是生活随笔為你收集整理的基于SAML2.0的SAP云产品Identity Authentication过程介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vivo Pad2官宣:12.1英寸大屏
- 下一篇: FioriLaunchpad.html的