電子メール・アドレスがすでに検証済の場合の電子メール検証の再送信
ユーザーが自己登録プロセスを使用してアイデンティティ・ドメインにアカウントを作成した後、ユーザーの電子メール・アドレスを検証するために電子メール通知がユーザーに送信されます。ユーザーが電子メール・アドレスを検証すると、その後に電子メール・アドレスを検証できなくなります。
ただし、アイデンティティ・ドメインでは、カスタム・クライアントが同じ電子メール・アドレスの電子メール・フローの変更を必要な回数再開始することもできます。この機能をサポートするには、MeEmailVerifier
リクエスト・ペイロードでtriggerEmailVerificationFlowIfEmailAlreadyVerified
属性にtrue
を設定する必要があります。
電子メール・アドレスがすでに検証されている場合は、次のステップを実行します:
ステップ1: ユーザーの作成
このステップでは、cURLを使用してRESTリソースに対するPOSTリクエストを発行することによって、ユーザーの作成方法を示します。cURLの詳細は、「cURLの使用」を参照してください
curl
-X POST
-H "Content-Type:application/json"
-H "Authorization: Bearer <Access Token Value>"https://<domainURL>/admin/v1/Users
この例のコマンドでは、URL構造
https://<domainURL>/resource-path
を使用します。<domainURL>
はアイデンティティ・ドメインURLを表し、リソース・パスはアイデンティティ・ドメインAPIを表します。使用する適切なURL構造の詳細は、「リクエストの送信」を参照してください。リクエスト本文の例
JSON形式のリクエスト本文の例を次に示します:
{
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User"
],
"userName": "bjensen@example.com",
"password": "{{password}}",
"name": {
"familyName": "Jensen",
"givenName": "Barbara",
"middleName": "Jane"
},
"emails": [
{
"value": "bjensen@example.com",
"type": "work",
"primary": true
}
]
}
レスポンス本文の例
レスポンス本文の例を次に示します:
{
"idcsCreatedBy": {
"type": "User",
"display": "admin opc",
"value": "6aa2585abd464991929bcf05ace532e9",
"$ref": "[https://<domainURL>/admin/v1/Users/6aa2585abd464991929bcf05ace532e9]"
},
"id": "ff9a9207fc8c4fd2b3d76af84235e8fd",
"meta": {
"created": "2022-03-01T05:19:52.765Z",
"lastModified": "2022-03-01T05:19:52.765Z",
"resourceType": "User",
"location": "[https://<domainURL>/admin/v1/Users/ff9a9207fc8c4fd2b3d76af84235e8fd]"
},
"active": true,
"displayName": "Barbara Jensen",
"idcsLastModifiedBy": {
"value": "6aa2585abd464991929bcf05ace532e9",
"display": "admin opc",
"type": "User",
"$ref": "[https://<domainURL>/admin/v1/Users/6aa2585abd464991929bcf05ace532e9]"
},
"userName": "bjensen2",
"emails": [
{
"verified": false,
"primary": false,
"secondary": false,
"value": "[bjensen@example.com|mailto:bjensen@example.com]",
"type": "recovery"
},
{
"verified": false,
"primary": true,
"secondary": false,
"value": "[bjensen@example.com|mailto:bjensen@example.com]",
"type": "work"
}
],
"urn:ietf:params:scim:schemas:example:idcs:extension:userState:User": {
"locked": {
"on": false
}
},
"name": {
"familyName": "Jensen",
"givenName": "Barbara",
"formatted": "Barbara Jane Jensen",
"middleName": "Jane"
},
"schemas": [
"urn:ietf:params:scim:schemas:core:2.0:User",
"urn:ietf:params:scim:schemas:example:idcs:extension:userState:User"
]
}
ステップ2: ユーザーの取得
このステップでは、cURLを使用してRESTリソースに対するGETリクエストを発行することによって、ユーザーのIDでユーザーを取得する方法を示しています。cURLの詳細は、「cURLの使用」を参照してください
curl
-X GET
-H "Content-Type:application/scim+json"
-H "Authorization: Bearer <Access Token Value>"https://<domainURL>/admin/v1/Users/<user_ocid or user_id>
この例のコマンドは、URL構造
https://<domainURL>/resource-path
を使用します。ここで、<domainURL>
はIdentity Service URLを表し、リソース・パスはIdentity Service APIを表します。使用する適切なURL構造の詳細は、「リクエストの送信」を参照してください。レスポンス本文の例
次の例に、レスポンスボディーの内容を JSON形式で示します。
{
"displayName": "Barbara Jensen",
"name": {
"givenName": "Barbara",
"formatted": "Barbara Jane Jensen",
"middleName": "Jane",
"familyName": "Jensen"
},
"urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User": {
"locked": {
"on": false
}
},
"userName": "bjensen@example.com",
"id": "ff9a9207fc8c4fd2b3d76af84235e8fd",
"active": true,
"emails": [
{
"verified": "false",
"value": "bjensen@example.com",
"type": "recovery"
},
{
"primary": true,
"value": "bjensen@example.com",
"type": "work"
}
],
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:extension:userState:User",
"urn:ietf:params:scim:schemas:core:2.0:User"
],
"meta": {
"resourceType": "User",
"created": "2022-07-13T07:28:59.227Z",
"lastModified": "2022-07-13T07:28:59.227Z",
"location": "http://<domainURL>/admin/v1/Users/ff9a9207fc8c4fd2b3d76af84235e8fd"
},
"idcsCreatedBy": {
"value": "f8fa30db0f5f41f98de00bc07c05a73d",
"$ref": "/OAuthClients/f8fa30db0f5f41f98de00bc07c05a73d",
"type": "OAuthClient",
"display": "admin"
},
"idcsLastModifiedBy": {
"value": "f8fa30db0f5f41f98de00bc07c05a73d",
"$ref": "/OAuthClients/f8fa30db0f5f41f98de00bc07c05a73d",
"type": "OAuthClient",
"display": "admin"
}
}
ステップ3: セルフサービス電子メール検証の開始
このステップは、cURLを使用してRESTリソースに対するPUTリクエストを発行することによって、ユーザーのプライマリまたはリカバリ用の電子メール・アドレスのいずれかの電子メール検証を開始する方法を示しています。cURLの詳細は、「cURLの使用」を参照してください
curl
-X PUT
-H "Content-Type:application/scim+json"
-H "Authorization: Bearer <Access Token Value>"https://<domainURL>/admin/v1/MeEmailVerifier
リクエスト本文の例
JSON形式のリクエスト本文の例を次に示します:
{
"email": "bjensen@example.com",
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:MeEmailVerifier"
],
"id": "ff9a9207fc8c4fd2b3d76af84235e8fd",
"userFlowControlledByExternalClient": true,
"triggerEmailVerificationFlowIfEmailAlreadyVerified": true
}
レスポンス本文の例
次の例に、レスポンスボディーの内容を JSON形式で示します。
{
"email": "bjensen@example.com",
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:MeEmailVerifier"
],
"id": "ff9a9207fc8c4fd2b3d76af84235e8fd",
"userFlowControlledByExternalClient": true,
"triggerEmailVerificationFlowIfEmailAlreadyVerified": true,
"meta": {
"resourceType": "MeEmailVerifier",
"location": "https://<domainURL>/admin/v1/MeEmailVerifier/57044ca14d274d789a586e5ec77c26f3"
},
"userToken": {
"value": "db21a3578d27439ca9fab6349be46c30",
"$ref": "https://<domainURL>/admin/v1/UserTokens/db21a3578d27439ca9fab6349be46c30"
}
}
ステップ4: ユーザー・トークンの取得
このステップでは、cURLを使用してRESTリソースに対するGETリクエストを発行することによって、そのIDを使用してユーザー・トークンを取得する方法を示しています。cURLの詳細は、「cURLの使用」を参照してください
curl
-X GET
-H "Content-Type:application/scim+json"
-H "Authorization: Bearer <Access Token Value>"https://<domainURL>/admin/v1/UserTokens/{{usertokenid}}
レスポンス本文の例
次の例に、レスポンスボディーの内容を JSON形式で示します。
{
"expiryTime": "2022-07-13T07:28:59.227Z",
"token": "KtXTrZkyIC2OWYVChbYEtfWnE7zhxlYJ0roEvsj0F2I=",
"tokenType": "email",
"userId": "5a7550ad5cfa4f50bdc608da1831481b",
"data": "bjensen@example.com",
"eventId": "admin.user.password.reset.success",
"status": 0,
"id": "3e4b69e99ddf472989e089a904a3c1a7",
"meta": {
"created": "2022-07-13T07:28:59.227Z",
"lastModified": "2022-07-13T07:28:59.227Z",
"resourceType": "UserToken",
"location": "$baseUri/UserTokens/{id}"
},
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:UserToken"
],
"idcsCreatedBy": {
"value": "14171fc6031a417cac680cdb9d82c2ea",
"display": "admin",
"type": "OAuthClient",
"$ref": "$baseUri/OAuthClient/{id}"
},
"idcsLastModifiedBy": {
"value": "14171fc6031a417cac680cdb9d82c2ea",
"display": "admin",
"type": "OAuthClient",
"$ref": "$baseUri/OAuthClient/{id}"
}
}
ステップ5: 電子メール・アドレスの自己検証
このステップでは、cURLを使用してRESTリソースに対するPOSTリクエストを発行することによって、新しい電子メール・アドレスを検証する方法を示しています。このエンドポイントによってトークンが検証され、電子メール・アドレスが検証済とマークされます。cURLの詳細は、「cURLの使用」を参照してください
curl
-X POST
-H "Content-Type:application/scim+json"
-H "Authorization: Bearer <Access Token Value>"https://<domainURL>/admin/v1/MeEmailVerified
リクエスト本文の例
JSON形式のリクエスト本文の例を次に示します:
{
"token": "YzQwYTc4NmE5YmEzNGU4MDg0YjFkY2FhZWRmNThlOTc6TEFGaWtuTXI5OjIwMTUtMDctMjRUMDI6Mjk6NDEuNzEwWg==",
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:MeEmailVerified"
]
}
レスポンス本文の例
次の例に、レスポンスボディーの内容を JSON形式で示します。
{
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:extension:MeEmailVerified"
],
"id": "5fed0efce51f40b4a42b0773a65178c3",
"meta": {
"resourceType": "MeEmailVerified",
"location": "https://<domainURL>/admin/v1/MeEmailVerified/57044ca14d274d789a586e5ec77c26f3"
}
}