前のトピック: put_desc メソッド(app オブジェクト)

次のトピック: put_acl メソッド(app オブジェクト)


get_acl メソッド(app オブジェクト)
説明

アプリケーション ACL、またはアプリケーション ACL の特定のプリンシパルに関連する部分を取得します。

構文
/api/v1/app/get_acl?app=application&principal=<principal>&vdc=controller-name
引数
app

アプリケーションの名前

プリンシパル

URL エンコードされたプリンシパル。 たとえば、local:user:api@3tera.com は local%3Auser%3Aapi%403tera.com として渡す必要があります

vdc

ターゲットの仮想データ センターの名前

トランザクション タイプ

同期

リクエスト タイプ

GET

例: アプリケーション ACL の取得

アプリケーション test のアプリケーション ACL を取得します

GET http://192.168.123.200/api/v1/app/get_acl?app=test&principal=&vdc=mygrid 
サンプル出力
JSON:
{
   "acl" : {
      "owner" : {
         "id" : "b543eff7-db88-4d79-a11c-4de22d5e6d3b"
      },
      "entries" : {
         "entries[0]" : {
            "id" : "4f865f5b-e63a-410a-9d9a-96427c3ecfc7",
            "full" : 1
         },
         "entries[1]" : {
            "id" : "b543eff7-db88-4d79-a11c-4de22d5e6d3b",
            "full" : 1
         }
      }
   }
}

XML:

<acl>
  <entries>
    <name>entries[0]</name>
    <full>1</full>
    <id>4f865f5b-e63a-410a-9d9a-96427c3ecfc7</id>
  </entries>
  <entries>
    <name>entries[1]</name>
    <configure>1</configure>
    <id>b543eff7-db88-4d79-a11c-4de22d5e6d3b</id>
  </entries>
  <owner>
    <id>b543eff7-db88-4d79-a11c-4de22d5e6d3b</id>
  </owner>
</acl>

例: プリンシパルの ACL データの取得

アプリケーション test のプリンシパル local:user:api@3tera.com の ACL データを取得します。

GET
http://192.168.123.200/api/v1/app/get_acl?app=test&principal=local%3Auser%3Aapi%403tera.com&vdc=mygrid
サンプル出力
JSON:

{
   "acl" : {
      "entries" : {
         "entries[0]" : {
            "id" : "4f865f5b-e63a-410a-9d9a-96427c3ecfc7",
            "full" : 1
         }
      }
   }

XML:

<acl>
  <entries>
    <name>entries[0]</name>
    <full>1</full>
    <id>4f865f5b-e63a-410a-9d9a-96427c3ecfc7</id>
  </entries>
</acl>

HTTP エラー コード
404

エンティティ vdc mygrid が見つかりません。WS_API アプリケーションに設定されていない VDC 名が指定されました。

400.4

必要な引数(app)がありません。 
リクエストに引数 app=app がありません。

必要な引数(principal)がありません
- 引数 principal=principal がありません

404.1

エンティティが見つかりません - アプリケーション test は存在しません。

- mygrid に存在しないアプリケーションが指定されました。

エンティティが見つかりません - アプリケーション ACL の取得に失敗しました - ACL にプリンシパルのローカル ユーザ「test@3tera.com」が含まれていません。

- 無効なプリンシパルが指定されました

注: この API は WS_API_r6-1.0.6-1 以降で使用できます。