透過SSH Tunnel連線PostgreSQL

若要透過SSH tunnel將您的PostgreSQL資料庫連線至Commerce Intelligence,您必須執行下列幾個動作:

正在擷取Commerce Intelligence public key retrieve

public key用於授權Commerce Intelligence Linux使用者。 現在,您將建立使用者並匯入金鑰。

  1. 移至​ Manage Data > Connections ​並按一下​ Add a Data Source
  2. 按一下PostgreSQL圖示。
  3. PostgreSQL credentials頁面開啟後,將Encrypted切換設定為Yes。 這會顯示SSH設定表單。
  4. public key位於此表單下方。

在本教學課程中保持此頁面開啟 — 您需要在下一節及結尾使用它。

以下示範如何瀏覽Commerce Intelligence以擷取金鑰:

正在擷取RJMetrics公開金鑰

允許存取Commerce Intelligence IP位址 allowlist

為了連線成功,您必須將防火牆設定為允許從IP位址存取。 它是54.88.76.97/32,但它也在PostgreSQL認證頁面上。 請參閱上方GIF中的藍色方塊。

正在建立Commerce Intelligence的Linux使用者 linux

只要包含即時(或經常更新)資料,這可以是生產或次要機器。 您可以用任何您喜歡的方式限制此使用者,只要它保留連線至PostgreSQL伺服器的權利。

  1. 若要新增使用者,請以root身分在Linux伺服器上執行下列命令:
        adduser rjmetric -p<password>
        mkdir /home/rjmetric
        mkdir /home/rjmetric/.ssh
  1. 還記得在第一節中擷取的public key嗎? 若要確保使用者可以存取資料庫,您必須將金鑰匯入authorized\_keys

    將整個金鑰複製到authorized\_keys檔案,如下所示:

        touch /home/rjmetric/.ssh/authorized_keys
        "<PASTE KEY HERE>" >> /home/rjmetric/.ssh/authorized_keys
  1. 若要完成建立使用者,請變更/home/rjmetric目錄上的許可權,以允許透過SSH存取:
        chown -R rjmetric:rjmetric /home/rjmetric
        chmod -R 700 /home/rjmetric/.ssh
IMPORTANT
如果與伺服器相關聯的sshd\_config檔案未設定為預設選項,則只有特定使用者具有伺服器存取權 — 這會防止成功連線到Commerce Intelligence。 在這些情況下,必須執行AllowUsers之類的命令,才能允許rjmetric使用者存取伺服器。

正在建立Commerce Intelligence Postgres使用者 postgres

您的組織可能需要不同的流程,但建立此使用者最簡單的方法是在以有權授予許可權的使用者身分登入Postgres時執行以下查詢。 使用者也應擁有Commerce Intelligence被授予存取權的結構描述。

    GRANT CONNECT ON DATABASE <database name> TO rjmetric WITH PASSWORD <secure password>;GRANT USAGE ON SCHEMA <schema name> TO rjmetric;GRANT SELECT ON ALL TABLES IN SCHEMA <schema name> TO rjmetric;ALTER DEFAULT PRIVILEGES IN SCHEMA <schema name> GRANT SELECT ON TABLES TO rjmetric;

以您自己的安全密碼取代secure password,此密碼可能與SSH密碼不同。 此外,請確定您用資料庫中適當的名稱取代database nameschema name

如果要連線多個資料庫或結構描述,請視需要重複此程式。

正在將連線和使用者資訊輸入Commerce Intelligence finish

若要完成工作,您必須在Commerce Intelligence中輸入連線和使用者資訊。 您是否讓PostgreSQL認證頁面保持開啟狀態? 如果沒有,請移至​ Manage Data > Connections ​並按一下​ Add a Data Source,然後按一下PostgreSQL圖示。 別忘了將Encrypted切換設為Yes

在此頁面中輸入下列資訊,從Database Connection區段開始:

  • Username: RJMetrics Postgres使用者名稱(應為rjmetric)
  • Password: RJMetrics Postgres密碼
  • Port:伺服器上的PostgreSQL連線埠(預設為5432)
  • Host: 127.0.0.1

SSH Connection下:

  • Remote Address:您要SSH連線的伺服器IP位址或主機名稱
  • Username:您的SSH登入名稱(應為rjmetric)
  • SSH Port:伺服器上的SSH連線埠(預設為22)

完成時,按一下​ 儲存並測試 ​以完成設定。

相關

recommendation-more-help
e1f8a7e8-8cc7-4c99-9697-b1daa1d66dbc