データセット権限の一覧リスト
概要
この操作は、ユーザ (またはユーザの役割) が名前付きテーブルに対して付与された権限を返します。ユーザが権限の一覧表示を求めている 1 つ以上の名前付きテーブルのフル パスを受け取ります。EXECUTE (実行)、CREATE (作成)、MODIFY (変更)、DELETE (削除) の権限があります。
ユーザまたはその役割のいずれかに直接付与されている権限が返されます。EXECUTE 権限は、ユーザまたはその役割が親フォルダに対して持っている権限から継承することもできます。
特定のレスポンスを理解するには、次のビジネス ルールが参考になります。
- リソースに対する権限が指定されていない場合には、次のような理由が考えられます。
- ユーザが名前付きテーブルに対する EXECUTE 権限を持っていない
- 異なるリソース タイプが指定されている
- 存在しないリソースが指定されている
- テーブル リストが省略された場合は、指定されたユーザ トークンが EXECUTE、CREATE、MODIFY、またはDELETE の権限を持っているすべての名前付きテーブルが返される
- ユーザがどのテーブルに対しても権限を持っていない場合、空のレスポンスが返される
ACL 認証フロー
このリクエストを行うユーザは、少なくとも EXECUTE 権限を持っているリソースに対してのみ権限を取得できます。
HTTP GET URL 形式
すべてのテーブルに対する HTTP GET リクエストには、次の形式を使用します。
HTTP GET http://<サーバー>:<ポート>/rest/Spatial/AccessControlService/permissions/tables
指定したテーブルに対する HTTP GET リクエストには、次の形式を使用します。
HTTP GET http://<サーバー>:<ポート>/rest/Spatial/AccessControlService/permissions/tables/namedTablePath
パラメータ
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
namedTablePath | 文字列 | いいえ | データセット権限が返される名前付きテーブルのパスを指定します。 |
HTTP POST URL 形式
HTTP POST リクエストには次の形式を使用します。
HTTP POST URL: /permissions/tables
POST BODY: {
"resources":[
"/Samples/NamedTables/WorldTable",
"/Samples/NamedTables/USA"
]
}
POST HEADER: Content-Type:application/json
戻り値
ユーザが権限を持っているテーブルのリストを返します。
GET の例
この例は、ユーザが "/Samples/NamedTables/WorldTable" に対して持っているすべての権限を要求します。
要求 URL
http://<サーバー>:<ポート>/rest/Spatial/AccessControlService/permissions/tables/Samples/NamedTables/WorldTable
応答
{ "name":"/Samples/NamedTables/WorldTable", "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] }
POST の例
このリクエストは、リクエストの本文で指定されているテーブルに対してユーザが持っている権限のリストを返します。
要求 URL
http://<サーバー>:<ポート>/rest/Spatial/AccessControlService/permissions/tables
要求の本文
{ "resources":[ "/Samples/NamedTables/USA", "/Samples/NamedTables/WorldTable" ] }
応答
{ "resourcePermissions":[ { "name":"/Samples/NamedTables/USA" "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] }, { "name":"/Samples/NamedTables/WorldTable", "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] } ] }