テーブル権限付与

ユーザーまたはグループに対して、指定したテーブルの権限を付与します。この操作には管理者権限が必要です。

必要な権限

ADMIN以上のロールが必要です。

HTTPリクエスト

PUT /api/sonar/tables/:table/privileges

cURL例

curl -H "Authorization: Bearer <API_KEY>" \
     -d type=user \
     -d shared_users="8b6e740c-24b1-41d1-a4c5-39db2520f92a,32ef0629-9646-4eba-bd2d-4b99e4a5097d" \
     -X PUT "https://HOSTNAME/api/sonar/tables/demo/privileges"

リクエストパラメータ

キー必須タイプ説明備考
table文字列権限を付与するテーブル名URLパスパラメータ、最小1文字、最大50文字
type文字列対象の種類user または group
shared_users×文字列権限を付与するユーザーGUIDリスト複数指定時はカンマ(,)区切り
shared_groups×文字列権限を付与するユーザーグループGUIDリスト複数指定時はカンマ(,)区切り
Note
テーブル名は英字で始まり、英大文字・小文字、数字、アンダースコア(_)、ハイフン(-)のみ使用可能です。
ユーザーにテーブル権限を付与する場合は、typeに'user'を指定し、shared_usersに値を入力してください。
ユーザーグループにテーブル権限を付与する場合は、typeに'group'を指定し、shared_groupsに値を入力してください。

正常応答

{
  "failures": []
}

エラー応答

tableが未指定の場合

HTTPステータスコード 400 応答

{
  "error_code": "null-argument",
  "error_msg": "table should be not null"
}
table値の長さが不正な場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "'table' must be shorter than or equal to 50 characters."
}
table名が規則に違反している場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "'table' must begin with a letter and may contain alphanumeric and underscore characters: 0123"
}
typeが未指定の場合

HTTPステータスコード 400 応答

{
  "error_code": "null-argument",
  "error_msg": "type should be not null"
}
typeが'user'または'group'以外の場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "unsupported type: users"
}
typeが'user'だがshared_groupsが指定された場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "'shared_groups' must not be set when type is 'user'."
}
typeが'group'だがshared_usersが指定された場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "'shared_users' must not be set when type is 'group'."
}
shared_usersがリスト形式でない場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "shared_users 'invalid_value' should be list type."
}
shared_groupsがリスト形式でない場合

HTTPステータスコード 400 応答

{
  "error_code": "invalid-argument",
  "error_msg": "shared_groups 'invalid_value' should be list type."
}
ユーザーまたはグループが存在しない場合

HTTPステータスコード 200 応答

{
  "failures": [
    {
      "guid": "32ef0629-9646-4eba-bd2d-4b99e4a5097d",
      "reason": "user-not-found"
    }
  ]
}
テーブルが存在しない場合

HTTPステータスコード 500 応答

{
  "error_code": "illegal-state",
  "error_msg": "table not found: test"
}
テーブル権限設定の権限がない場合

HTTPステータスコード 500 応答

{
  "error_code": "illegal-state",
  "error_msg": "no-permission"
}