ABAP Netweaver, Hybris Commerce和SAP 雲平臺的登錄認證
在事務碼SICF裏選擇一個服務,在明細頁面對Procedure字段點擊F1,查看Logon Procedure的幫助文檔。
通過這個鏈接打開對應的幫助文檔,可以看到下列七種登錄手段。
在我的SAP Community博客裏有更詳細的介紹:Learn more detail about Standard logon procedure
Hybris Commerce
在Hybris Administration Console裏,輸入用戶名和密碼,點擊LOGIN後:
在Chrome開發者工具裏觀察到一個post請求: j_spring_security_check
這個請求定義在一個form action裏,還有兩個字段用於存儲用戶輸入的用戶名和密碼:
在Tomcat的日誌文件裏也能觀察到這個post請求:
在hac目錄的config文件夾下有一個配置文件spring-security-config.xml:
裏面定義了用這個bean,coreAuthenticationProvider來做認證:
SAP雲平臺CloudFoundry環境
在SAP雲平臺的CloudFoundry環境裏,Application Router作為所有應用訪問的入口。
上圖1~8的圖例描述了部署在SAP雲平臺CloudFoundry環境上的Web應用是如何通過Cloud Connector訪問On-Premise系統上的服務。
- App Router作為用戶訪問的入口。
- 用戶訪問請求被重定向到XSUAA。XSUAA要求用戶登錄。用戶完成登錄操作後,一個JSON Web Token(簡稱為JWT1)被創建,發送給App Router,並緩存於App Router內。
- App Router將請求和步驟2生成的JSON Web Token一起轉發給Web應用。
4a. Web應用再次向XSUAA請求一個JSON Web Token(JWT2), 用於訪問destination實例。
4b. Web應用並行地向XSUAA請求第三個JSON Web Token(JWT3),用於connectivity實例的訪問。 - Web應用使用JWT2獲取destination配置。
- Web將請求和JWT3轉發給connectivity實例。
- SAP Cloud Platform Connectivity將請求通過Secure tunnel轉發給Cloud Connector。
- Cloud Connector將請求發給On-Premise system。
App Router怎麽知道需要把請求轉發給具體哪一個XSUAA實例呢?在App Router的manifest.yml裏配置
需要在SAP雲平臺CloudFoundry環境的space裏配置同名的實例:
App Router更多詳細介紹,請參考李貝寧的公眾號文章SAP成都研究院李三郎:SCP Application Router簡介.
要獲取更多Jerry的原創技術文章,請關註公眾號"汪子熙"或者掃描下面二維碼:
ABAP Netweaver, Hybris Commerce和SAP 雲平臺的登錄認證