ユーザー承認の検索
get
/oauth2/rest/consent
REST APIによって、エンド・ユーザーは承認をフェッチできます。APIは、指定されたユーザーに関するすべての承認、または指定されたユーザー、OAuthクライアントおよびOAuthアプリケーションの組合せに関する特定の承認を返します。
リクエスト
サポートされているメディア・タイプ
- application/x-www-form-urlencoded
問合せパラメータ
- clientIdentifier(optional): string
OAuthクライアントID/識別子
- identityDomain(optional): string
トークンをリクエストしているアイデンティティ・ドメイン。'x-oauth-identity-domain-name'ヘッダー・パラメータが指定されている場合、これはオプションのパラメータです。
- resServerId(optional): string
OAuthアプリケーションID/識別子
ヘッダー・パラメータ
- oam_remote_user: string
承認を取得する必要のあるユーザー名/識別子を指定します(oam_remote_user (ヘッダー)またはoam_id (Cookie)を使用)。
- x-oauth-identity-domain-name: string
ユーザー承認の場所として予想されるOAuthアイデンティティ・ドメイン名。
レスポンス
サポートされているメディア・タイプ
- application/json
200 レスポンス
ユーザー承認 - 詳細を正常に取得しました
ネストされたスキーマ: consent
型:
ソースを表示
object
- clientId: string
OAuthクライアント識別子
- consentId: string
OAuth承認の一意識別子
- createTimeStamp: string
OAuth承認の作成タイムスタンプ
- resourceId: string
OAuthアプリケーション識別子
- scopes: array scope
- valid: boolean
OAuth承認の有効性を識別するフラグ。True - 承認は有効、False - 承認は無効
400 レスポンス
ユーザー承認 - 詳細の取得に失敗しました
ルート・スキーマ: schema
型:
ソースを表示
object
- error(optional): string
エラー・コード
- error_description(optional): string
エラーの説明
例:
{
"error":"400",
"error_description":"Required parameter 'X-OAUTH-IDENTITY-DOMAIN-NAME' is not present."
}
例
次の例は、OAuthアイデンティティ・ドメイン名における特定のユーザーに関するすべての承認をフェッチするサンプルのリクエストとレスポンスを示します。
すべての承認をフェッチするcURLの例
curl --location --request GET 'http://<lbr-host>:<lbr-port>/oauth2/rest/consent' \ --header 'X-OAUTH-IDENTITY-DOMAIN-NAME: DemoDomain' \ --header 'OAM_REMOTE_USER: DemoUser'
サンプル・レスポンス
{ "consents": [ { "consentId": "ebe683b9-0345-3c35-a21d-35e57958ed21", "clientId": "DemoClient", "resourceId": "506a50c2-a892-49ee-85ad-9993169a18bf", "scopes": [ "DemoResource.editDemoRes", "DemoResource.delDemoRes", "DemoResource.viewDemoRes" ], "additionalScopes": null, "createTimeStamp": "Wed Apr 08 23:06:54 PDT 2020", "valid": true }, { "consentId": "8c1d5d3a-dc74-3939-aa72-03c12fcff3b3", "clientId": "DemoClient", "resourceId": "OPENID_MGMT_RESOURCE", "scopes": [ "openid", "profile", "email" ], "additionalScopes": null, "createTimeStamp": "Wed Apr 08 23:06:54 PDT 2020", "valid": true } ] }
次の例は、各ユーザーおよびクライアント・アプリケーションに関する承認をフェッチするサンプルのリクエストとレスポンスを示します。
各ユーザーおよびクライアント・アプリケーションに関する承認をフェッチするcURLコマンド
curl --location --request GET 'https://<lbr-host>:<lbr-port>/oauth2/rest/consent?resServerId=506a50c2-a892-49ee-85ad-9993169a18bf&clientIdentifier=DemoClient' \ --header 'X-OAUTH-IDENTITY-DOMAIN-NAME: DemoDomain' \ --header 'OAM_REMOTE_USER: DemoUser'
サンプル・レスポンス
{ "consents": [ { "consentId": "ebe683b9-0345-3c35-a21d-35e57958ed21", "clientId": "DemoClient", "resourceId": "506a50c2-a892-49ee-85ad-9993169a18bf", "scopes": [ "DemoResource.editDemoRes", "DemoResource.delDemoRes", "DemoResource.viewDemoRes" ], "additionalScopes": null, "createTimeStamp": "Wed Apr 08 23:06:54 PDT 2020", "valid": true } ] }