Apigee 說明文件網站提供管理使用者角色和權限的詳細資訊。使用者可透過新版 Edge 使用者介面和 Management API 管理,但角色和權限只能透過 Management API 管理。
如要瞭解使用者和建立使用者,請參閱:
管理使用者時,許多操作都需要系統管理員權限。在 Edge 的雲端安裝中,Apigee 函式扮演系統管理員的角色。在 Edge for Private Cloud 安裝作業中,系統管理員必須執行下列工作。
新增使用者
您可以使用 Edge API、新版 Edge UI 或 Edge 指令建立使用者。本節說明如何使用 Edge API 和 Edge 指令。如要瞭解如何在 New Edge UI 中建立使用者,請參閱「建立全域使用者」。
在組織中建立使用者後,您必須為使用者指派角色。角色會決定使用者在 Edge 上的存取權。
使用下列指令,透過 Edge API 建立使用者:
curl -H "Content-Type:application/xml" \
-u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
-d '<User> \
<FirstName>New</FirstName> \
<LastName>User</LastName> \
<Password>NEW_USER_PASSWORD</Password> \
<EmailId>foo@bar.com</EmailId> \
</User>'或者,您也可以使用下列 Edge 指令建立使用者:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile
其中 configFile 會建立使用者,如以下範例所示:
APIGEE_ADMINPW=SYS_ADMIN_PASSWORD # If omitted, you will be prompted. USER_NAME=foo@bar.com FIRST_NAME=New LAST_NAME=User USER_PWD="NEW_USER_PASSWORD" ORG_NAME=myorg
接著,您可以使用這個呼叫來查看使用者相關資訊:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com
將使用者指派給組織中的角色
新使用者必須先獲派組織中的角色,才能執行任何操作。您可以為使用者指派不同角色,包括:orgadmin、businessuser、opsadmin、user,或是機構中定義的自訂角色。
將使用者指派給組織中的角色,會自動將該使用者新增至組織。將使用者指派至每個機構中的角色,即可將使用者指派至多個機構。
請使用下列指令,將使用者指派至機構中的角色:
curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \ http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \ -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
這項呼叫會顯示指派給使用者的所有角色。如要新增使用者,但只顯示新角色,請使用下列呼叫:
curl -X POST -H "Content-Type: application/xml" \ http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \ -d '<Roles><Role name="role"/><Roles>' \ -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD
您可以使用下列指令查看使用者的角色:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles
如要從機構組織中移除使用者,請移除該使用者在該機構組織中的所有角色。 使用下列指令,移除使用者的角色:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com
新增系統管理員
系統管理員可以執行下列操作:
- 建立機構
- 在 Edge 安裝作業中新增路由器、訊息處理器和其他元件
- 設定 TLS/SSL
- 建立其他系統管理員
- 執行所有 Edge 管理工作
雖然只有一位使用者是管理工作的預設使用者,但系統管理員可以不只一人。凡是具備「sysadmin」角色的使用者,都擁有所有資源的完整權限。
您可以在新版 Edge UI 或 API 中,為系統管理員建立使用者。不過,您必須使用 Edge API 將使用者指派為「sysadmin」角色。您無法在新版 Edge UI 中將使用者指派給「sysadmin」角色。
如要新增系統管理員,請按照下列步驟操作:
- 在新版 Edge UI 或 API 中建立使用者。
- 將使用者新增至「sysadmin」角色:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
- 確認新使用者具備「sysadmin」角色:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
傳回使用者的電子郵件地址:
[ " foo@bar.com " ]
- 檢查新使用者的權限:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions
傳回值:
{ "resourcePermission" : [ { "path" : "/", "permissions" : [ "get", "put", "delete" ] } ] } - 新增系統管理員後,您可以將使用者新增至任何機構。
- 如果日後想移除使用者的系統管理員角色,可以使用下列 API:
curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com
請注意,這項呼叫只會將使用者從角色中移除,不會刪除使用者。
變更預設系統管理員使用者
安裝 Edge 時,您會指定系統管理員的電子郵件地址。Edge 會使用該電子郵件地址建立使用者,並將該使用者設為預設系統管理員。如上所述,您稍後可以新增其他系統管理員。
本節說明如何將預設系統管理員變更為其他使用者,以及如何變更目前預設系統管理員的使用者帳戶電子郵件地址。
如要查看目前設為系統管理員的使用者清單,請使用下列 API 呼叫:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users
如要判斷目前的預設系統管理員,請查看 /opt/apigee/customer/defaults.sh 檔案。檔案中包含以下這行,顯示目前預設系統管理員的電子郵件地址:
ADMIN_EMAIL=foo@bar.com
如要將預設系統管理員變更為其他使用者,請按照下列步驟操作:
- 按照上述步驟建立新的系統管理員,或確認新系統管理員的使用者帳戶已設為系統管理員。
- 編輯
/opt/apigee/customer/defaults.sh,將ADMIN_EMAIL設為新系統管理員的電子郵件地址。 - 編輯用於安裝 New Edge UI 的無聲模式設定檔,設定下列屬性:
ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=foo@gmail.com SMTPPASSWORD=bar SMTPSSL=y
請注意,您必須加入 SMTP 屬性,因為新版 Edge UI 上的所有屬性都會重設。
- 重新設定 New Edge UI:
/opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop /opt/apigee/apigee-service/bin/apigee-service edge-management-ui setup -f configFile /opt/apigee/apigee-service/bin/apigee-service edge-management-ui start
如要變更目前預設系統管理員的使用者帳戶電子郵件地址,請先更新使用者帳戶以設定新的電子郵件地址,然後變更預設系統管理員電子郵件地址:
- 使用新的電子郵件地址更新目前預設系統管理員使用者的帳戶:
curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \ -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}' - 重複執行前一項程序中的步驟 2、3 和 4,更新
/opt/apigee/customer/defaults.sh檔案和新版 Edge UI。
指定系統管理員的電子郵件網域
為多添一層安全防護,您可以指定 Edge 系統管理員必須使用的電子郵件網域。新增系統管理員時,如果使用者的電子郵件地址不在指定網域中,則無法將使用者新增至「sysadmin」角色。
根據預設,必要網域為空白,這表示您可以將任何電子郵件地址新增至「sysadmin」角色。
如要設定電子郵件網域,請按照下列步驟操作:
- 在編輯器中開啟
management-server.properties檔案:vi /opt/apigee/customer/application/management-server.properties
如果這個檔案不存在,請建立檔案。
- 將
conf_security_rbac.global.roles.allowed.domains屬性設為允許的網域清單 (以半形逗號分隔)。例如:conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
- 儲存變更。
- 重新啟動 Edge 管理伺服器:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
如果您現在嘗試將使用者新增至「sysadmin」角色,但該使用者的電子郵件地址不在指定網域中,則新增作業會失敗。
刪除使用者
您可以使用 Edge API 或新版 Edge UI 建立使用者。不過,您只能使用 API 刪除使用者。
如要查看目前使用者清單 (包括電子郵件地址),請使用下列 curl 指令:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users
使用下列 curl 指令刪除使用者:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL