IdentityServerのオプション

  • IssuerUri
    ディスカバリ文書に表示される発行者名と発行されたJWTトークンを設定します。クライアントが使用するホスト名から発行者名を推測するこのプロパティを設定しないことをお勧めします。
  • PublicOrigin
    このサーバーインスタンスの起点です(例:https : //myorigin.com)。設定されていない場合は、要求元名が推測されます。

Endpoints

token、authorize、userinfoなど、個々のエンドポイントを有効/無効にすることができます。

デフォルトではすべてのエンドポイントが有効になっていますが、必要のないエンドポイントを無効にすることでサーバーをロックダウンすることができます。

Discovery

検出文書のさまざまなセクション(エンドポイント、スコープ、クレーム、グラントタイプなど)の有効化/無効化を許可します。

CustomEntries辞書は、探索ドキュメントへのカスタム要素を追加することができます。

認証

  • CookieLifetime
    認証Cookieの有効期間(IdentityServer提供のCookieハンドラが使用されている場合のみ有効)。
  • CookieSlidingExpiration
    クッキーをスライドさせるかどうかを指定します(IdentityServer提供のCookieハンドラが使用されている場合のみ有効)。
  • RequireAuthenticatedUserForSignOutMessage
    セッションエンドポイントを終了するパラメータを受け入れるためにユーザーを認証する必要があるかどうかを示します。デフォルトはfalseです。
  • CheckSessionCookieName
    チェック・セッション・エンドポイントに使用されるCookieの名前。
  • RequireCspFrameSrcForSignout
    設定されている場合は、フロント・チャネル・サインアウト通知のためにiframeをクライアントにレンダリングするend-sessionコールバック・エンドポイントでframe-src CSPヘッダーを送信する必要があります。デフォルトはtrueです。

Events

ifおよび登録されたイベントシンクに送信するイベントを設定できるようにします。イベントの詳細については、こちらを参照してください。

InputLengthRestrictions

クライアントID、スコープ、リダイレクトURIなどのさまざまなプロトコルパラメータの長さ制限を設定できます。

UserInteraction

  • LoginUrl, LogoutUrl, ConsentUrl, ErrorUrl, DeviceVerificationUrl
    Sets the the URLs for the login, logout, consent, error and device verification pages.
  • LoginReturnUrlParameter
    ログインページに渡される戻りURLパラメータの名前を設定します。デフォルトはreturnUrlです。
  • LogoutIdParameter
    ログアウトページに渡されるログアウトメッセージIDパラメータの名前を設定します。デフォルトはlogoutIdです。
  • ConsentReturnUrlParameter
    同意ページに渡される戻りURLパラメータの名前を設定します。デフォルトはreturnUrlです。
  • ErrorIdParameter
    エラーページに渡されるエラーメッセージIDパラメータの名前を設定します。デフォルトはerrorIdです。
  • CustomRedirectReturnUrlParameter
    承認エンドポイントからのカスタムリダイレクトに渡される戻りURLパラメータの名前を設定します。デフォルトはreturnUrlです。
  • DeviceVerificationUserCodeParameter
    Sets the name of the user code parameter passed to the device verification page. Defaults to userCode.
  • CookieMessageThreshold
    IdentityServerと一部のUIページとの間の特定のやりとりには、状態とコンテキストを渡すためのCookieが必要です(上記のいずれのページにも設定可能な「メッセージID」パラメータがあります)。ブラウザにはCookieの数とそのサイズに制限があるため、この設定はあまりに多くのCookieが作成されないようにするために使用されます。この値は、作成されるすべてのタイプのメッセージCookieの最大数を設定します。限度に達すると、最も古いメッセージCookieがパージされます。これは、IdentityServerを使用するときにユーザーが開くことができるタブの数を効果的に示します。

Caching

これらの設定は、起動時にサービス設定でそれぞれのキャッシングが有効になっている場合にのみ適用されます。

  • ClientStoreExpiration
    クライアントストアからロードされたクライアント構成のキャッシュ期間。
  • ResourceStoreExpiration
    リソースストアからロードされたIDとAPIリソース構成のキャッシュ期間。

CORS

IdentityServerは、そのエンドポイントの一部でCORSをサポートしています。基礎となるCORS実装はASP.NET Coreから提供され、依存関係注入システムに自動的に登録されます。

  • CorsPolicyName
    IdentityServerへのCORS要求に対して評価されるCORSポリシーの名前(デフォルト値"IdentityServer4")。これを処理するポリシープロバイダICorsPolicyServiceは、依存関係注入システムに登録されている点で実装されています。接続が許可されているCORS起点のセットをカスタマイズする場合は、のカスタム実装を提供することをお勧めしますICorsPolicyService。
  • CorsPaths
    CORSがサポートされているIdentityServer内のエンドポイント。デフォルトでは、ディスカバリー、ユーザー情報、トークン、および取り消しエンドポイントが使用されます。
  • PreflightCacheDuration
    プリフライトAccess-Control-Max-Age応答ヘッダーで使用される値を示すNullable <TimeSpan>。応答にキャッシュヘッダーが設定されていないことを示すデフォルトはnullです。

CSP (Content Security Policy)

IdentityServerは、必要に応じて、いくつかの応答に対してCSPヘッダーを発行します。

  • Level
    使用するCSPのレベル。CSPレベル2がデフォルトで使用されますが、古いブラウザをサポートする必要がある場合は、これCspLevel.Oneに合わせてこれを変更してください。
  • AddDeprecatedHeader
    古いX-Content-Security-PolicyCSPヘッダーも(標準ベースのヘッダー値に加えて)発行する必要があるかどうかを示します。デフォルトはtrueです。

Device Flow

  • DefaultUserCodeType
    The user code type to use, unless set at the client level. Defaults to Numeric, a 9-digit code.
  • Interval
    Defines the minimum allowed polling interval on the token endpoint. Defaults to 5.