IdentityServer4
latest

Introduction

  • The Big Picture
  • 用語集
  • サポートされる仕様
  • パッケージングとビルド
  • サポートとコンサルティングのオプション
  • デモサーバとテスト
  • 貢献する

Quickstarts

  • セットアップと概要
  • クライアント証明書を使用したAPIの保護
  • パスワードを使用したAPIの保護
  • OpenID Connectによるユーザ認証の追加
  • 外部認証のサポートの追加
  • ハイブリッドフローへの切り替えとAPIアクセスの追加
  • ASP.NET Core Identityの使用
  • JavaScriptクライアントの追加
  • 構成データと運用データにEntityFramework Coreを使用する
  • コミュニティのクイックスタートとサンプル

Topics

  • スタートアップ
  • リソースの定義
  • クライアントの定義
  • サインイン
  • Sign-in with External Identity Providers
  • Windows認証
  • サインアウト
  • 外部IDプロバイダのサインアウト
  • Federated Sign-out
  • Federation Gateway
  • Consent
    • Consent Page
    • Authorization Context
    • Informing IdentityServer of the consent result
    • Returning the user to the authorization endpoint
  • APIの保護
  • デプロイ
  • Logging
  • イベント
  • Cryptography, Keys and HTTPS
  • 付与タイプ
  • Secrets
  • Extension Grants
  • リソースオーナーのパスワード検証
  • トークンをリフレッシュする
  • 参照トークン
  • CORS
  • ディスカバリー
  • より多くのAPIエンドポイントを追加する
  • 新しいプロトコルの追加
  • ツール

Endpoints

  • Discovery Endpoint
  • エンドポイントの認証
  • トークンエンドポイント
  • UserInfoエンドポイント
  • デバイス認証エンドポイント
  • Introspection Endpoint
  • 失効エンドポイント
  • End Session Endpoint

Reference

  • Identity Resource
  • APIリソース
  • クライアント
  • GrantValidationResult
  • プロファイルサービス
  • IdentityServer Interaction Service
  • Device Flow Interaction Service
  • IdentityServerのオプション
  • Entity Framework Support
  • ASP.NET IDのサポート

Misc

  • トレーニング
  • ブログ記事
  • ビデオ
IdentityServer4
  • Docs »
  • Consent
  • Edit on GitHub

Consent¶

承認リクエスト中に、IdentityServerにユーザの同意が必要な場合、ブラウザは同意ページにリダイレクトされます。

同意は、エンドユーザーがクライアントにリソース(IDまたはAPI)へのアクセスを許可するために使用されます。これは通常、サードパーティのクライアントにのみ必要で、クライアント設定でクライアントごとに有効/無効にすることができます。

Consent Page¶

ユーザーが同意を与えるためには、ホスティングアプリケーションによって同意ページを提供する必要があります。クイックスタートUIは、同意ページの基本的な実装を持っています。

同意ページは通常、現在のユーザーの表示名、アクセスを要求するクライアントの表示名、クライアントのロゴ、クライアントに関する詳細情報のリンク、およびクライアントがアクセスを要求しているリソースのリストを表示します。また、同じクライアントのために今後再度尋ねられないように、同意を "記憶"する必要があることをユーザーに示すこともできます。

ユーザーが同意した後、同意ページは同意をIdentityServerに通知しなければならず、その後、ブラウザーは許可エンドポイントにリダイレクトされなければなりません。

Authorization Context¶

IdentityServerは、承認要求のパラメータを含む同意ページにreturnUrlパラメータ(ユーザ対話オプションで設定可能)を渡します。これらのパラメータは、同意ページのコンテキストを提供し、インタラクションサービスのヘルプを使用して読むことができます。GetAuthorizationContextAsyncAPIは、のインスタンスを返しますAuthorizationRequest。

クライアントおよびリソースに関する追加の詳細は、IClientStoreおよびIResourceStoreinterfaces を使用して取得できます。

Informing IdentityServer of the consent result¶

インタラクションサービスのGrantConsentAsyncAPI は、同意ページがIdentityServerに同意の結果を通知することを許可します(これは、クライアントアクセスを拒否することもできます)。

IdentityServerは同意の結果を一時的に保持します。この永続性は、デフォルトでクッキーを使用します。これは、結果を認可エンドポイントに戻すのに十分なだけ持続する必要があるためです。この一時的な永続性は、「私の同意を覚えてください」機能で使用されていた永続性とは異なります(ユーザーに「同意してください」のままです)。同意ページと認可リダイレクトの間に他の永続性を使用する場合はIMessageStore<ConsentResponse>、実装をDIに実装して登録することができます。

Returning the user to the authorization endpoint¶

同意ページがIdentityServerに結果を通知すると、ユーザーはreturnUrlにリダイレクトできます。あなたの同意ページは、returnUrlが有効であることを確認することによって、開いているリダイレクトに対して保護する必要があります。これはIsValidReturnUrl、対話サービスを呼び出すことによって行うことができます。また、GetAuthorizationContextAsyncnull以外の結果を戻す場合は、returnUrlが有効であると信頼することもできます。

Next Previous

© Copyright 2016, Brock Allen & Dominick Baier Revision d667faf5.

Built with Sphinx using a theme provided by Read the Docs.