將 Cloud Storage 做為 SAP 的內容存放區

本文說明如何使用 Google Cloud 適用的 ABAP SDK 在內部部署或任何雲端版本,將 Cloud Storage 做為 SAP 的內容存放區。Cloud Storage 可處理 SAP 相關資料儲存需求,用於儲存各種檔案類型 (例如 PDF 和圖片),以及封存業務資料。

將 SAP 文件儲存在 Cloud Storage 中,並將業務資料封存,即可取得可擴充且具成本效益的解決方案,同時維持與 SAP 工作流程的相容性。

使用 Cloud Storage 做為內容存放區時,您可以儲存的文件檔案大小上限為 5 TB。這是在 Google Cloud上將個別上傳內容上傳至 Cloud Storage 值區的限制。

資料流程圖

下圖顯示如何使用 Google Cloud 的 ABAP SDK,將 SAP 系統中的文件和業務資料封存至 Cloud Storage。

將 Cloud Storage 用於做為 SAP 的內容存放區

如上圖所示,從 SAP 到 Google Cloud的資料流程包含下列元件:

  • 附加至商家物件的文件:代表您要儲存的附加至商家物件的文件,例如發票附件。

  • SAP 中的業務資料:代表您想從 SAP ERP 系統封存的業務資料。

  • SAP 封存程序:這是 SAP 中的程序,可處理將業務資料從 SAP 資料庫移至儲存空間的程序。

  • SAP ArchiveLink 服務:SAP ArchiveLink 服務可做為 SAP 系統和 Cloud Storage 之間的橋樑,用於移動文件和業務資料。

  • ABAP SDK for Google Cloud:SDK 可讓 SAP 系統與 Google Cloud之間進行通訊。提供與 Google Cloud API 互動的必要函式。

  • SAP Internet Communication Manager (ICM):這是 SAP NetWeaver 應用程式伺服器的元件,可處理網路通訊。它可做為 HTTP 要求的閘道。

  • Cloud Storage:這是由 Google Cloud提供的雲端式物件儲存服務,用於儲存文件和商務資料。

安全性

封存 SAP 資料時,系統會透過 Cloud Storage API 將資料安全地傳輸至 Cloud Storage。這項通訊會使用 HTTPS 加密和 OAuth 驗證機制進行保護。接著,TLS 加密技術可確保資料在整個網際網路傳輸過程中安全無虞。

啟用 Google Cloud後,無論資料儲存在磁碟或備份媒體中,靜態資料加密功能都能確保資料安全。根據預設,Google 會管理加密金鑰,為靜態資料提供基本層級的保護。雖然 Google 會管理預設加密金鑰,但您也可以使用 Cloud Key Management Service 建立及管理自有的加密金鑰,以便進一步控管。

在 Cloud Storage 中,您可以透過 IAM 實作存取權控管,進一步保護已封存的資料,並防止人為竄改。請只提供具備 WRITEREAD 權限的必要服務帳戶。如果需要人工查看,請在 Cloud Storage 值區上擴充嚴格 VIEWREAD 權限。

請務必遵循 IAM 最佳做法,授予最低權限的存取權。請只授予使用者或服務帳戶執行特定工作所需的必要權限。

定價

可免費安裝及使用的 Google Cloud ABAP SDK 包含一個子包,可讓您將 Cloud Storage 實作為 SAP 的內容存放區。不過,您必須支付 Cloud Storage 資料量產生的費用。如要進一步瞭解 Cloud Storage 的價格,請參閱「價格」一文。

將 Cloud Storage 設為 SAP 的內容存放區

本節說明如何將 Cloud Storage 設定為 SAP 系統的內容存放區。

啟用 Cloud Storage API

在 Google Cloud 專案中啟用 Cloud Storage API。如要瞭解如何啟用 Google Cloud API,請參閱「啟用 API」。

建立 Cloud Storage 值區

SAP 資料會儲存在 Cloud Storage 值區中。如要建立儲存空間值區,請前往「建立儲存空間值區」一文,並按照操作說明進行。請務必為資料選取適當的儲存空間級別。如要全面瞭解 Cloud Storage 可用的儲存空間級別,請參閱「儲存空間級別」。

如要瞭解建立及管理儲存空間值區的最佳做法,請參閱「值區命名規範」和「值區位置」。

安裝 SDK

當您安裝最新版的 ABAP SDK for Google Cloud 的內部部署版或任何雲端版本時,系統會為您安裝用於將 Cloud Storage 做為內容存放區的子套件。如要瞭解如何安裝 SDK,請參閱「安裝及設定 Google Cloud 適用的 ABAP SDK 的內部部署或任何雲端版本」。

如果您已使用 Google Cloud ABAP SDK 的 1.9 以下版本或任何雲端版本,請將 SDK 更新至最新版本。如需更多資訊,請參閱「更新 Google Cloud 適用的 ABAP SDK」。

這項功能僅適用於 ABAP SDK for Google Cloud 的內部部署版或任何雲端版。

設定驗證方法

設定驗證機制後,您就可以在內部或任何 Google Cloud 專用 ABAP SDK 雲端版本中存取 API。 Google Cloud 您可以使用相同的驗證方法存取 Cloud Storage API。如要瞭解如何在內部部署或任何雲端版 ABAP SDK for Google Cloud 中設定驗證機制,請參閱「驗證機制總覽」。

請記下您在驗證設定中建立的用戶端金鑰。您在將 Cloud Storage 設為內容存放區時,會使用這個用戶端金鑰。

必要的 IAM 角色

請確認您在用戶端金鑰設定中設定的 API 存取權專用服務帳戶,是否具有 Cloud Storage 值區的存取權。

在用戶端金鑰設定中設定的服務帳戶必須具備下列 IAM 角色:

建立背景使用者

如要將 Cloud Storage 做為 SAP 的內容存放區,SDK 會隨附 SICF HTTP 處理常式類別 /GOOG/CL_CONTENT_REPO_GCS

如要在執行階段叫用 SICF HTTP 處理常式類別 /GOOG/CL_CONTENT_REPO_GCS,您必須建立背景使用者。

如要建立背景使用者,請按照下列步驟操作:

  1. 建立背景使用者。如要瞭解如何建立背景使用者,請參閱「建立背景使用者」。

  2. 提供使用者 ID:ARCHIVEUSER

  3. 為背景使用者設定初始密碼。

    請記下使用者 ID 和密碼,以供日後使用。

SAP ArchiveLink 服務需要 SICF 節點,才能在 SAP 和 Cloud Storage 之間建立通訊連結。

如要建立 SICF 節點,請按照下列步驟操作:

  1. 在 SAP GUI 中開啟交易 SICF
  2. 前往要建立新節點的適當位置。
  3. 在父節點上按一下滑鼠右鍵,然後選取「新增子元素」
  4. 輸入 SAP ArchiveLink 服務的名稱,例如 gcs_archivelink
  5. 按兩下新建的服務,即可存取其屬性。
  6. 前往「登入資料」分頁。
  7. 在「Procedure」欄位中,選取「Required with Logon Data」
  8. 為您在「建立背景使用者」一節中建立的背景使用者提供 ARCHIVEUSER 和密碼。
  9. 前往「Handler list」分頁。
  10. 如要設定內容存放區的 HTTP 處理常式類別,請輸入 /GOOG/CL_CONTENT_REPO_GCS
  11. 儲存新項目。

建立內容存放區定義

為 Cloud Storage 整合建立內容存放區定義。

如要建立內容存放區定義,請按照下列步驟操作:

  1. 在 SAP GUI 中開啟交易 OAC0
  2. 按一下「新增項目」
  3. 輸入內容存放區的名稱。
  4. 輸入內容存放區的說明。
  5. 在「Document area」欄位中,選取「ARCHIVELINK」
  6. 在「Storage type」(儲存類型) 欄位中,選取「HTTP 內容伺服器」
  7. 在「Version no.」欄位中輸入內容伺服器的版本號碼。
  8. 在「HTTP 伺服器」欄位中,輸入 SAP 系統的 HTTP 主機名稱。
  9. 在「Port number」欄位中,輸入 SAP 系統的 HTTP 通訊埠。如果您使用的是 HTTPS 通訊埠,請在「SSL 通訊埠號碼」欄位中輸入該通訊埠號碼。
  10. 在「HTTP 指令碼」欄位中,輸入您為 SAP ArchiveLink 服務建立的 SICF 節點名稱及其路徑,例如 sap/bc/gcs_archivelink

    這項資訊會用於 SAP 應用程式和內容伺服器 SICF 節點之間的內部通訊。

  11. 儲存新項目。

設定 Cloud Storage 的內容存放區

設定連線參數,讓 SAP 系統與 Cloud Storage 做為內容存放區互動。

如要設定內容存放區,請按照下列步驟操作:

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

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

  2. 依序點選「ABAP SDK for Google Cloud」>「Content Repository: Configuration」

  3. 按一下「新增項目」

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

    欄位 資料類型 說明
    內容存放區 字串 內容存放區定義的名稱。詳情請參閱「建立內容存放區定義」。
    Google Cloud 金鑰名稱 字串 您在驗證設定期間為驗證設定的用戶端金鑰。 Google Cloud
    Cloud Storage 值區 字串 您要儲存 SAP 資料的 Cloud Storage 值區名稱。
    資料檔案命名慣例 字串 儲存在 Cloud Storage 值區中的資料檔案檔名命名慣例。請選取下列其中一個選項:
    • 將資料檔案儲存為 DOC_ID-data
    • 將資料檔案儲存為資料
  5. 儲存新項目。

您的內容存放區已準備就緒。您可以使用已設定的內容存放區,針對 SAP 支援的用途儲存文件和封存業務資料。

用途

您可以將 Cloud Storage 做為內容存放區,用於下列用途:

儲存文件

如要將附加至業務物件的文件儲存在 Cloud Storage 值區中,請在交易 OAC3 中選取相關業務物件,然後設定您在「建立內容存放區定義」一節中建立的內容存放區。

如要進一步瞭解如何設定內容存放區,以便儲存附加至業務物件的文件,請參閱 SAP 說明文件「如何設定 Archivelink 情境」。

封存資料

如要在 Cloud Storage 值區中封存業務資料,請使用 SAP Archive Administration (SARA) 交易,設定您在「建立內容存放區定義」一節中建立的內容存放區。

如要瞭解如何設定內容存放區來封存業務資料,請參閱 SAP 說明文件「Archive Administration」。

強化功能結束

將 Cloud Storage 實作為 SAP 的內容存放區時,您可以使用增強點,插入程式碼來新增自訂功能。

下表列出強化點支援的函式、方法,以及包含強化點的類別。

函式 類別 方法 Spot 選項
DOC_SEARCH 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS DOC_SEARCH /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_DOC_SEARCH
APPEND 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS APPEND /GOOG/ES_CONTENT_REPO_GCS /GOOG/PRE_PROCESS_APPEND
APPEND 方法後的額外後續處理 /GOOG/CL_CONTENT_REPO_GCS APPEND /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_APPEND
PROCESS_CREATE 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_CREATE /GOOG/ES_CONTENT_REPO_GCS /GOOG/PRE_PROCESS_CREATE
PROCESS_CREATE 方法中的其他後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_CREATE /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_CREATE
PROCESS_CREATE_POST 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_CREATE_POST /GOOG/ES_CONTENT_REPO_GCS /GOOG/PRE_PROCESS_CREATE_POST
PROCESS_CREATE_POST 方法中的其他後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_CREATE_POST /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_CREATE_POST
PROCESS_GET 方法中的其他後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_GET /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_GET
PROCESS_UPDATE 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_UPDATE /GOOG/ES_CONTENT_REPO_GCS /GOOG/PRE_PROCESS_UPDATE
PROCESS_UPDATE 方法中的其他後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_UPDATE /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_UPDATE
PROCESS_UPDATE_POST 方法中的額外預處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_UPDATE_POST /GOOG/ES_CONTENT_REPO_GCS /GOOG/PRE_PROCESS_UPDATE_POST
PROCESS_UPDATE_POST 方法中的其他後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_UPDATE_POST /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_UPDATE_POST
刪除後的額外後續處理 /GOOG/CL_CONTENT_REPO_GCS PROCESS_DELETE /GOOG/ES_CONTENT_REPO_GCS /GOOG/POST_PROCESS_DELETE

取得支援

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

社群資源

如要將 Cloud Storage 做為 SAP 的內容存放區,請參閱下列社群資源: