驗證以便叫用 Cloud Run 函式

開發人員可以編寫Cloud Run 函式,提供 HTTP 端點。您可以使用 HTTP 端點,從 ABAP SDK 類別 /GOOG/CL_CLOUDFUNC_INVOKER 叫用 Cloud Run 函式。

這個程序會使用 Cloud Run 函式的名稱和位置呼叫該函式,以便取得函式的 HTTP 端點。然後使用這個端點叫用函式。如要驗證 Cloud Run 函式,您必須使用 ID 權杖叫用 HTTP 端點。

大致設定步驟如下:

啟用 Google Cloud API

在 Google Cloud 控制台啟用下列 Google Cloud API:

如要瞭解如何啟用 Google Cloud API,請參閱「啟用 API」。

建立服務帳戶以取得 Cloud Run 函式詳細資料

  1. 在 Google Cloud 控制台中建立 IAM 服務帳戶,以取得 Cloud Run 函式詳細資料。

    前往「Service accounts」(服務帳戶)

    如要瞭解如何建立服務帳戶,請參閱「建立服務帳戶」。

  2. 將下列角色授予服務帳戶:

    如需操作說明,請參閱「授予單一角色」。

建立另一個服務帳戶來叫用 Cloud Run 函式

  1. 在 Google Cloud 控制台中建立專用服務帳戶,用於叫用 Cloud Run 函式。

    前往「Service accounts」(服務帳戶)

    如要瞭解如何建立服務帳戶,請參閱「建立服務帳戶」。

  2. 視您要叫用的 Cloud Run 函式世代而定,授予服務帳戶適當的角色:

    如要進一步瞭解叫用函式的權限,請參閱「為叫用作業進行驗證」。

設定 Cloud Run 函式的驗證

視 SAP 系統託管環境而定,您可以使用下列任一方法設定權杖驗證,以便存取 Cloud Run 函式 API:

在 Compute Engine VM 上託管的 SAP 系統

如要瞭解如何在 SAP 系統託管於 Compute Engine VM 執行個體時,設定驗證機制以存取 Cloud Run 函式 API,請參閱「使用存取權權杖進行驗證」。使用您建立的服務帳戶設定用戶端金鑰,以便取得 Cloud Run 函式詳細資料。

外部代管的 SAP RISE 或 SAP 系統 Google Cloud

設定驗證機制,以便使用下列任一驗證方法存取 Cloud Run 函式 API:

使用您建立的服務帳戶設定用戶端金鑰,以便取得 Cloud Run 函式詳細資料。

設定用戶端金鑰以便叫用 Cloud Run 函式

視 SAP 系統託管的環境而定,您可以使用不同的值來設定用戶端金鑰:

在 Compute Engine VM 上託管的 SAP 系統

  1. 在 SAP GUI 中執行交易代碼 /GOOG/SDK_IMG

    或者,您也可以執行交易代碼 SPRO,然後按一下「SAP Reference IMG」

  2. 依序點選「ABAP SDK for Google Cloud」>「基本設定」>「設定用戶端金鑰」

  3. 按一下「新增項目」

  4. 在下列欄位中輸入值:

    欄位 說明
    Google Cloud 金鑰名稱 指定用戶端金鑰設定的名稱。
    Google Cloud 服務帳戶名稱

    指定您已授予叫用 Cloud Run 函式權限的服務帳戶名稱。例如:sap-example-svc-acct@example-project-123456.iam.gserviceaccount.com

    Google Cloud 範圍 指定存取範圍 https://www.googleapis.com/auth/cloud-platform
    專案 ID 指定已啟用 Cloud Run functions API 的 Google Cloud 專案 ID。
    指令名稱 請將這個欄位留空。
    授權類別 指定授權類別 /GOOG/CL_AUTH_ID_TOKEN
    授權欄位 請將這個欄位留空。
    權杖快取 請將這個欄位留空。
    權杖重新整理秒數 請將這個欄位留空。
    授權參數 1 請將這個欄位留空。
    授權參數 2 請將這個欄位留空。
  5. 儲存新項目。

外部代管的 SAP RISE 或 SAP 系統 Google Cloud

  1. 在 SAP GUI 中執行交易代碼 /GOOG/SDK_IMG

    或者,您也可以執行交易代碼 SPRO,然後按一下「SAP Reference IMG」

  2. 依序點選「ABAP SDK for Google Cloud」>「基本設定」>「設定用戶端金鑰」

  3. 按一下「新增項目」

  4. 在下列欄位中輸入值:

    欄位 說明
    Google Cloud 金鑰名稱 指定用戶端金鑰設定的名稱。
    Google Cloud 服務帳戶名稱

    指定您已授予叫用 Cloud Run 函式權限的服務帳戶名稱。例如:sap-example-svc-acct@example-project-123456.iam.gserviceaccount.com

    Google Cloud 範圍 指定存取範圍 https://www.googleapis.com/auth/cloud-platform
    專案 ID 指定已啟用 Cloud Run functions API 的 Google Cloud 專案 ID。
    指令名稱 請將這個欄位留空。
    授權類別 指定授權類別,如下所示:
    • 如要使用 JWT 進行驗證,請指定 /GOOG/CL_AUTH_JWT_ID_TOKEN
    • 如要使用 Workload Identity 聯盟進行驗證,請指定子類別,其中包含 /GOOG/CL_AUTH_WIF_ID_TOKEN 類別的實作項目。詳情請參閱「實作 ABAP 程式碼,從 IdP 擷取安全性權杖」。
    授權欄位 請將這個欄位留空。
    權杖快取 請將這個欄位留空。
    權杖重新整理秒數 請將這個欄位留空。
    授權參數 1
    • 如要使用 JWT 進行驗證,如果您為 SSF 應用程式使用自訂名稱,請指定您在「建立新的 Secure Store and Forward (SSF) 應用程式」一節中建立的 SSF 應用程式名稱。
    • 如要使用 Workload Identity 聯盟進行驗證,請指定工作負載身分集區 ID。
    授權參數 2
    • 如果是使用 JWT 進行驗證,請將這個欄位留空。
    • 如要使用 Workload Identity Federation 進行驗證,請指定工作負載身分識別資訊提供者 ID。
  5. 儲存新項目。

取得支援

如需協助解決 ABAP SDK for Google Cloud 的問題,請按照下列步驟操作: