REST APIリファレンス > プラットフォームREST APIバージョン3リソース > ロール
  

ロール

ロールとは、ユーザーおよびグループへの割り当てが可能な特権の集まりです。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>