Edge for Private Cloud バージョン 4.16.09
Apigee ドキュメント サイトには、ユーザーロールと権限の管理に関する幅広い情報が掲載されています。ユーザーは Edge UI と Management API の両方を使用して管理できます。ロールと権限は Management API でのみ管理できます。
ユーザーとユーザーの作成については、以下をご覧ください。
ユーザーを管理するために行う操作の多くは、システム管理者権限を必要とします。Cloud ベースの Edge では、Apigee がシステム管理者の役割を担います。Edge for Private Cloud では、システム管理者が下記のようにこれらの作業を行う必要があります。
ユーザーを追加する
ユーザーを作成するには、Edge API、Edge UI、または Edge コマンドを使用します。このセクションでは、Edge API と Edge コマンドの使用方法について説明します。Edge UI でユーザーを作成する方法については、グローバル ユーザーの作成をご覧ください。
組織にユーザーを作成したら、そのユーザーにロールを割り当てる必要があります。ロールにより、Edge でユーザーが持つアクセス権が決まります。
Edge API でユーザーを作成するには、次のコマンドを使用します。
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<passwd> \ -X POST http://<ms_IP>:8080/v1/users \ -d '<User> \ <FirstName>New</FirstName> \ <LastName>User</LastName> \ <Password>newUserPWord</Password> \ <EmailId>foo@bar.com</EmailId> \ </User>'
または、次の Edge コマンドを使用してユーザーを作成します。
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile
ここで、configFile にはユーザーの作成に必要な情報が含まれています。
APIGEE_ADMINPW=sysAdminPW # If omitted, you will be prompted. USER_NAME=foo@bar.com FIRST_NAME=New LAST_NAME=User USER_PWD="newUserPWord" ORG_NAME=myorg
その後、この呼び出しを使用してユーザーに関する情報を表示できます。
curl -u <sysAdminEmail>:<passwd> 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 <sysAdminEmail>:<passwd>
ユーザーのロールを表示するには、次のコマンドを使用します。
curl -u <sysAdminEmail>:<passwd> / http://<ms_IP>:8080/v1/users/foo@bar.com/userroles
組織からユーザーを削除するには、その組織のすべてのロールをユーザーから削除してください。 ユーザーからロールを削除するには、次のコマンドを使用します。
curl -X DELETE -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/o/<org_name>/userroles/<role>/users/foo@bar.com
システム管理者の追加
システム管理者は次のことができます。
- 組織を作成する
- Router、Message Processor などのコンポーネントを Edge 環境に追加する
- TLS / SSL を構成する
- 追加のシステム管理者を作成する
- Edge の管理タスクをすべて行う
管理タスクのデフォルト ユーザーは 1 人だけですが、システム管理者は複数設定できます。sysadmin ロールのメンバーには、すべてのリソースに対する完全な権限が付与されます。
システム管理者用のユーザーは、Edge UI または Edge API で作成できます。ただし、Edge API を使用して、ユーザーに sysadmin のロールを割り当てる必要があります。Edge UI では、ユーザーに sysadmin ロールを割り当てることはできません。
システム管理者を追加するには:
- Edge UI または Edge API でユーザーを作成します。
- ユーザーを sysadmin ロールに追加します。
curl -u <sysAdminEmail>:<passwd> \
-X POST http://<ms_IP>:8080/v1/userroles/sysadmin/users \
-d 'id=foo@bar.com' - 新しいユーザーが sysadmin のロールを持っていることを確認します。
curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/userroles/sysadmin/users
ユーザーのメールアドレスを返します。
[ " foo@bar.com " ] - 新しいユーザーの権限を確認します。
curl -u <sysAdminEmail>:<passwd> http://<ms_IP>:8080/v1/users/foo@bar.com/permissions
戻り値:
{
"resourcePermission" : [ {
"path" : "/",
"delete ", "
"permissions" : [ - 新しいシステム管理者を追加したら、ユーザーを任意の組織に追加できます。
注: 新しいシステム管理者ユーザーは、少なくとも 1 つの組織に追加するまで、Edge UI にログインできません。 - 後でユーザーをシステム管理者ロールから削除する場合は、次の API を使用します。
curl -X DELETE -u <sysadminEmail:pword>
http://<ms_IP>:8080/v1/userroles/sysadmin/users/foo@bar.com
この呼び出しでは、ユーザーロールからユーザーが削除されるだけで、ユーザーが削除されるわけではありません。
システム管理者のメールドメインを指定する
セキュリティを強化するために、Edge システム管理者に必要なメールドメインを指定できます。システム管理者を追加するときに、ユーザーのメールアドレスが指定されたドメインに存在しない場合、sysadmin ロールへのユーザーの追加は失敗します。
デフォルトでは、必須ドメインは空です。つまり、任意のメールアドレスを sysadmin ロールに追加できます。
メールドメインを設定するには:
- エディタ management-server.properties で開きます。
vi /<inst_root>/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 Management Server を再起動します。
/<inst_root>/apigee/apigee-service/bin/apigee-service edge-management-server restart
ここで sysadmin ロールにユーザーを追加しようとしたときに、そのユーザーのメールアドレスが指定したドメインに存在しない場合、追加は失敗します。
ユーザーの削除
ユーザーを作成するには、Edge API または Edge UI を使用します。ただし、ユーザーを削除するには、API を使用する必要があります。
メールアドレスを含む現在のユーザーのリストを表示するには、次の cURL コマンドを使用します。
curl -u <sysAdminEmail>:<passwd> http://<ms-IP>:8080/v1/users
ユーザーを削除するには、次の cURL コマンドを使用します。
curl -u <sysAdminEmail>:<passwd> -X DELETE http://<ms-IP>:8080/v1/users/<userEmail>