# SAP 擷取器

此區段解說如何在資料任務中設定 SAP Extractor 來源。在您開始資料任務之前，請確定已滿足[必要條件](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Global_Common/Content/SharedReplicateHDD/SAP-Extractor/extractor_Prerequisites.htm)，並且熟悉[限制和考慮事項](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Global_Common/Content/SharedReplicateHDD/SAP-Extractor/extractor_Limitations_SAP_app.htm)。

資訊備註此連接器僅受 Qlik Talend Cloud 企業版 訂閱支援。

## 設定連線屬性

本節說明可用的連線屬性。除非另有指明，否則所有屬性皆為必要。

若要開啟連接器，進行下列事項：

1. 在連線中，按一下建立連線。

2. 選取 SAP 擷取器來源連接器，然後提供下列設定：

### 連線到特定 SAP 應用程式伺服器

#### 資料來源

* 資料閘道

  選取 資料移動閘道 以用於移動您的資料。

  如需關於 資料移動閘道 的詳細資訊，請參閱 [Qlik Data Gateway - Data Movement](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm)。

* 連線至：選取應用程式伺服器。

* 伺服器：SAP Extractor 來源所在應用程式伺服器的 IP 位址。

* 執行個體編號：SAP Extractor 資料來源的執行個體編號。

* 用戶端識別碼：SAP Extractor 資料來源的系統 ID。

#### 帳戶屬性

* 使用者名稱：存取 SAP Extractor 資料來源的使用者名稱。這是指早先在 SAP 中所建立通訊使用者的使用者名稱。

* 密碼：存取 SAP Extractor 資料來源的密碼。這是指早先在 SAP 中所建立通訊使用者的密碼。

#### 安全性

請參閱下方的[安全性](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-Extractor/SAP-Extractor-source.htm#Security)。

#### CDC 屬性

執行擷取器的間隔 (分鐘)：指定檢查變更的頻率。

#### 名稱

來源連線的顯示名稱。

### 使用載入平衡連線到 SAP 系統

#### 資料來源

* 資料閘道

  選取要使用的 資料移動閘道。

  若您不想要使用 資料移動閘道，選取無。如需關於 資料移動閘道 的詳細資訊，請參閱 [Qlik Data Gateway - Data Movement](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm)。

  資訊備註此欄位無法用於 Qlik Talend Cloud 啟動器 訂閱，因為不支援 資料移動閘道。

* 連線至：選取載入平衡環境。

* 訊息伺服器：訊息伺服器主機的主機名稱或 IP 位址。

* 應用程式伺服器群組名稱：SAP 伺服器群組的名稱。這是載入平衡連線的選用性應用程式伺服器群組。

* SAP 系統名稱：SAP R/3 的名稱。

* 訊息伺服器服務：以下檔案所指定 SAP 訊息伺服器服務的名稱：

  `<system drive>:\WINDOWS\system32\drivers\etc\services`

  如您未指定值，Data Provider for SAP 會使用以下預設名稱：

  `sapms<R/3 system name>`

* 用戶端識別碼：SAP Extractor 資料來源的系統 ID。

#### 帳戶屬性

* 使用者名稱：存取 SAP Extractor 資料來源的使用者名稱。這是指早先在 SAP 中所建立通訊使用者的使用者名稱。

* 密碼：存取 SAP Extractor 資料來源的密碼。這是指早先在 SAP 中所建立通訊使用者的密碼。

#### 安全性

請參閱下方的[安全性](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-Extractor/SAP-Extractor-source.htm#Security)。

#### CDC 屬性

執行擷取器的間隔 (分鐘)：指定檢查變更的頻率。

#### 內部屬性

內部屬性用於特殊使用情況，因此不會在對話方塊中顯示。您只能在 Qlik 支援指示下使用。

根據需要使用欄位右側的 the 新建 icon 和 the 取消 icon 按鈕以新增或移除屬性。

#### 名稱

來源連線的顯示名稱。

## 安全性

在安全設定終能組態安全網路通訊 (SNC)。

### 使用 SNC 作業的先決條件

遵循下方步驟在Data Movement gateway機器上安裝安全網路通訊 (SNC)。

#### 所需項目：

* SAP 伺服器的匯出憑證 (.crt)。按如下方式匯出憑證：
  1. 登入 SAP 系統。
  2. 執行 STRUST 交易。
  3. 選擇 SNC SAPCryptolib。
  4. 在自己的證書下選擇主題。
  5. 按一下顯示 &gt; 變更選項，然後選擇匯出憑證。
  6. 從憑證區段中選擇類型並儲存檔案。
* SAPCAR.EXE
* SAP 使用者（授權用戶端）
* 安裝於相對應 SAP 伺服器上的 Crypto library 版本

#### 安裝 SNC 用戶端

1. 針對 SAP SNC 檔案建立任務空間資料夾以及 binaries（此後稱為「您的 SNC 資料夾」，舉例來說：「C:\snc\」

2. 複製匯出伺服器憑證和 SAPCAR.EXE 至您的 SNC 資料夾。

3. 前往 https://support.sap.com/en/my-support/software-downloads.html 並在安裝和升級底下搜尋 SAPCRYPTOLIB 。下載 64 位元 .SAR 至您的 SNC 資料夾。

4. 開啟命令提示字元並變更任務目錄至您的 SNC 資料夾。接著進行以下指令解除封裝 .SAR 內容至您的 SNC 資料夾：

   `sapcar -xvf LibName.sar`

   範例：

   `sapcar -xvf SAPCRYPTOLIBP_8541-20011731_32.SAR`

5. 如下新增系統環境變數：

   1. 新增名稱為 SECUDIR 的系統環境，搭配至您的 SNC 資料夾的路徑作為其數值。
   2. 新增名稱為 QLIK\_SNC\_LIB 的系統環境，搭配至 sapcrypto.dll 檔案的路徑作為其數值。
   3. 新增新增環境變數至「路徑」環境變數。

6. 決定 &lt;PSE\_File\_Name&gt; 並選擇 &lt;PSE\_PIN&gt; 保護它。您將需要在下個步驟提供此資訊。

   範例：

   `pseName: "CN=USR,OU=SAP,O=Qlik,C=IS" password: password123`

7. 決定 &lt;SNC\_NAME&gt;。看起來應該如下：`CN=USR, OU=SAP, O=Qlik, C=IS`

   也請參閱下方[決定伺服器 SNC 名稱。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SAP-Extractor/SAP-Extractor-source.htm#Getting)。

8. 確保您有必要的權限存取並執行在 SECUDIR 資料夾中的檔案，接著進行以下指令產生 PSE 檔案：

   `sapgenpse get_pse -p <PSE_File_Name>.pse -x <PSE_PIN> <SNC_NAME>`

   範例：

   `sapgenpse get_pse -p usr.pse -x password123 "CN=USR,OU=SAP,O=Qlik,C=IS"`

9. 繫結 PSE 檔案和 OS 使用者並如下在 SECUDIR 資料夾建立 CRED\_V2 檔案：

   1. 在 Qlik 複寫伺服器執行的 OS 使用者底下做註記。要在 Linux 進行此動作，進行`ps aux`指令。

   2. 執行下列命令：

      `sapgenpse seclogin -p <PSE_File_Name>.pse -x <PSE_PIN> -O <OS_USER>`

      範例：

      `sapgenpse seclogin -p usr.pse -x password123 -O SYSTEM`

10. 透過執行以下指令產生 CRT 檔案：

    `sapgenpse export_own_cert -o <PSE_File_Name>.crt -p <PSE_File_Name>.pse -x <PSE_PIN>`

    範例：

    `sapgenpse export_own_cert -o usr.crt -p usr.pse -x password123`

11. 透過執行以下指令匯入 SAP 應用程式伺服器憑證 (&lt;SERVER\_CRT&gt;) 至 PSE：

    `sapgenpse maintain_pk -a <SERVER_CRT>.crt -p <PSE_File_Name>.pse -x <PSE_PIN>`

    範例：

    `sapgenpse maintain_pk -a sapsys.crt -p usr.pse -x password123`

12. 要驗證 SAP 伺服器的 PSE 的 DN 已匯入給用戶端，進行以下指令，接著檢查「主體」數值：

    `sapgenpse maintain_pk -v -l -p <PSE_File_Name>.pse`

    範例：

    `sapgenpse maintain_pk -v -l -p usr.pse`

#### 匯入用戶端憑證

1. 連線至 SAP 應用程式伺服器並使用授權使用者導向「STRUST」交易。
2. 按兩下SNC (SAPCryptolib) 資料夾。
3. 按一下![顯示變更按鈕](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/Replicate/change-button-sap.png)切換到變更檢視。
4. 按一下![驗證匯入按鈕](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/Replicate/import-cert-sap.png)匯入憑證。
5. 在新的對話方塊中，輸入稍早建立前往 .crt 檔案的路徑，再按一下繼續。
6. 在驗證區段中驗證憑證的詳細資料。
7. 按一下新增至憑證清單以便新增憑證至清單。
8. 儲存變更。

#### 決定伺服器 SNC 名稱。

有兩個可以決定伺服器名撐的方式：

* 方法 1：使用 OpenSSL 指令解密伺服器 CRT 檔案。伺服器名稱將為主體的一部分。
* 方法 2：此方法需要適當的授權。在連線至系統時：
  1. 進行 RZ10 交易。

  2. 選擇系統檔案。

  3. 選擇延伸維修選項再按一下顯示。

  4. snc/identity/as參數的數值應為 SNC 名稱。

### 連線設定

在SAP 擷取器 連接器組態 SNC 設定，如下所示：

* 啟用安全網路通訊：選擇開啟 SNC。

* SNC 名稱：SNC 合作夥伴名稱。

  範例：

  p:CN=SYS, OU=SAP, O=Qlik, C=IS

* SNC 保護品質：選擇以下其一：

  * 僅驗證：選擇以驗證SAP 擷取器機器的身分。這是 SNC 提供最低等級的保護。
  * 整合保護：選擇偵測任何資料變更或控制，可能在 Data Movement gateway 機器和 SAP 擷取器 機器之間產生。
  * 隱私保護：選擇加密轉移的訊息預防竊聽。隱私保護也包括完整性保護。這是 SNC 提供最高等級的保護。
  * 最大可用安全性：由SAP 擷取器機器提供的最大資料保護等級。