Edge for Private Cloud 4.18.05 版
首次安裝 Edge 時,系統會建立一種特殊類型的使用者,稱為 sysadmin 使用者,同時也會更新一些其他設定檔,加入這位使用者的詳細資料。如果您將外部 LDAP 設為使用非電子郵件地址的使用者名稱進行驗證,和 / 或您在外部 LDAP 中為這個 sysadmin 使用者設定了不同的密碼,則必須進行本節所述的變更。
有兩個位置需要更新:
- Edge UI 會使用憑證登入管理伺服器,這些憑證會以加密形式儲存在 Edge UI 的設定檔中。如果 sysadmin 使用者的使用者名稱和/或密碼不同,就必須進行這項更新。
- Edge 會將 sysadmin 使用者名稱儲存在另一個檔案中,用於執行各種公用程式指令碼。只有在 sysadmin 使用者的使用者名稱不同時,才需要進行這項更新。
變更 Edge UI 密碼
變更 Edge UI 密碼的方式取決於外部 LDAP 伺服器代表使用者名稱的方式:
- 如果使用者名稱是電子郵件地址,請使用
setup.sh公用程式更新 Edge UI - 如果使用者名稱是 ID 而非電子郵件地址,請使用 API 呼叫和屬性檔案更新 Edge UI
以下說明這兩種程序。
變更電子郵件地址的 Edge UI 憑證
- 編輯用於安裝 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 屬性,因為使用者介面上的所有屬性都會重設。
- 使用
apigee-setup公用程式,從設定檔重設 Edge UI 的密碼:/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
變更使用者 ID 的 Edge UI 憑證
- 加密使用者 ID 和密碼:
java -cp "/opt/apigee/edge-ui/conf:/opt/apigee/edge-ui/lib/*" utils.EncryptUtil 'userName:PWord'
- 在編輯器中開啟
ui.properties檔案。如果檔案不存在,請建立檔案:vi /opt/apigee/customer/application/ui.properties
- 在
ui.properties中,將conf_apigee_apigee.mgmt.credential權杖設為步驟 1 呼叫傳回的值:conf_apigee_apigee.mgmt.credential="STRING_RETURNED_IN_STEP_1"
- 將
ui.properties的擁有者設為「apigee」:chown apigee:apigee /opt/apigee/customer/application/ui.properties
- 重新啟動 Edge UI:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
測試設定
- 在瀏覽器中開啟管理 UI,網址如下:
http://management_server_IP:9000/
例如:
http://192.168.52.100:9000/
- 使用新憑證登入。如果登入成功,表示設定正確。
編輯 Apigee 公用程式指令碼的 Edge sysadmin 使用者名稱儲存庫
- 編輯用於安裝 Edge UI 的無訊息設定檔,設定下列屬性,將 ADMIN_EMAIL 的值變更為您在外部 LDAP 中用於 sysadmin 使用者的使用者名稱:
APIGEE_EMAIL=newUser IS_EXTERNAL_AUTH="true"
IS_EXTERNAL_AUTH屬性會將 Edge 設為支援帳戶名稱 (而非電子郵件地址) 做為使用者名稱。 - 使用
apigee-setup公用程式,從設定檔重設所有 Edge 元件的使用者名稱:/opt/apigee/apigee-setup/bin/setup.sh -p edge -f configFile
您必須在所有 Edge 節點的所有 Edge 元件上執行這個指令,包括:Management Server、Router、訊息處理器、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" } ]