簡體   English   中英

azure 面向 SAP 網關的 APIM 客戶端證書

[英]azure APIM client certificate towards SAP gateway

在 SAP S/4HANA 中調用 OData 服務時,我們嘗試使用客戶端證書進行身份驗證。 我們從 azure APIM 實例調用。 作為證書,我們根據此博客創建了一個自簽名證書並配置了 SAP S/4HANA( https://blogs.sap.com/2020/05/03/x.509-certificate-based-logon-to- odata-services/ ) 然后我們從瀏覽器中測試它,它就像一個魅力。 但是從 azure APIM 調用我們從 SAP S/4HANA 得到以下響應:

<?xml version="1.0" encoding="utf-8"?> <error xmlns:xsi="http://www.w3.org/2001/XMLSchema-Instance">
<code>HTTP/404/E/Not Found</code>
<message> Service /sap/opu/odata/sap/xxxxyyyy/xxyyzz call was terminated because the corresponding service is not available.The termination occurred in system UFI with error code 404 and for the reason Not found. Please select a valid URL. If it is a valid URL, check whether service /sap/opu/odata/sap/xxxxyyyy/xxyyzz is active in transaction SICF. If you do not yet have a user ID, contact your system administrator. </message>

SAP S/4HANA 支持表示,然后從瀏覽器調用他們可以“看到”有效負載中的證書,但隨后從 APIM 調用,有效負載是“空的”。

我從 SAP S/4HANA 網關服務器獲得了跟蹤日志,並且我注意到從瀏覽器調用與從 APIM 調用的細微差別:

瀏覽器調用(成功):[Thr 140708195055360] HttpModGetDefRules:確定缺陷: COPY_CERT_TO_MPI (1)

APIM 調用(失敗):[Thr 140708197697280] HttpModGetDefRules:確定了缺陷: NOTHING (0)

所以證書顯然是到達 SAP S/4HANA 網關服務器,而不是 SAP S/4HANA Odata 服務器。 所以不知何故,它在 SAP S/4HANA 網關服務器上丟失了,然后它來自 azure APIM。

我試圖使調用 100% 相同(相同的標頭相同的值),但我無法控制在 azure apim 中添加證書的方式還是可以一個?

我讀到可以使用以下策略設置證書正文:

<authentication-certificate body="@(context.Variables.GetValueOrDefault<byte[]>("byteCertificate"))" password="optional-certificate-password" />

但我不知道如何獲得“byteCertificate”的正確值。

有人做過嗎? 或者有沒有人遇到過類似的問題?

我們終於找到了解決方案,感謝 microsoft APIM 支持團隊:非常感謝 :)

APIM 充當反向代理並添加與此角色相關的標頭。 header "X-Forwarded-For" 導致 SAP 拒絕請求並顯示上述誤導性錯誤消息。 我們找到了 SAP 可以配置的解決方案:

ICM 參數“icm/HTTPS/accept_ccert_for_x_forwarded_for_requests”必須設置為“true”——默認設置為“false”。

(不能使用 APIM 端的策略刪除 header。)

哪個版本的 SAP S/4 HANA 有參數 ICM 參數“icm/HTTPS/accept_ccert_for_x_forwarded_for_requests”??

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM