IDプロバイダ
JSON Webトークン(JWT)をOAuthアクセストークンとして使用して、Informatica Intelligent Cloud Servicesにログインできます。JWTアクセストークンを使用してログインするには、組織にIDプロバイダが登録されている必要があります。IdentityProvidersリソースを使用して、IDプロバイダを登録および管理します。
IdentityProvidersリソースを使用して、次のようなタスクを実行できます。
- •IDプロバイダを登録する。
- •IDプロバイダの詳細を取得する。
- •IDプロバイダを更新する。
- •IDプロバイダを削除する。
IDプロバイダの登録
POST要求を使用してIDプロバイダを登録します。
注: 1つの組織に登録できるIDプロバイダは1つのみです。
POST要求
組織にIDプロバイダを登録するには、次のURIを使用します:
/public/core/v3/Orgs/<orgId>/IdentityProviders
要求に次のフィールドを含めます。
フィールド | タイプ | 必須 | 説明 |
|---|
type | String | ○ | IDプロバイダのタイプ。 サポートされているタイプはOIDCです。 |
endPoints | オブジェクト | はい | IDプロバイダの発行者とJWTトークンのURLを含むオブジェクト。 |
issuer | String | ○ | endPointsオブジェクトに含めます。 IDプロバイダの発行者の絶対URL。 キーURLと同じHTTPSスキームを使用し、キーURLのサブセットである必要があります。 最大長は255文字です。 |
keys | String | ○ | endPointsオブジェクトに含めます。 JWTトークンの絶対URL。 発行者のURLと同じHTTPSスキームを使用する必要があります。 最大長は255文字です。 |
accountPolicy | オブジェクト | はい | アカウントポリシーを定義するオブジェクト。 |
リンク | String | ○ | accountPolicyオブジェクトに含めます。 ユーザーを識別するためのプロパティを含むオブジェクト。 |
tokenClaim | 文字列 | - | リンクオブジェクトに含めます。 JWT検証用にユーザーを識別するために使用される要求の名前。デフォルトはsubです。 最大長は64文字です。 |
matchType | String | ○ | リンクオブジェクトに含めます。 Informatica Intelligent Cloud Servicesユーザーを識別するためのInformatica Cloud属性名。次のいずれかの値を使用します。 最大長は64文字です。 |
signingAlgorithm | 文字列 | - | トークン署名アルゴリズム。次のいずれかの値を使用します。 - - HS256
- - HS 384
- - HS512
- - RS256
- - RS384
- - RS512
- - ES 256
- - ES 384
- - ES 412
- - PS256
- - PS384
- - PS512
- - EdDSA
- - ES256K
デフォルトはRS256です。 |
POST応答
失敗した場合は、エラーオブジェクトを返します。成功した場合、次の情報を返します。
フィールド | タイプ | 説明 |
|---|
id | String | ユーザーID。 |
orgId | String | ユーザーが属する組織のID。 |
type | 文字列 | IDプロバイダのタイプ。 サポートされているタイプはOIDCです。 |
endPoints | オブジェクト | IDプロバイダの発行者とJWTトークンのURLを含むオブジェクト。 |
issuer | 文字列 | endPointsオブジェクトに含まれます。 IDプロバイダの発行者の絶対URL。 |
keys | 文字列 | endPointsオブジェクトに含まれます。 JWTトークンの絶対URL。 |
accountPolicy | オブジェクト | アカウントポリシーを定義するオブジェクト。 |
リンク | 文字列 | accountPolicyオブジェクトに含まれます。 ユーザーを識別するためのプロパティを含むオブジェクト。 |
tokenClaim | 文字列 | リンクオブジェクトに含まれます。 JWT検証用にユーザーを識別するために使用される要求の名前。 |
matchType | 文字列 | リンクオブジェクトに含まれます。 Informatica Intelligent Cloud Servicesユーザーを識別するためのInformatica Cloud属性名。 |
signingAlgorithm | 文字列 | トークン署名アルゴリズム。 |
createTime | String | IDプロバイダが登録された日時。 |
createdBy | String | IDプロバイダを登録したInformatica Intelligent Cloud Servicesユーザー。 |
updateTime | String | IDプロバイダが最後に更新された日時。 |
updatedBy | String | IDプロバイダを最後に更新したInformatica Intelligent Cloud Servicesユーザー。 |
POST要求の例
次の例のような要求を使用できます。
POST <BaseApiUrl>/public/core/v3/Orgs/ppbg1kOl2Jo13b/IdentityProviders HTTP/<HTTP version>
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <SessionId>
https://dm-us.informaticacloud.com/saas/public/core/v3/Orgs/ppbg1kOl2Jo13b/IdentityProviders
{
"type": "OIDC",
"endPoints": {
"issuer": "https://myidp.mycompany.com/oauth2/",
"keys": "https://myidp.mycompany.com/oauth2/keys"
}
{
"accountPolicy": {
"link": {
"tokenClaim": "sub",
"matchType": "uid"
}
}
"signingAlgorithm": "HS256"
}
POST応答の例
成功した場合、次の例のような応答を受信します。
{
"id" : "4aoljyi4ppbg1kOl2Jo13b",
"orgId" : "ppbg1kOl2Jo13b"
"type": "OIDC",
"endPoints": {
"issuer": "https://myidp.mycompany.com/oauth2/",
"keys": "https://myidp.mycompany.com/oauth2/keys"
} {
"accountPolicy": {
"link": {
"tokenClaim": "sub",
"matchType": "uid"
}
}
"signingAlgorithm": "HS256",
"createTime": "2019-03-06T22:04:00.000Z",
"createdBy": "a@abc.com",
"updateTime": "2019-03-06T22:04:00.000Z",
"updatedBy": "a@abc.com"
}
IDプロバイダの詳細の取得
GET要求を使用して、IDプロバイダに関する情報を取得します。
GET要求
組織のIDプロバイダに関する情報を取得するには、次のURIを使用します:
/public/core/v3/Orgs/<orgId>/IdentityProviders
GET応答
失敗した場合は、エラーオブジェクトを返します。成功した場合、IDプロバイダに関する次の情報を返します。
フィールド | タイプ | 説明 |
|---|
id | String | ユーザーID。 |
orgId | String | ユーザーが属する組織のID。 |
type | 文字列 | IDプロバイダのタイプ。 サポートされているタイプはOIDCです。 |
endPoints | オブジェクト | IDプロバイダの発行者とJWTトークンのURLを含むオブジェクト。 |
issuer | 文字列 | endPointsオブジェクトに含まれます。 IDプロバイダの発行者の絶対URL。 |
keys | 文字列 | endPointsオブジェクトに含まれます。 JWTトークンの絶対URL。 |
accountPolicy | オブジェクト | アカウントポリシーを定義するオブジェクト。 |
リンク | 文字列 | accountPolicyオブジェクトに含まれます。 ユーザーを識別するためのプロパティを含むオブジェクト。 |
tokenClaim | 文字列 | リンクオブジェクトに含まれます。 JWT検証用にユーザーを識別するために使用される要求の名前。デフォルトはsubです。 |
matchType | 文字列 | リンクオブジェクトに含まれます。 Informatica Intelligent Cloud Servicesユーザーを識別するためのInformatica Cloud属性名。 |
signingAlgorithm | 文字列 | トークン署名アルゴリズム。 |
createTime | String | IDプロバイダが登録された日時。 |
createdBy | String | IDプロバイダを登録したInformatica Intelligent Cloud Servicesユーザー。 |
updateTime | String | IDプロバイダが最後に更新された日時。 |
updatedBy | String | IDプロバイダを最後に更新したInformatica Intelligent Cloud Servicesユーザー。 |
GET要求の例
組織のIDプロバイダに関する情報を取得するには、次の要求を使用します。
GET <BaseApiUrl>/public/core/v3/Orgs/ppbg1kOl2Jo13b/IdentityProviders
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <SessionId>
GET応答の例
成功した場合、次の例のような応答を受信します。
[
{
"id" : "4aoljyi4ppbg1kOl2Jo13b",
"orgId" : "ppbg1kOl2Jo13b"
"type": "OIDC",
"endPoints": {
"issuer": "https://myidp.mycompany.com/oauth2/",
"keys": "https://myidp.mycompany.com/oauth2/keys"
} {
"accountPolicy": {
"link": {
"tokenClaim": "sub",
"matchType": "aliasName"
}
}
"signingAlgorithm": "HS256",
"createTime": "2019-03-06T22:04:00.000Z",
"createdBy": "a@abc.com",
"updateTime": "2019-03-06T22:04:00.000Z",
"updatedBy": "a@abc.com"
},
]
IDプロバイダの更新
PUT要求を使用してIDプロバイダを更新します。
PUT要求
IDプロバイダを更新するには、次のURIを使用します:
/public/core/v3/Orgs/<orgId>/IdentityProviders/<identity provider ID>
要求に以下のフィールドを含めることができます。
フィールド | タイプ | 必須 | 説明 |
|---|
endPoints | オブジェクト | はい | IDプロバイダの発行者とJWTトークンのURLを含むオブジェクト。 |
issuer | String | ○ | endPointsオブジェクトに含めます。 IDプロバイダの発行者の絶対URL。 キーURLと同じHTTPSスキームを使用し、キーURLのサブセットである必要があります。 最大長は255文字です。 |
keys | String | ○ | endPointsオブジェクトに含めます。 JWTトークンの絶対URL。 発行者のURLと同じHTTPSスキームを使用する必要があります。 最大長は255文字です。 |
accountPolicy | オブジェクト | はい | アカウントポリシーを定義するオブジェクト。 |
リンク | String | ○ | accountPolicyオブジェクトに含めます。 ユーザーを識別するためのプロパティを含むオブジェクト。 |
tokenClaim | 文字列 | - | リンクオブジェクトに含めます。 JWT検証用にユーザーを識別するために使用される要求の名前。デフォルトはsubです。 最大長は64文字です。 |
matchType | String | ○ | リンクオブジェクトに含めます。 Informatica Intelligent Cloud Servicesユーザーを識別するためのInformatica Cloud属性名。次のいずれかの値を使用します。 最大長は64文字です。 |
signingAlgorithm | 文字列 | - | トークン署名アルゴリズム。次のいずれかの値を使用します。 - - HS256
- - HS 384
- - HS512
- - RS256
- - RS384
- - RS512
- - ES 256
- - ES 384
- - ES 412
- - PS256
- - PS384
- - PS512
- - EdDSA
- - ES256K
デフォルトはRS256です。 |
成功した場合は204の応答コードを返します。エラーが発生した場合はエラーオブジェクトを返します。
注: 組織のIDプロバイダを更新すると、更新された設定に準拠するJWTが受け入れられるまでに、ごくわずかな時間がかかる場合があります。
PUT要求の例
次の例のような要求を送信できます:
PUT <BaseApiUrl>/public/core/v3/Orgs/<orgId>/IdentityProviders/<identity provider ID>
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <SessionId>
https://dm-us.informaticacloud.com/saas/public/core/v3/Orgs/ppbg1kOl2Jo13b/IdentityProviders/6qnnXazBltUbOcUTYgyWO1
{
"endPoints": {
"issuer": "https://myidp.mycompany.com/oauth2/",
"keys": "https://myidp.mycompany.com/oauth2/keys"
},
"accountPolicy": {
"link": {
"tokenClaim": "user",
"matchType": "uid"
}
}
"signingAlgorithm": "RS512",
}
IDプロバイダの削除
IDプロバイダを削除するには、DELETE要求にIDプロバイダのIDを含めます。
IDプロバイダを削除するには、次のURIを使用します:
/public/core/v3/Orgs/<orgId>/IdentityProviders/<identity provider ID>
例:
DELETE http://dm-us.informaticacloud.com/saas/public/core/v3/Orgs/ppbg1mOj8Jo14c/IdentityProviders/6qnnXdzBdtUbObUTYhyWO1
成功した場合は204の応答コードを返します。エラーが発生した場合はエラーオブジェクトを返します。
注: 組織のIDプロバイダを削除すると、削除されたIDプロバイダに準拠するJWTが拒否されるまでに、ごくわずかな時間がかかる場合があります。