ロール
ロールとは、ユーザーおよびグループへの割り当てが可能な特権の集まりです。rolesリソースを使用して、組織のロールの詳細を取得します。このリソースを使用して、カスタムロールを作成、更新および削除することもできます。
注: このリソースは、動的レート制限を使用します。システムで大量の要求またはサイズが発生すると、応答が遅くなったり、「要求が多すぎます」というエラーメッセージが表示されて失敗したりすることがあります。
ロールの詳細の取得
組織のすべてのロールの詳細、または特定のロールの詳細を要求できます。
GET要求
ロールの詳細を取得するには、次のURIを使用します。
/public/core/v3/roles
特定のロールの詳細を取得するには、次のクエリパラメータをURIに追加する事ができます。
パラメータ | タイプ | 説明 |
---|
q | String | クエリフィルタ。次のいずれかのフィールドを使用してフィルタできます。 - - roleId。ロールの一意のIDです。
- - roleName。ロールの名前。
|
expand | String | クエリフィルタに指定したロールと関連する権限が返されます。 クエリに次のフレーズを含めます。 expand=privileges |
例えば、Business Managerロールの権限を含む詳細を取得するには、次の要求を使用できます。
/public/core/v3/roles?q=roleName=="Business Manager"&expand=privileges
GET応答
正常に実行された場合は、各ロールの次の情報を返します。
フィールド | タイプ | 説明 |
---|
id | 文字列 | ロールID。 |
orgId | String | ロールが属する組織のID。 |
createdBy | 文字列 | ロールを作成したユーザー。 |
updatedBy | String | ロールを最後に更新したユーザー。 |
createTime | 文字列 | ロールを作成した日時。 |
updateTime | 文字列 | ロールが最後に更新された日時。 |
roleName | 文字列 | ロールの名前。 |
description | 文字列 | ロールの説明。 |
displayName | 文字列 | ロール名はユーザーインタフェースに表示されます。 |
displayDescription | 文字列 | 説明はユーザーインタフェースに表示されます。 |
systemRole | Boolean | ロールがシステム定義ロールであるかどうか。次のいずれかの値を返します。 - - True。ロールはシステム定義ロールです。
- - False。ロールはカスタムロールです。
|
status | 文字列 | ロールを使用するための組織のライセンスが有効かまたは期限切れか。次のいずれかの値を返します。 |
privileges | 配列 | ロールに割り当てられている権限。 URIのクエリに?expand=privilegesが含まれている場合にのみ返されます。 |
id | 文字列 | 権限オブジェクトに含まれます。 特権ID。 |
name | 文字列 | 権限オブジェクトに含まれます。 特権名 |
description | 文字列 | 権限オブジェクトに含まれます。 特権の説明。 |
service | 文字列 | 権限オブジェクトに含まれます。 特権を使用するInformatica Intelligent Cloud Servicesサービス。 |
status | 文字列 | 権限オブジェクトに含まれます。 特権を使用するための組織のライセンスが有効かまたは期限切れか。次のいずれかの値を返します。 |
GET応答の例
次の例のような応答を受信します。
[
{
"id": "7EjAMAHsiOTcg8v29z0Gsl",
"orgId": "52ZSTB0IDK6dXxaEQLUaQu",
"createdBy": "ops-post-deploy-user",
"updatedBy": "ops-post-deploy-user",
"createTime": "2019-03-22T21:26:46.000Z",
"updateTime": "2019-03-22T21:26:52.000Z",
"roleName": "Business Manager",
"description": "Role used for business managers",
"displayName": "Application Integration Business Manager",
"displayDescription": "Role used for business managers",
"systemRole": true,
"status": "Disabled",
"privileges": [
{
"id": "5Cgp0GcsmRejyxIgV4eXy1",
"name": "view.ai.console",
"description": "View application integration console",
"service": "ApplicationIntegration",
"status": "Disabled"
},
{
"id": "aReU2uciLYglcq0Ntvc2Ob",
"name": "view.ai.assets",
"description": "View application integration assets",
"service": "ApplicationIntegration",
"status": "Disabled"
},
{
"id": "8zDel5v89cKfeMtM2FHFEw",
"name": "view.ai.designer",
"description": "View application integration designer",
"service": "ApplicationIntegration",
"status": "Disabled"
}
]
}
]
ロールの作成
組織のカスタムロールを作成できます。
POST要求
カスタムロールを作成するには、次のURIを使用してPOST要求を送信します。
/public/core/v3/roles
注: ユーザー、ユーザーグループ、結合されたロールの数は、1つの組織で1000を超える事は出来ません。
以下の情報を含めます。
フィールド | タイプ | 必須 | 説明 |
---|
name | String | ○ | ロールの名前。 |
description | 文字列 | - | ロールの説明。 |
privileges | 配列 | はい | ロールに割り当てる特権のID。ロールには少なくとも1つの権限が割り当てられている必要があります。 |
POST応答
成功した場合、ロールオブジェクトと、POST要求に含めた詳細が返されます。
POSTの例
カスタムロールを作成するには、次の例のような要求を送信します。
POST <baseApiUrl>/public/core/v3/roles
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <sessionId>
{
"name" : "CAIviewer",
"description": "A role to view Application Integration designer and assets",
"privileges" : ["aQwUdcM8RcQewA1yWphZ4F", "0nTOXl8dzEwlSFoM0cO8gI"]
}
次の例のような応答を受信します。
{
"id": "8j2MPlr8ubZgteIOwleSCk",
"orgId": "cPYWk02I4aBeuLEvYRtaMS",
"createdBy": "a@abc.com",
"updatedBy": "a@abc.com",
"createTime": "2019-03-20T18:33:33.361Z",
"updateTime": "2019-03-20T18:33:33.428Z",
"roleName": "CAIviewer",
"description": "A role to view Application Integration designer and assets",
"displayName": "CAIviewer",
"displayDescription": "A role to view Application Integration designer and assets",
"systemRole": false,
"status": "Enabled",
"privileges": [
{
"id": "0nTOXl8dzEwlSFoM0cO8gI",
"name": "view.ai.designer",
"description": "View application integration designer"
},
{
"id": "aQwUdcM8RcQewA1yWphZ4F",
"name": "view.ai.assets",
"description": "View application integration assets"
}
]
}
ロールの更新
カスタムロールの権限を追加または削除できます。
特権の追加
カスタムロールに特権を追加するには、次のURIのいずれかを使用してPUT要求を送信します。
/public/core/v3/roles/<role ID>/addPrivileges
/public/core/v3/roles/name/<role name>/addPrivileges
カスタムロールの特権名の配列を含めます。
例えば、データ転送タスクにロールの作成権限と削除権限を与えるには、次の要求を使用できます。
PUT <baseApiUrl>/public/core/v3/roles/cPYWk02I4aBeuLEvYRtaMS/addPrivileges
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <sessionId>
{
"privileges" : ["create.data.transfer.task", "delete.data.transfer.task"]
}
特権リソースを使用して、使用できる特権名のリストを取得できます。詳細については、
特権を参照してください。
特権の削除
カスタムロールから特権を削除するには、次のURIのいずれかを使用してPUT要求を送信します。
/public/core/v3/roles/<role ID>/removePrivileges
/public/core/v3/roles/name/<role name>/removePrivileges
ロールからすべての権限を削除することはできません。ロールには少なくとも1つの権限が割り当てられている必要があります。
カスタムロールから削除する特権名の配列を含めます。
例えば、APIコレクションの作成および削除特権をロールから削除するには、次の要求を使用できます。
PUT <baseApiUrl>/public/core/v3/roles/cPYWk053KnrUerLvYRtaMS/removePrivileges
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <sessionId>
{
"privileges" : ["create.api.collection", "delete.api.collection"]
}
ロールの削除
組織のカスタムロールを削除できます。
ロールを削除するには、次のURIを使用してDELETE要求を送信します。
/public/core/v3/roles/<role ID>