不同的 sysadmin 憑證需要設定

Edge for Private Cloud 4.17.01 版

首次安裝 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
    SMTP 密碼會重設所有 UI 屬性,因為所有傳遞新密碼的 UI 屬性都會包含在 SMTPPASSWORD=bar 中
    SMTPSSL=y

    注意:所有傳遞新密碼的 UI 屬性都必須包括 SMTP 密碼。
  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. 在瀏覽器中開啟管理 UI:
    http://<management-server-IP>:9000/

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

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

  1. 編輯您用來安裝 Edge UI 的靜默設定檔,設定下列屬性,將 ADMIN_EMAIL 的值變更為外部 LDAP 中系統管理員使用者的使用者名稱:
    APIGEE_EMAIL=newUser
  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"
} ]