不同的 sysadmin 憑證需要設定

Edge for Private Cloud 4.18.05

首次安裝 Edge 時,系統會建立名為「系統管理員」的特殊使用者,並同時更新一些額外的設定檔,以便顯示此使用者的詳細資料。如果您將外部 LDAP 設定為使用非電子郵件地址的使用者名稱進行驗證,以及 / 或者您在外部 LDAP 中為此系統管理員使用者設定不同的密碼,則必須進行本節所述的變更。

需要更新的兩個位置如下:

  • Edge UI 會使用在 Edge UI 設定檔中以加密方式儲存的憑證,登入管理伺服器。如果系統管理員使用者的使用者名稱或密碼有變更,就必須進行這項更新。
  • Edge 會將系統管理員使用者名稱儲存在另一個檔案中,用於執行各種公用程式指令碼。只有在系統管理員使用者的使用者名稱不同時,才需要進行這項更新。

變更 Edge UI 密碼

變更 Edge UI 密碼的方式取決於外部 LDAP 伺服器如何表示使用者名稱:

  • 如果使用者名稱是電子郵件地址,請使用 setup.sh 公用程式更新 Edge UI
  • 如果使用者名稱是 ID 而非電子郵件地址,請使用 API 呼叫和屬性檔案更新 Edge UI

以下將說明這兩種程序。

變更電子郵件地址的 Edge UI 憑證

  1. 編輯您用來安裝 Edge UI 的靜默設定檔,設定下列屬性:
    ADMIN_EMAIL=newUser
    APIGEE_ADMINPW=newPW
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y
    SMTPMAILFROM="My Company <myco@company.com>"

    請注意,您必須在傳遞新密碼時加入 SMTP 屬性,因為 UI 上的所有屬性都會重設。

  2. 使用 apigee-setup 公用程式,透過設定檔重設 Edge UI 上的密碼:
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

變更使用者 ID 的 Edge UI 憑證

  1. 加密使用者 ID 和密碼:
    java -cp "/opt/apigee/edge-ui/conf:/opt/apigee/edge-ui/lib/*" utils.EncryptUtil 'userName:PWord'
  2. 在編輯器中開啟 ui.properties 檔案。如果檔案不存在,請建立檔案:
    vi /opt/apigee/customer/application/ui.properties
  3. ui.properties 中,將 conf_apigee_apigee.mgmt.credential 權杖設為步驟 1 中呼叫傳回的值:
    conf_apigee_apigee.mgmt.credential="STRING_RETURNED_IN_STEP_1"
  4. ui.properties 的擁有者設為「apigee」:
    chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. 重新啟動 Edge UI:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

測試設定

  1. 在瀏覽器中開啟管理使用者介面:
    http://management_server_IP:9000/

    例如:

    http://192.168.52.100:9000/
  2. 使用新的憑證登入。如果登入成功,表示設定正確無誤。

編輯 Edge 系統管理員的 Apigee 公用程式指令碼使用者名稱儲存庫

  1. 編輯您用於安裝 Edge UI 的靜默設定檔,設定下列屬性,將 ADMIN_EMAIL 的值變更為外部 LDAP 中系統管理員使用者的使用者名稱:
    APIGEE_EMAIL=newUser
    IS_EXTERNAL_AUTH="true"

    IS_EXTERNAL_AUTH 屬性可讓 Edge 支援帳戶名稱做為使用者名稱,而非電子郵件地址。

  2. 使用 apigee-setup 公用程式,從設定檔重設所有 Edge 元件的使用者名稱:
    /opt/apigee/apigee-setup/bin/setup.sh -p edge -f configFile

    您必須在所有 Edge 節點上的所有 Edge 元件上執行這項指令,包括:管理伺服器、路由器、訊息處理器、Qpid、Postgres。

測試設定

確認您可以存取中央 POD。在管理伺服器上執行下列 CURL 指令:

curl -u sysAdminEmail:password http://localhost:8080/v1/servers?pod=central

您應該會看到以下輸出內容:

[ {
  "internalIP" : "192.168.1.11",
  "isUp" : true,
  "pod" : "central",
  "reachable" : true,
  "region" : "dc-1",
  "tags" : {
    "property" : [ ]
  },
  "type" : [
    "application-datastore",
    "scheduler-datastore",
    "management-server",
    "auth-datastore",
    "apimodel-datastore",
    "user-settings-datastore",
    "audit-datastore"
  ],
  "uUID" : "d4bc87c6-2baf-4575-98aa-88c37b260469"
}, {
  "externalHostName" : "localhost",
  "externalIP" : "192.168.1.11",
  "internalHostName" : "localhost",
  "internalIP" : "192.168.1.11",
  "isUp" : true,
  "pod" : "central",
  "reachable" : true,
  "region" : "dc-1",
  "tags" : {
    "property" : [ {
      "name" : "started.at",
      "value" : "1454691312854"
    }, ... ]
  },
  "type" : [ "qpid-server" ],
  "uUID" : "9681202c-8c6e-4da1-b59b-23e3ef092f34"
} ]