ここに示す操作は、Treasure Data REST APIを通じてパーミッションポリシーを設定、一覧表示、または更新するために使用されます。管理者が認証の詳細なパーミッションを有効にしていない場合、同じ動作が表示されない場合があります。最新バージョンにアップグレードするには、カスタマーサポートエンジニアにお問い合わせください。
ポリシーの一覧を取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/policies | ポリシーの一覧を取得 |
| プロパティ名 | 値 | 説明 |
|---|---|---|
| policy | object | ポリシーの名前 |
Status: 200 OK
[
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]ポリシーを作成します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| POST | /v3/access_control/policies | ポリシーを作成 |
URIパラメータ
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy | Yes | object | 例:{"policy": { "name": "name of policy", "description": "Description of policy" } |
name | Yes | string | ポリシーの名前 |
description | string | ポリシーの説明 |
{
"policy": {
"name": "some_policy",
"description": "written about the policy"
}
}Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ポリシーに関する情報を取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/policies/:policy_id | 特定のポリシーを取得 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | Integer | AccessControlPolicyId 例: 67 |
Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ポリシーに関連する情報を更新します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id | 特定のポリシーを更新 |
| 必須| 型| 説明 ---|---|---|--- policy_id| Yes| Integer| AccessControlPolicyId 例: 67 policy| Yes| Object| TBD
| プロパティ名 | 値 | 説明 |
|---|---|---|
| policy | object | ポリシーの名前 |
{
"policy": {
"name": "some_policy",
"description": "written about the policy"
}
}Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ポリシーを削除します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| DELETE | /v3/access_control/policies/:policy_id | 特定のポリシーを削除 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | Integer | AccessControlPolicyId 例: 67 |
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ユーザーごとのポリシーを一覧表示します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/users/:user_id/policies | ユーザーごとのポリシー一覧を取得 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
user_id | Yes | integer | UserId 例: 123 |
Status: 200 OK
[
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]ユーザーのポリシーを更新します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/users/:user_id/policies | ユーザーのポリシーを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
user_id | Yes | integer | UserId 例: 123 |
| プロパティ名 | 値 | 説明 |
|---|---|---|
| policy_ids | array of string | ポリシーのリスト |
{
"policy_ids": [
"1",
"2",
"42"
]
}Status: 200 OK
[
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]ポリシーをユーザーにアタッチします。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| POST | /v3/access_control/users/:user_id/policies/:policy_id | ポリシーをユーザーにアタッチ |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
user_id | Yes | integer | UserId 例: 123 |
policy_id | Yes | integer | 例: 67 |
Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ユーザーのポリシーを削除します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| DELETE | /v3/access_control/users/:user_id/policies/:policy_id | ユーザーのポリシーを削除 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
user_id | Yes | integer | UserId 例: 123 |
policy_id | Yes | integer | 例: 67 |
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ユーザーを特定のポリシーにアタッチします。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| POST | /v3/access_control/policies/:policy_id/users/:user_id | ユーザーをポリシーにアタッチ |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
user_id | Yes | Integer | Userid 例: 123 |
Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}ユーザーを特定のポリシーからデタッチします。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| DELETE | /v3/access_control/policies/:policy_id/users/:user_id | ユーザーをポリシーから削除 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
user_id | Yes | Integer | Userid 例: 123 |
Status: 200 OK
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}すべてのパーミッションを一覧表示します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/permissions | すべてのパーミッションを一覧表示 |
Status: 200 OK
[
{
"id": 0,
"permission_set_id": 0,
"resource_type": "string",
"filter_expression": "string",
"filter_operator": "string",
"filter_value": "string",
"can_create": true,
"can_read": true,
"can_update": true,
"can_delete": true,
"can_execute": true,
"custom_operation": "string"
}
]特定のポリシーのパーミッションを一覧表示します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/policies/:policy_id/permissions | ポリシーのパーミッションを一覧表示 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
Status: 200 OK
{
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
],
"Segmentation": [
{
"operation": "full"
}
],
"MasterSegmentConfigs": [
{
"operation": "view"
}
],
"MasterSegmentConfig": [
{
"operation": "view",
"id": "42"
}
],
"SegmentAllFolders": [
{
"operation": "view",
"audience_id": "42"
}
],
"SegmentFolder": [
{
"operation": "view",
"id": "42"
}
],
"Authentications": [
{
"operation": "use"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
}特定のポリシーのパーミッションを更新します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id/permission | ポリシーのパーミッションを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
| パラメータ名 | 値 | 説明 | 例 |
|---|---|---|---|
| WorkflowProject | Array of object | すべてのワークフローに対する "view"、"run"、または "edit" アクセスを指定します。 | 例:operation (string)enum: "view" "run" "edit"name (string) |
| WorkflowProjectLevel | Array of object | 特定のワークフロープロジェクトに対する "view"、"run"、または "edit" アクセスを指定します。 | 例:operation (string)enum: "view" "run" "edit"name (string) |
| Segmentation | Array of object | すべてのセグメンテーションに対する "full" アクセスを付与します。 | 例:operation (string)value: "full" |
| MasterSegmentConfigs | Array of object | すべてのマスターセグメント設定に対する "view" または "edit" アクセス、またはすべてのCDP生成ワークフローに対する "full" アクセスを付与します。 | 例:operation (string)enum: "view" "edit" |
| MasterSegmentConfig | Array of object | 特定のマスターセグメント設定に対する "view" または "edit" アクセス、または特定のCDP生成ワークフローに対する "full" アクセスを付与します。 | 例:operation (string)enum: "view" "edit"id (string) |
| MasterSegmentColumn | Array of object | マスターセグメントカラムに対するパーミッションを付与します。 | 例: operations (string)enum: "view_clear" "view_non_pii" "view_pii" "blocked" |
| MasterSegmentAllColumns | Array of object | マスターセグメントのすべてのカラムに対するパーミッションを付与します。 | 例: operations (string)enum: "view_clear" "view_non_pii" "view_pii" "blocked_only_for_migration_purpose" |
| SegmentAllFolders | Array of object | すべてのセグメントフォルダに対する "view" または "edit" アクセスを付与します。 | 例:operation (string)enum: "view" "edit"audience_id (string) |
| SegmentFolder | Array of object | 特定のセグメントフォルダに対する "view" または "edit" アクセスを付与します。 | 例:operation (string)enum: "view" "edit"id (string) |
| Databases | Array of object | すべてのデータベースに対する "manage" アクセスを付与します。所有データベースに対する "owner_manage" アクセスを付与します。"ids" を使用して特定のデータベースに対する "edit"、"query"、"import" アクセスを付与します。読み取り権限があるデータベースのダウンロードを許可する "download" を付与します。 | 例:operation (string)enum: "manage" "owner_manage" "edit" "query" "import"ids: (string, operation が "edit" "query" "import" の場合必須)"1,2,3" |
| Authentications | Array of object | すべての認証に対する "use" または "full" アクセスを付与します。"use" は認証の表示権限を指定します。 | 例: operation (string) |
| enum: "use" "full" "owner_manage" "use_limited" ## 順序は任意 | |||
ids (string, operation が "use_limited" の場合必須) | |||
| "1, 2, 3" | |||
| Sources | Array of object | すべてのソースに対する "restricted" アクセスを設定します。 | 例: どの権限を持っているかを記述します(1つのタイプのみ選択可能)例: |
| operation (string) | |||
| enum: "restricted" | |||
| Destinations | Array of object | 結果エクスポート用のデスティネーション使用に対する "restricted" アクセスを付与します。 | 例: |
| operation (string) | |||
| enum: "restricted" |
{
"Authentications": [
{
"operation": "full"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
}Status: 200 OK
{
"Authentications": [
{
"operation": "full"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
}ユーザーとそのパーミッションの一覧を取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/users | ユーザーとそのパーミッションの一覧を取得 |
Status: 200 OK
[
{
"user_id": 123,
"account_id": 123,
"permissions": {
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
],
"Segmentation": [
{
"operation": "full"
}
],
"MasterSegmentConfigs": [
{
"operation": "view"
}
],
"MasterSegmentConfig": [
{
"operation": "view",
"id": "42"
}
],
"SegmentAllFolders": [
{
"operation": "view",
"audience_id": "42"
}
],
"SegmentFolder": [
{
"operation": "view",
"id": "42"
}
],
"Authentications": [
{
"operation": "use"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
},
"policies": [
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]
}
]IDで特定のユーザーを取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/users/:user_id | ユーザーを取得 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
Status: 200 OK
{
"user_id": 123,
"account_id": 123,
"permissions": {
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
],
"Segmentation": [
{
"operation": "full"
}
],
"MasterSegmentConfigs": [
{
"operation": "view"
}
],
"MasterSegmentConfig": [
{
"operation": "view",
"id": "42"
}
],
"SegmentAllFolders": [
{
"operation": "view",
"audience_id": "42"
}
],
"SegmentFolder": [
{
"operation": "view",
"id": "42"
}
],
"Authentications": [
{
"operation": "use"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
},
"policies": [
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]
}特定のユーザーのパーミッションを更新します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/users/:user_id/permissions | パーミッションを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
user_id | Yes | Integer | Userid 例: 123 |
| プロパティ名 | 値 | 説明 |
|---|---|---|
| WorkflowProject | array of object | 例:operation (string)enum:"view" "run" "edit"property name (any) |
| WorkflowProjectLevel | array of object | 例:operation (string)enum:"view" "run" "edit"name (string)property name (any) |
{
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
]
}Status: 200 OK
{
"user_id": 123,
"permissions": {
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
],
"Segmentation": [
{
"operation": "full"
}
],
"MasterSegmentConfigs": [
{
"operation": "view"
}
],
"MasterSegmentConfig": [
{
"operation": "view",
"id": "42"
}
],
"SegmentAllFolders": [
{
"operation": "view",
"audience_id": "42"
}
],
"SegmentFolder": [
{
"operation": "view",
"id": "42"
}
],
"Authentications": [
{
"operation": "use"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
}
}特定のポリシーに関連付けられたユーザーの一覧を取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/policies/:policy_id/users | ポリシーのユーザー一覧を取得 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
Status: 200 OK
[
{
"user_id": 123,
"account_id": 123,
"email": "jake@gmail.com",
"name": "Jake Becker"
}
]特定のポリシーに関連付けられたユーザーの一覧を更新します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id/users | ポリシーに関連付けられたユーザー一覧を更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
| プロパティ名 | 値 | 説明 |
|---|---|---|
| user_ids | array of integer | ユーザーIDのリスト |
{
"user_ids": [
123
]
}Status: 200 OK
[
{
"user_id": 123,
"account_id": 123,
"permissions": {
"WorkflowProject": [
{
"operation": "view"
}
],
"WorkflowProjectLevel": [
{
"operation": "view",
"name": "my_wf"
}
],
"Segmentation": [
{
"operation": "full"
}
],
"MasterSegmentConfigs": [
{
"operation": "view"
}
],
"MasterSegmentConfig": [
{
"operation": "view",
"id": "42"
}
],
"SegmentAllFolders": [
{
"operation": "view",
"audience_id": "42"
}
],
"SegmentFolder": [
{
"operation": "view",
"id": "42"
}
],
"Authentications": [
{
"operation": "use"
}
],
"Sources": [
{
"operation": "restricted"
}
],
"Destinations": [
{
"operation": "restricted"
}
]
},
"policies": [
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]
}
]カラムレベルのパーミッションを含むポリシーに関する情報を取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /access_control/policies/{policy_id}/column_permissions | カラムレベルのパーミッションを含むポリシーに関する情報を取得 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | AccessControlPolicyId 例: 67 |
{
"tags": [
"string"
],
"except": true,
"masking" : "hash"
}カラムタグを含むすべてのポリシーを取得します。
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| GET | /v3/access_control/policies?column_permission_tag={tag} | カラムタグを含むすべてのポリシーを取得 |
[
{
"id": 67,
"account_id": 123,
"name": "some_policy",
"description": "written about the policy",
"user_count": 3
}
]カラムレベルのアクセス制御ポリシーに関する情報を更新します。
| 制御タイプ | 説明 |
|---|---|
| Allow | "xxx, yyy, zzz" タグでアクセスを許可するポリシー |
| Allow - Except | "aaa, bbb, ccc" タグを除くすべてのカラムへのアクセスを許可するポリシー |
| Mask | 変更されたコンテンツを使用して指定されたカラムを非表示にするポリシー |
| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id/column_permissions | 特定のタグへのアクセスを許可するように特定のポリシーを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | policy_id 例: 6196842 |
curl -X PATCH \
-H "Authorization: TD1 ${TD1_KEY}" \
-H "Content-Type: application/json" \
-d '{"column_permissions":[ {"tags":["home-address"]} ]}'[
{
"tags": [
"home-address"
]
}
]| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id/column_permissions | 特定のタグへのアクセスを許可するように特定のポリシーを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | policy_id 例: 6196842 |
curl -X PATCH \
-H "Authorization: TD1 ${TD1_KEY}" \
-H "Content-Type: application/json" \
-d '{"column_permissions":[ {"tags":["email-raw"], "except":true} ]}'[
{
"tags": [
"email-raw"
],
"except": true
}
]| HTTPメソッド | リソース | 説明 |
|---|---|---|
| PATCH | /v3/access_control/policies/:policy_id/column_permissions | 特定のタグへのアクセスを許可するように特定のポリシーを更新 |
| パラメータ名 | 必須 | 型 | 説明 |
|---|---|---|---|
policy_id | Yes | integer | policy_id 例: 6196842 |
curl -X PATCH \
-H "Authorization: TD1 ${TD1_KEY}" \
-H "Content-Type: application/json" \
-d '{"column_permissions":[ {"tags":["home-address"], "masking":"hash"} ]}'[
{
"tags": [
"home-address"
],
"masking": "hash"
}
]