設定 SAP Procurement 解決方案的驗證
SAP ERP 連接器是設計來讓多位使用者可以同時存取和使用應用程式;因此,不會不用連線。 使用者認證是在連接中提供,而連接至 SAP 系統所需的其他詳細資料 (例如伺服器詳細資料與安全性設定) 則會做為動作的一部分提供。
啟用單一登入 (SSO) 可讓您輕鬆地從 SAP 重新整理資料,同時遵守 SAP 中設定的使用者層級權限。 有數個方法可讓您設定 SSO 以簡化身分識別和存取權管理。
SAP ERP 連接器支援以下驗證類型:
Authentication type | 使用者如何連接 | 設定步驟 |
---|---|---|
SAP 驗證 | 使用 SAP 使用者名稱及密碼存取 SAP 伺服器。 | 步驟 4 |
Windows 驗證 | 使用 Windows 使用者名稱及密碼存取 SAP 伺服器。 | 步驟 1、2、3、4 |
Microsoft Entra ID 驗證 | 使用 Microsoft Entra ID 存取 SAP 伺服器。 | 步驟 1、2、3、4 |
注意
在 Microsoft Entra ID 和 SAP 中設定 SSO 需要特定的管理權限。 在設定 SSO 之前,請務必取得每個系統所需的管理員權限。
其他資訊:
步驟 1:設定 Kerberos 限制委派
Kerberos 限制委派 (KCD) 提供由系統管理員允許的安全使用者或服務資源存取權 (不需多重認證) 。 為 Windows 和 Microsoft Entra ID 驗證設定 Kerberos 限制委派。
將閘道 Windows 服務當作具有服務主體名稱 (SPNs) (SetSPN) 的網域帳戶來執行。
設定工作:
設定閘道服務帳戶的 SPN。 身為網域管理員,您可以使用 Windows 隨附的 Setspn 工具來啟用委派。
調整閘道的通訊設定。 啟用出站 Microsoft Entra ID 連線並檢查防火牆和連接埠設定以確保通訊。
設定標準 Kerberos 限制委派。 深為網域管理員可為服務設定網域帳戶,以限制該帳戶在單一網域上執行。
將閘道服務帳戶變更為網域帳戶。 在標準安裝中,閘道是作為預設電腦本機服務帳戶 NT Service\PBIEgwService 執行。 它必須以網域帳戶的方式執行,才能讓 SSO 的 Kerberos 票證更加便利。
其他資訊:
步驟 2:將 SAP ERP 設定為啟用使用 CommonCryptoLib (sapcrypto.dll)
若要使用 SSO 存取您的 SAP 伺服器,請確定:
- 您使用 CommonCryptoLib 做為其安全網路通訊 (SNC) 程式庫,為 Kerberos SSO 設定 SAP 伺服器。
- 您的 SNC 名稱以 CN 開頭。
重要
請確定在安裝閘道的電腦上未執行 SAP 安全登入用戶端 (SLC)。 SLC 快取 Kerberos 票證時,可能會干擾閘道能否使用 Kerberos 進行 SSO。 如需詳細資訊,請檢閱 SAP Note 2780475 (需要 s- 使用者)。
從 SAP Launchpad 下載 64 位元的 CommonCryptoLib (
sapcrypto.dll
) 版本 8.5.25 或更新版本,並將它複製到閘道電腦上的資料夾。在您複製
sapcrypto.dll
的相同目錄中,建立名為sapcrypto.ini
的檔案,其中包含下列內容:ccl/snc/enable_kerberos_in_client_role = 1
.ini
檔案包含 CommonCryptoLib 在閘道案例中啟用 SSO 所需的設定資訊。 請確定路徑 (例如c:\sapcryptolib\
) 同時包含sapcrypto.ini
和sapcrypto.dll
。.dll
和.ini
檔案必須位於相同位置。同時授與
.ini
和.dll
檔案存取已驗證的使用者群組的權限。 閘道服務使用者和服務使用者模擬的 Active Directory 使用者,都需要這兩個檔案的讀取和執行權限。建立
CCL_PROFILE
系統環境變數,並將其值設定為路徑sapcrypto.ini
。重新啟動閘道服務。
更多資訊:使用 CommonCryptoLib 將 Kerberos 單一登入用於 SAP BW 的 SSO
步驟 3:啟用 Azure AD 和 Windows 驗證的 SAP SNC
SAP ERP 連接器透過啟用 SAP 的安全網路通訊 (SNC) 支援 Microsoft Entra ID 和 Windows Server AD 驗證。 SNC 是 SAP 系統架構中的一個軟體層,提供外部安全性產品的介面,因此可以建立安全單一登入至 SAP 環境。 下列屬性指南可協助設定。
屬性 | 描述: |
---|---|
使用 SNC | 如果您要啟用 SNC,請設為是。 |
SNC 程式庫 | 與 NCo 安裝位置或絕對路徑有關的 SNC 程式庫名稱或路徑。 範例是 sapcrypto.dll 或 c:\sapcryptolib\sapcryptolib.dll 。 |
SNC SSO | 指定連接器是否使用服務身分識別或終端使用者認證。 設為開啟,以使用終端使用者身分識別。 |
SNC 合作夥伴名稱 | 後端伺服器的名稱。 範例:p:CN=SAPserver 。 |
SNC 保護品質 | 用於此特定目的地或伺服器 SNC 通訊的服務品質。 預設值是由後端系統定義。 最大值是由用於 SNC 的資訊安全產品定義。 |
使用者的 SAP SNC 名稱必須等於使用者的 Active Directory 完整網域名稱。 例如,p:CN=JANEDOE@REDMOND.CORP.CONTOSO.COM
必須等於 JANEDOE@REDMOND.CORP.CONTOSO.COM
。
注意
僅限 Microsoft Entra ID 驗證 - Active DirectorySAP 服務主體帳戶必須在 SupportedEncryptionType 屬性上定義 AES 128 或 AES 256。
步驟 4:設定 SAP 伺服器和使用者帳戶以允許動作
查看 SAP Note 460089 - 外部 RFC 程式的最低授權設定檔,以了解有關受支援的使用者帳戶類型和每種動作類型所需的最低授權的更多資訊,例如遠端函數呼叫 (RFC)、商務應用程式編程介面 (BAPI),和中間文件 (IDOC)。
SAP 使用者帳戶需要存取 RFC_Metadata
功能群組及各自的功能模組,才能進行下列作業:
作業 | 存取功能模組 |
---|---|
RFC 動作 | RFC_GROUP_SEARCH 和 DD_LANGU_TO_ISOLA |
讀取表格動作 | RFC BBP_RFC_READ_TABLE 或 RFC_READ_TABLE |
授與嚴格的最低 SAP 伺服器存取權給您的 SAP 連接 | RFC_METADATA_GET 和 RFC_METADATA_GET_TIMESTAMP |