# 在 Windows 伺服器上設定 Qlik 資料閘道 - 直接存取

本主題概述如何在 Windows 伺服器上設定 Qlik 資料閘道 - 直接存取。其提供先決條件和安裝說明，並描述您在 Windows 伺服器上使用 Qlik 資料閘道 - 直接存取 時應注意的限制和考慮事項。

## 使用 Qlik 資料閘道 - 直接存取 時的最佳做法

為了在使用 Qlik 資料閘道 - 直接存取 時有成功的體驗，強烈建議遵守下列最佳做法：

* 請勿使用相同的 直接存取閘道 進行開發、使用者接受測試和生產，因為這將會增加可用資源過載風險並影響系統穩定性。從商務觀點，資源不足加上穩定性降低，可能會對生產應用程式資料造成延遲更新。

* 為了獲得最佳效能，請將 直接存取閘道 安裝在盡可能靠近資料來源的伺服器。

* 直接存取閘道 應按照以下系統要求的規定，安裝在專用 Windows Server。請勿安裝在實際資料庫伺服器或與其他 Qlik 產品一起安裝，包括 Qlik DataTransfer、Qlik Sense Desktop 和 Qlik Sense Enterprise。

## 系統必要條件

本區段說明在 Windows 伺服器上使用 Qlik 資料閘道 - 直接存取 的軟體、連接埠和硬體需求。

### 軟體必要條件

* 直接存取閘道應在防火牆後方安裝於 Windows Server 機器。該伺服器應能夠存取資料來源。

  支援的 Windows Server 版本：

  * 2016

  * 2019

  * 2022

  * 2025

    Windows Server 2025 需要 Qlik 資料閘道 - 直接存取 1.7.0 或更高版本。

* 需要安裝三個不同的 .NET 版本。僅安裝下列 .NET 版本：

  * 需要 .NET 4.8 以進行安裝。

  * .NET 6.0.x Runtime (x64) 和 ASP.NET Core Runtime 6.0.x (x64) (最新修補程式)

    最新消息備註從 直接存取閘道 1.6.8 開始，不再需要 .NET 6.0.x。

  * .NET 8.0.x Runtime (x64) 和 ASP.NET Core Runtime 8.0.x (x64) (最新修補程式)

  資訊備註

  * 不支援安裝高於 8.0.x 的 .NET 執行階段版本。
  * 直接存取閘道 1.6.6 和 1.6.7 需要 .NET 和 ASP.NET Core Runtime 的版本 6.0.x 和 8.0.x。

  如需關於如何驗證目前安裝之 .NET 版本的說明，請參閱 https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed。

* Microsoft Visual C++ 2015-2022 可轉散發套件 (x64)。若偵測到目前未安裝可轉散發套件，直接存取閘道 設定將提示您安裝可轉散發套件。

#### 使用 SAP 資料來源時的其他軟體必要條件

* 如[為 Qlik Data Gateway - 直接存取安裝 SAP NetWeaver RFC SDK](https://help.qlik.com/en-US/cloud-services/Subsystems/SAP_Connectors_Help/Content/Connectors_SAP/Installation/Installing-sap-connectors-for-direct-access-gw.htm) （僅提供英文版） 所述，在 Qlik 資料閘道 - 直接存取 機器上安裝 SAP NetWeaver RFC SDK。
* 在 Qlik 資料閘道 - 直接存取 機器上安裝 Microsoft Visual C++ 2013 可轉散發 (x64)。

### 需要的連接埠和通訊協定

有關所需的連接埠和通訊協定，請參閱 [必要的連接埠和通訊協定](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setting-up.htm#Ports)。

### 建議硬體

* 8 核心

* 32 GB 記憶體

* 100 GB 儲存空間

#### 最低硬體

最低硬體僅適用於使用較小的專用伺服器部署 (開發、測試和生產) 的特定情境，搭配持續較低的資料量和數量有限的並行載入。

* 4 核心
* 8 GB 記憶體
* 100 GB 儲存空間

可能需要更多資源來持續處理不斷增加的資料量和更高數量的並行載入。效能變得不可接受的點取決於每個獨特環境中的使用案例和設定。

### 系統密碼編譯

只有在 Windows 設定為以 FIPS 140-2 核准的操作模式 (FIPS 模式) 執行時，Qlik Cloud 政府 才支援使用 Qlik Data Gateway - Direct Access。若要開啟 FIPS 模式，啟用 Windows 政策：[系統密碼編譯：使用與 FIPS 相容的演算法進行加密、雜湊和簽章](https://learn.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/system-cryptography-use-fips-compliant-algorithms-for-encryption-hashing-and-signing)。如需更多資訊，請參閱[以 FIPS 140-2 核准的操作模式使用 Windows](https://learn.microsoft.com/en-us/windows/security/threat-protection/fips-140-validation#using-windows-in-a-fips-140-2-approved-mode-of-operation) 程序的步驟 3。

資訊備註不需要安裝其他模組 。Qlik Data Gateway - Direct Access 僅使用 Windows 已提供且隨附於[驗證模組清單](https://learn.microsoft.com/en-us/windows/security/threat-protection/fips-140-validation#microsoft-fips-140-2-validated-cryptographic-modules)中的模組。Qlik Data Gateway - Direct Access 強制僅透過 .NET 執行階段使用 FIPS 驗證的密碼編譯演算法 。

## 安裝 Qlik 資料閘道 - 直接存取

設定直接存取閘道涉及在 管理 活動中心和直接存取閘道伺服器都需要執行的程序。

資訊備註需要在 管理 活動中心內執行的資料閘道程序需要租用戶管理員權限。

Qlik 資料閘道 - 直接存取 設定步驟 — 安裝於 Windows 伺服器

Qlik 資料閘道 - 直接存取 設定步驟 — 安裝於 Windows 伺服器

Qlik 資料閘道 - 直接存取Qlik 資料閘道 - 直接存取 設定步驟 — 安裝於 WindowsWindows 伺服器 ![直接存取閘道流程圖表 - 在 Windows 伺服器上的設定步驟。](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Resources/Images/direct-access-gateway_setup.png)

### 階段一：下載 Qlik 資料閘道 - 直接存取

1. 在 管理 活動中心內，選取 資料閘道。

   任何現有資料閘道將列於[顯示關於每個閘道基本資訊的表格](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-managing-console.htm#gateprop)。

2. 按一下部署工具列按鈕。

   就會開啟部署資料閘道對話方塊。

3. 選取 資料閘道 - 直接存取 (Windows)，接受 Qlik 客戶合約，然後按一下 下載。Direct Access gateway 設定檔 (qlik-data-gateway-direct-access.exe) 將下載到您的機器。

### 階段二：在保護資料來源之防火牆後方的伺服器上安裝 直接存取閘道

此階段需要安裝 直接存取閘道。您可以採互動方式或無訊息方式安裝 直接存取閘道。

資訊備註解除安裝 直接存取閘道 不會移除設定。換言之，如果您解除安裝 直接存取閘道 的一個版本，然後安裝另一個版本，則新安裝的版本將使用與解除安裝的版本相同的設定。

資訊備註覆寫預設的 Windows 服務帳戶需要 直接存取閘道 1.7.4 或更高版本。

#### 互動式安裝 直接存取閘道

1. 下載完成後，將設定檔複製到防火牆後方的 Windows Server 機器。確認機器可以與資料來源通訊。

2. 開啟 qlik-data-gateway-direct-access.exe 檔案以啟動安裝精靈。

   資訊備註

   * 直接存取閘道 需要 Microsoft .NET 6.x 和 .NET 8.x。若設定偵測到安裝了之前版本，將會提示您安裝所需版本。.NET 安裝完成後，您將需要重新啟動 直接存取閘道 機器，然後重新執行 直接存取閘道 設定。

   * 若偵測到目前未安裝可轉散發套件，設定將提示您安裝 Microsoft Visual C++ 2015-2022 可轉散發套件 (x64)。

   資訊備註

   * 在安裝過程中，您可以選擇覆寫以下預設：
     * 安裝路徑 (C:\Program Files\Qlik\ConnectorAgent)。

     * 將安裝 直接存取閘道 的 Windows 服務帳戶 (LocalSystem)。指定的服務帳戶必須同時具有「以服務身分登入」權限以及對 直接存取閘道 安裝資料夾的「寫入」權限。

3. 繼續按一下下一步 ，直到設定完成為止。

#### 無訊息安裝、升級和解除安裝 直接存取閘道

資訊備註支援 直接存取閘道 1.6.4 起。

無訊息安裝 直接存取閘道 很實用，例如，若您需要在組織各處的數個機器安裝 直接存取閘道。如有需要，您也可以覆寫預設的 Windows 服務帳戶 (LocalSystem)。

必要條件

務必先安裝所有[必備軟體](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm#Software)的正確版本，再開始無訊息安裝，因為，與互動式安裝不同，這無法在安裝期間進行。

安裝或升級 直接存取閘道

以管理員身分開啟 CMD 提示，並從包含 直接存取閘道 執行檔的資料夾執行下列命令：

qlik-data-gateway-direct-access.exe /S InstallPath="full-path" AcceptEula=yes

其中應使用引號以實際安裝路徑取代 full-path，例如 "C:\TMP\Qlik"。

資訊備註需要將 AcceptEula 參數設定為「是」。將 AcceptEula 參數設定為「是」，代表您同意 [Qlik 客戶協議](https://www.qlik.com/us/legal/legal-agreements)的條款。

覆寫預設的 Windows 服務帳戶

預設情況下，直接存取閘道 安裝在 LocalSystem Windows 服務帳戶下。

若要使用不同的帳戶安裝 直接存取閘道，請在命令中包含以下參數：

* ServiceAccount：服務帳戶名稱。

  資訊備註指定的服務帳戶必須同時具有「以服務身分登入」權限以及對 直接存取閘道 安裝資料夾的「寫入」權限。

* ServicePassword：指定服務帳戶的密碼。

用於覆寫 Windows 服務帳戶且含有參數的命令範例

qlik-data-gateway-direct-access.exe /S InstallPath="C:\TMP\Qlik" AcceptEula=yes ServiceAccount="qliktech.com\user" ServicePassword=kZmbkb8m8BGGz91

解除安裝 直接存取閘道

以管理員身分開啟 CMD 提示，並從包含 直接存取閘道 執行檔的資料夾執行下列命令：

qlik-data-gateway-direct-access.exe /S /uninstall

#### 解決安裝問題

安裝記錄檔案對於解決安裝或升級問題很實用：

從 直接存取閘道 1.7.7，記錄檔案的完整路徑是：

&lt;直接存取閘道 安裝資料夾&gt;\data\logs\Qlik 資料閘道 - 直接存取\_&lt;Timestamp&gt;.log

如果您的 直接存取閘道 版本早於 1.7.7，則記錄檔案的完整路徑是：

C:\Users\&lt;user&gt;\AppData\Local\Temp\Qlik 資料閘道 - 直接存取\_&lt;Timestamp&gt;.log

### 第三階段：設定 直接存取閘道

如需詳細設定說明，請參閱 [階段三：設定 直接存取閘道](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setting-up.htm#Stage3)。

### 階段四：註冊資料閘道

下一步是註冊資料閘道。 這可以透過 管理 活動中心或在命令列上完成。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm)

#### 選項 1：透過 管理 活動中心

您可以透過 管理 活動中心註冊閘道。請參閱 [選項 1：透過 管理 活動中心](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setting-up.htm#StageConsole)。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm)

#### 選項 2：使用命令列自動註冊

您也可以透過命令列自動註冊 直接存取閘道，而無需使用 管理 活動中心。此方法使用由 OAuth 用戶端產生的短期工作階段 Token。

資訊備註

若要自動註冊並移除自動註冊的閘道，您需要下列權限：

* 自動註冊：您需要將 註冊 Direct Access gateway 管理員權限設定為 允許。

* 移除自動註冊的閘道：您需要將 註冊 Direct Access gateway 管理員權限設定為 允許。

如需權限的詳細資訊，請參閱 [預設權限與自訂角色](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Admin/permissions-scopes-capacity-model.htm)。

資訊備註自動註冊僅支援透過命令列進行。目前尚未提供自動閘道註冊的 REST API。

必要條件

具有建立和管理 OAuth 用戶端之租用戶管理員權限的 API 金鑰。

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm)使用自動註冊來註冊閘道

1. 在 直接存取閘道 機器上產生 JSON Web Key (JWK)。此命令會在 直接存取閘道 機器上建立私密金鑰：

   ConnectorAgent.exe qcs generate\_jwk

2. 複製指令傳回的 JWK。

3. 使用 API 金鑰，透過租用戶管理員 API 為閘道建立 OAuth 用戶端，並提供您在上一步驟中複製的 JWK。

   curl "https://&lt;tenant-url&gt;/api/v1/oauth-clients" -X POST -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;api-key&gt;' -d '{"appType":"web","clientName":"&lt;client-name&gt;","description":"","allowedScopes":["admin.direct-access-gateways:register\_gateway","admin.direct-access-gateways:delete\_gateway"],"allowedAuthMethods":["private\_key\_jwt"],"publicKeys":[&lt;jwk&gt;],"allowedGrantTypes":["client\_credentials"]}'

4. 複製回應中傳回的 client\_id 值。

5. 將 OAuth 用戶端的同意方法設定為受信任。

   curl "https://&lt;tenant-url&gt;/api/v1/oauth-clients/&lt;client-id&gt;/connection-configs/me" -X PATCH -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;api-key&gt;' -d '[{"op":"replace","path":"/consentMethod","value":"trusted"}]'

6. 在 直接存取閘道 機器上建立註冊宣告：

   ConnectorAgent.exe qcs generate\_registration\_assertion --tenant\_url &lt;tenant-url&gt; --client-id &lt;client-id&gt;

7. 要求存取 Token。這也會觸發自動建立閘道所使用的機器人使用者帳戶。

   curl "https://&lt;tenant-url&gt;/oauth/token" -X POST -H 'content-type: application/x-www-form-urlencoded' -d "grant\_type=client\_credentials" -d "client\_id=&lt;client-id&gt;" -d "client\_assertion\_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer" -d "client\_assertion=&lt;assertion&gt;" -d "scope=admin.direct-access-gateways:register\_gateway admin.direct-access-gateways:delete\_gateway"

8. 查詢自動建立的機器人使用者。

   curl "https://&lt;tenant-url&gt;/api/v1/users" -H 'accept: application/json' -H 'authorization: Bearer &lt;API-key&gt;'

9. 複製 my-bot-client 的 ID。

10. 建立「DAG 註冊」角色。

    curl "https://&lt;tenant-url&gt;/api/v1/roles" -X POST -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer API-key' -d '{"name":"DAG Registration","description":"Role for registering a gateway","assignedScopes":["admin.direct-access-gateways:register\_gateway", "admin.direct-access-gateways:delete\_gateway"]}'

11. 指派租用戶層級角色給機器人使用者。

    curl "https://&lt;tenant-url&gt;/api/v1/users/&lt;bot-user-ID&gt;" -X PATCH -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;API-key&gt;' -d ' [ { "op": "replace", "path": "/assignedRoles", "value": [ { "name": "DAG Registration" } ] } ]'

12. 取得直接存取閘道空間。

    curl "https://&lt;tenant-url&gt;/api/v1/spaces" -H 'authorization: Bearer &lt;API-key&gt;'

13. 複製 Direct Access Gateway 空間 ID。

14. 將機器人使用者以 可編輯 權限新增至空間。

    curl "https://&lt;tenant-url&gt;/api/v1/spaces/&lt;DAG-space-ID&gt;/assignments" -X POST -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;API-key&gt;' -d '{"assigneeId": "&lt;Bot-user-ID&gt;","roles": ["consumer","dataconsumer","producer"], "type": "user"}'

15. 若現有的判斷提示已過期，請產生新的判斷提示。

    ConnectorAgent.exe qcs generate\_registration\_assertion --tenant\_url &lt;tenant-url&gt; --client-id &lt;client-ID&gt;

    請在命令提示字元中依照所需步驟操作。由於 OAuth 用戶端已建立，因此需要使用此 API 呼叫來更新 JWK：

    curl "https://&lt;tenant-url&gt;/api/v1/oauth-clients/&lt;client-ID&gt;" -X PATCH -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;API-key&gt;' -d '[{"op":"replace","path":"/publicKeys/0/y","value":"&lt;Y-value-from-JWK&gt;"},{"op":"replace","path":"/publicKeys/0/x","value":"&lt;X-value-from-JWK&gt;"},{"op":"remove","path":"/publicKeys/0/use"},{"op":"replace","path":"/publicKeys/0/kid","value":"&lt;kid-value-from-JWK&gt;"}]'

16. 註冊閘道：

    ConnectorAgent.exe qcs register\_gateway --tenant\_url &lt;tenant-url&gt; --gateway\_name &lt;gateway-name&gt; --gateway\_description &lt;gateway-description&gt; --space\_name &lt;space-name&gt; --client-id &lt;client-ID&gt; --assertion &lt;assertion&gt;

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm)移除自動註冊的閘道

請依照下列步驟，取消註冊使用上述以工作階段 Token 為基礎的自動方法所註冊的閘道。這些步驟也會移除為其建立的 OAuth 用戶端、Bot 使用者和角色。

1. 產生判斷提示，如 [使用工作階段 Token 自動註冊閘道的步驟六](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm#AutoRegister) 中所述。如果現有的判斷提示已過期，請使用此命令產生新的判斷提示：

   ConnectorAgent.exe qcs generate\_registration\_assertion --tenant\_url &lt;tenant-url&gt; --client-id &lt;client-ID&gt;

   請在命令提示字元中依照所需步驟操作。由於 OAuth 用戶端已建立，因此需要使用此 API 呼叫來更新 JWK：

   curl "https://&lt;tenant-url&gt;/api/v1/oauth-clients/&lt;client-ID&gt;" -X PATCH -H 'accept: application/json' -H 'content-type: application/json' -H 'authorization: Bearer &lt;API-key&gt;' -d '[{"op":"replace","path":"/publicKeys/0/y","value":"&lt;Y-value-from-JWK&gt;"},{"op":"replace","path":"/publicKeys/0/x","value":"&lt;X-value-from-JWK&gt;"},{"op":"remove","path":"/publicKeys/0/use"},{"op":"replace","path":"/publicKeys/0/kid","value":"&lt;kid-value-from-JWK&gt;"}]'

2. 刪除閘道：

   ConnectorAgent.exe qcs delete\_gateway --tenant\_url &lt;tenant-url&gt; --gateway\_name &lt;gateway-name&gt; --client-id &lt;client-ID&gt; --assertion &lt;assertion&gt;

3. 刪除 JWK。

   ConnectorAgent.exe qcs delete\_jwk

4. 查詢為閘道建立的 Bot 使用者帳戶。

   curl "https://&lt;tenant-url&gt;/api/v1/users" -H 'accept: application/json' -H 'authorization: Bearer &lt;api-key&gt;'

5. 複製機器人 ID。

6. 刪除此機器人使用者帳戶。

   curl -X DELETE "https://&lt;tenant-url&gt;/api/v1/users/&lt;bot-user-ID&gt;" -H "Authorization: Bearer &lt;api-key&gt;"

7. 尋找為閘道建立的「DAG Registration」角色。

   curl "https://&lt;tenant-url&gt;/api/v1/roles?limit=1&filter=(name eq \"DAG Registration\")" -H "Authorization: Bearer &lt;api-key&gt;"

8. 複製角色 ID。

9. 刪除此角色。

   curl -X DELETE "https://&lt;tenant-url&gt;/api/v1/roles/&lt;role-ID&gt;" -H "Authorization: Bearer &lt;api-key&gt;"

10. 刪除 OAuth 用戶端。

    curl -X DELETE "https://&lt;tenant-url&gt;/api/v1/oauth-clients/&lt;client-ID&gt;" -H "qlik-confirm-delete: &lt;client-ID&gt;" -H "Authorization: Bearer &lt;api-key&gt;"

### 階段五：在 Direct Access gateway 伺服器上啟動 Qlik 資料閘道 - 直接存取 服務

在直接存取閘道伺服器上，進行下列事項之一以啟動服務：

* 開啟 Windows 服務主控台並啟動 Qlik 資料閘道 - 直接存取 服務。

* 以管理員身分開啟命令提示字元並將工作目錄變更為 ConnectorAgent 子資料夾 (預設安裝為 C:\Program Files\Qlik\ConnectorAgent\ConnectorAgent)。然後執行下列命令：

  connectoragent service start

  將會顯示伺服器已成功啟動的確認。

另請參閱： [在不同的帳戶之下執行服務](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-managing.htm#Running)

### 階段六：將連線新增至資料來源

請參閱 [階段六：將連線新增至資料來源](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-win.htm#Stage6)。

## 支援的資料來源

Windows 伺服器安裝支援下列 ODBC 連接器：

* ODBC 來源。如需詳細資訊，請參閱 [ODBC 資料庫 ‒ Qlik Cloud](https://help.qlik.com/en-US/cloud-services/Subsystems/ODBC_Connector_help/Content/Connectors_ODBC/Introduction/ODBC-connector.htm) （僅提供英文版）。

* REST 來源。如需詳細資訊，請參閱 [REST 來源 ‒ Qlik Cloud](https://help.qlik.com/en-US/cloud-services/Subsystems/REST_Connector_help/Content/Connectors_REST/REST-connector.htm) （僅提供英文版）。

* SAP BW、SAP SQL 和 SAP ODP 來源。需要 直接存取閘道 1.2.0 或更高版本。

  如需關於設定與這些來源的連線性的資訊，請參閱 [SAP NetWeaver](https://help.qlik.com/en-US/cloud-services/Subsystems/SAP_Connectors_Help/Content/Connectors_SAP/SAP-SQL-connector.htm) （僅提供英文版）。

## 瞭解更多資訊

* [設定 Qlik 資料閘道 - 直接存取](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setting-up.htm)
* [在容器中設定 Qlik 資料閘道 - 直接存取](https://help.qlik.com/zh-TW/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/direct-access-gateway-setup-container.htm)