REST APIリファレンス > プラットフォームREST APIバージョン3リソース > SAMLグループとロールのマッピング
  

SAMLグループとロールのマッピング

組織が認証と認可にSAMLシングルサインオン(SSO)を使用している場合は、orgリソースを使用して、SAMLロールおよびSAMLグループをIDMCロールにマッピングします。orgリソースを使用して、組織のSAMLロールとグループのマッピングに関する詳細を取得することもできます。
IDMCロールには、最大200個のSAMLグループまたはSAMLロールをマッピングできます。IDMCロールのリストを見つけるには、ロールリソースを使用します。
SAMLグループとSAMLロールをマッピングする前に、管理者[SAMLグループとロールのマッピング]が有効になっていることを確認します。
SAMLグループとロールをIDMCロールにマッピングした後に、管理者またはIDMC REST APIでSAML SSOユーザーのユーザーロールまたはグループを個別に設定することはできません。
SAML SSOの使用に関する詳細については、管理者のヘルプの「ユーザー管理」を参照してください。

SAMLグループマッピングの追加

SAMLグループをIDMCロールにマッピングするSAMLグループマッピングを追加します。
注:
名前に次のいずれかの文字を含むSAMLグループまたはSAMLロールをマッピングすることはできません。

PUT要求

IDMCロールとSAMLグループ間のマッピングを追加するには、次のURIを使用します。
/public/core/v3/Orgs/<organization ID>/addSamlGroupMappings
IDMCに存在しないSAMLグループをマッピングすると、IDMCによってそのグループが作成されます。IDMCに同じ名前のグループが存在する場合、グループを再利用するか、新しいグループを作成するかどうかを指定できます。デフォルトでは、IDMCは名前に_EXTを追加した新しいグループを作成します。
以下の情報を含めます。
フィールド
タイプ
必須
説明
groupMappings
配列
はい
IDMCロールとSAMLグループとのマッピングを定義するオブジェクト。
roleName
String
はい
groupMappingsオブジェクトに含めます。
IDMCロールの名前。
samlGroupNames
String
はい
groupMappingsオブジェクトに含めます
IDMCロールにマッピングするSAMLグループの名前。
reuseGroup
Boolean
--
グループ名がSAMLグループ名と同じ場合に、既存のIDMCグループを使用するかどうか。
falseの場合、IDMCは新しいグループを作成します。
デフォルトはfalseです。
成功した場合は204の応答コードを返します。エラーが発生した場合はエラーオブジェクトを返します。

PUTの例

IDMC管理者ロールをSecurityおよびDev-Managers SAMLグループにマッピングし、IDMCデザイナロールをDevelopers SAMLグループにマッピングするには、次の例のような要求を送信します。
PUT <baseApiUrl>/public/core/v3/Orgs/6MRgiMIfvdRfCCLITrLCcI/addSamlGroupMappings
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
{
"groupMappings": [
{
"roleName": "Admin",
"samlGroupNames": ["Security","Dev-Managers"]
},
{
"roleName": "Designer",
"samlGroupNames": "Developers"
}
],
"reuseGroup": "true"

}
別のグループマッピングを追加して、IDMC管理者ロールをAdministrators SAMLグループにマッピングするには、次の例のような要求を送信します。
PUT <baseApiUrl>/public/core/v3/Orgs/6MRgiMIfvdRfCCLITrLCcI/addSamlGroupMappings
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
{
"groupMappings": [
{
"roleName": "Admin",
"samlGroupNames": "Administrators"
}
],
"reuseGroup": "true"
}
これにより、IDMC管理者ロールがSecurity、Dev-Managers、およびAdministrators SAMLグループにマッピングされます。

SAMLロールマッピングの追加

SAMLロールをIDMCロールにマッピングするSAMLロールマッピングを追加します。
注:
名前に次のいずれかの文字を含むSAMLグループまたはSAMLロールをマッピングすることはできません。

PUT要求

IDMCロールとSAMLロール間のマッピングを追加するには、次のURIを使用します。
/public/core/v3/Orgs/<organization ID>/addSamlRoleMappings
以下の情報を含めます。
フィールド
タイプ
必須
説明
roleMappings
配列
はい
IDMCロールとSAMLロールとのマッピングを定義するオブジェクト。
roleName
String
はい
roleMappingsオブジェクトに含めます。
IDMCロールの名前。
samlRoleNames
List
はい
roleMappingsオブジェクトに含めます
IDMCロールにマッピングするSAMLロールの名前。
成功した場合は204の応答コードを返します。エラーが発生した場合はエラーオブジェクトを返します。

PUTの例

IDMC開発者ロールをData DesignerおよびMS Deployer SAMLロールにマッピングし、IDMC管理者ロールをOperator SAMLロールにマッピングするには、次の例のような要求を送信します。
PUT <baseApiUrl>/public/core/v3/Orgs/6MRgiMIfvdRfCCLITrLCcI/addSamlRoleMappings
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
{
"roleMappings": [
{
"roleName": "Developer",
"samlRoleNames": ["Data Designer","MS Deployer"]
},
{
"roleName": "Admin",
"samlRoleNames": "Operator"
}
]
}

SAMLグループマッピングの削除

SAMLグループをIDMCロールにマッピングするSAMLグループマッピングを削除します。

PUT要求

SAMLグループマッピングを削除するには、次のURIを使用してPUT要求を送信します。
/public/core/v3/Orgs/<organization ID>/removeGroupMappings
以下の情報を含めます。
フィールド
タイプ
必須
説明
groupMappings
配列
はい
IDMCロールとSAMLグループとのマッピングを定義するオブジェクト。
roleName
String
はい
groupMappingsオブジェクトに含めます。
IDMCロールの名前。
samlGroupNames
String
はい
groupMappingsオブジェクトに含めます。
削除するSAMLグループの名前。

PUTの例

IDMC管理者ロールとAdministrators SAMLグループの間のマッピングを削除するには、次の例のような要求を送信します。
PUT <baseApiUrl>/public/core/v3/Orgs/6MRgiMIfvdRfCCLITrLCcI/removeSamlGroupMappings
Content-type: application/json
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
{
"groupMappings": [
{
"roleName": "Admin",
"samlGroupNames": "Administrators"
}
]
}

SAMLロールマッピングの削除

SAMLロールをIDMCロールにマッピングするSAMLロールマッピングを削除します。

PUT要求

SAMLロールマッピングを削除するには、次のURIを使用してPUT要求を送信します。
/public/core/v3/Orgs/<organization ID>/removeSamlRoleMappings
以下の情報を含めます。
フィールド
タイプ
必須
説明
roleMappings
配列
はい
IDMCロールとSAMLロールマッピングを定義するオブジェクト。
roleName
String
はい
roleMappingsオブジェクトに含めます。
IDMCロールの名前。
samlRoleNames
String
はい
roleMappingsオブジェクトに含めます。
削除するSAMLロールの名前。

PUTの例

IDMC管理者ロールとOperator SAMLロール間のマッピングを削除するには、次の例のような要求を送信します。
PUT <baseApiUrl>/public/core/v3/Orgs/6MRgiMIfvdRfCCLITrLCcI/removeSamlRoleMappings
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: 9KA11tLGqxVcGeul8SQBK3
{
"roleMappings": [
{
"roleName": "Admin",
"samlRoleNames": "Operator"
}
]
}

SAMLグループマッピングの詳細の取得

組織のすべてのグループマッピングの詳細の取得したり、フィルタを使用して特定のIDMCロールまたはSAMLグループのグループマッピングの詳細を取得したりできます。

GET要求

グループマッピングの詳細を取得するには、次のURIを使用します。
public/core/v3/Orgs/<organization ID>/SAMLConfig/groupMappings?<query parameters>
組織のすべてのグループマッピングの詳細を取得するには、クエリパラメータを省略します。
特定のロールまたはSAMLグループの詳細を取得するには、次のクエリパラメータをURIに追加します。
パラメータ
タイプ
説明
q
String
クエリフィルタの文字列。次のいずれかのフィールドを使用してフィルタできます。
  • - roleId
  • - roleName
  • - samlGroupNames
limit
Int
返すマッピングの最大数。
デフォルトは200です。
skip
Int
結果でスキップするマッピングの数。
例えば、値を4に設定すると、最初の4つのマッピングが除外されます。
デフォルトは0です。
以下のフィールドを使用してクエリフィルタを定義できます。
フィールド
タイプ
演算子
説明
roleId
String
==
IDMCロールのID。
roleName
String
==
IDMCロールの名前。
samlGroupNames
String
==
SAMLグループの名前。

GET要求の例

特定のIDMCロールのIDのグループマッピングの詳細を取得するには、次の要求を使用します。
GET <baseApiUrl>/public/core/v3/Orgs/<organization ID>/SAMLConfig/groupMappings?q=roleId=="94207429"
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <SessionId>

GET応答

グループマッピングの詳細を返します。エラーが発生した場合はエラーを返します。
[SAMLグループとロールのマッピング]オプションが有効になっていてもマッピングが存在しない場合、応答は空になります。
成功すると、使用可能なグループマッピングの数と、各グループマッピングに関する次の情報を返します。
フィールド
タイプ
説明
count
String
使用可能なグループマッピングの数。
groupMappings
-
各グループマッピングのマッピング情報が含まれます。
roleId
String
IDMCロールのID。
roleName
String
IDMCロールの名前。
samlGroupNames
String
SAMLグループの名前。

GET応答の例

成功した場合、次の例のような応答を受信します。
{
"count": 2,
"groupMappings": [
{
"roleId":"94207429",
"roleName:"Admin",
"samlGroupNames": [
"Security", "Dev-Managers"
]
},
{
"roleId":"149021",
"roleName:"Monitor",
"samlGroupNames": "Developers"
}
]
}

SAMLロールマッピングの詳細の取得

組織のすべてのロールマッピングの詳細を取得したり、フィルタを使用して特定のIDMCロールまたはSAMLロールのロールマッピングの詳細を取得したりできます。

GET要求

ロールマッピングの詳細を取得するには、次のURIを使用します。
public/core/v3/Orgs/<organization ID>/SAMLConfig/roleMappings?<query parameters>
組織のロールマッピングの詳細をすべて取得するには、クエリパラメータを省略します。
特定のロールまたはSAMLロールの詳細を取得するには、次のクエリパラメータをURIに追加します。
パラメータ
タイプ
説明
q
String
クエリフィルタの文字列。次のいずれかのフィールドを使用してフィルタできます。
  • - roleId
  • - roleName
  • - samlRoleNames
limit
Int
返すマッピングの最大数。
デフォルトは200です。
skip
Int
結果でスキップするマッピングの数。
例えば、値を4に設定すると、最初の4つのマッピングが除外されます。
デフォルトは0です。
以下のフィールドを使用してクエリフィルタを定義できます。
フィールド
タイプ
演算子
説明
roleId
String
==
IDMCロールのID。
roleName
String
==
IDMCロールの名前。
samlRoleNames
String
==
SAMLロールの名前。

GET要求の例

特定のIDMCロールのIDのロールマッピングの詳細を取得するには、次の要求を使用します。
GET <baseApiUrl>/public/core/v3/Orgs/03kEYNeduIJkVv0Qvq8NgY/SAMLConfig/roleMappings?q=roleId=="94247429"
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <SessionId>

GET応答

ロールマッピングの詳細を返します。エラーが発生した場合はエラーを返します。
[SAMLグループとロールのマッピング]オプションが有効になっていてもマッピングが存在しない場合、応答は空になります。
成功すると、使用可能なロールマッピングの数と、各ロールマッピングに関する次の情報を返します。
フィールド
タイプ
説明
count
String
使用可能なロールマッピングの数。
roleMappings
-
各ロールマッピングのマッピング情報が含まれます。
roleId
String
IDMCロールのID。
roleName
String
IDMCロールの名前。
samlRoleNames
String
SAMLロールの名前。

GET応答の例

成功した場合、次の例のような応答を受信します。
{
"count": 2,
"roleMappings": [
{
"roleId":"94247429",
"roleName:"Developer",
"samlRoleNames": [
"Data Designer", "MS Deployer"
]
},
{
"roleId":"142321",
"roleName:"Admin",
"samlRoleNames": "Operator"
}
]
}