OpenIdConnectOptions 类

定义

OpenIdConnectHandler 的配置选项

public ref class OpenIdConnectOptions : Microsoft::AspNetCore::Authentication::RemoteAuthenticationOptions
public class OpenIdConnectOptions : Microsoft.AspNetCore.Authentication.RemoteAuthenticationOptions
type OpenIdConnectOptions = class
    inherit RemoteAuthenticationOptions
Public Class OpenIdConnectOptions
Inherits RemoteAuthenticationOptions
继承

构造函数

OpenIdConnectOptions()

初始化新的 OpenIdConnectOptions

属性

AccessDeniedPath

获取或设置用户代理重定向到的可选路径(如果用户未批准远程服务器请求的授权要求)。 默认情况下不设置此属性。 在这种情况下,如果远程授权服务器返回access_denied响应,则会引发异常。

(继承自 RemoteAuthenticationOptions)
AdditionalAuthorizationParameters

获取将包含在授权请求中的其他参数。

AuthenticationMethod

获取或设置用于将用户代理重定向到标识提供者的方法。

Authority

获取或设置进行 OpenIdConnect 调用时要使用的颁发机构。

AutomaticRefreshInterval

获取或设置自动元数据刷新的发生频率。

Backchannel

用于与远程标识提供者通信。

(继承自 RemoteAuthenticationOptions)
BackchannelHttpHandler

用于与远程标识提供者通信的 HttpMessageHandler。 这不能与 BackchannelCertificateValidator 同时设置,除非该值可以向下转换为 WebRequestHandler。

(继承自 RemoteAuthenticationOptions)
BackchannelTimeout

获取或设置与远程标识提供者的反向通道通信的超时值(以毫秒为单位)。

(继承自 RemoteAuthenticationOptions)
CallbackPath

将返回用户代理的应用程序基路径中的请求路径。 当中间件到达时,中间件将处理此请求。

(继承自 RemoteAuthenticationOptions)
ClaimActions

声明操作的集合,用于从 json 用户数据中选择值并创建声明。

ClaimsIssuer

获取或设置应用于所创建的任何声明的颁发者

(继承自 AuthenticationSchemeOptions)
ClientId

获取或设置“client_id”。

ClientSecret

获取或设置“client_secret”。

Configuration

开发人员直接提供的配置。 如果提供,则不会使用 MetadataAddress 和 Backchannel 属性。 在请求处理期间不应更新此信息。

ConfigurationManager

负责从元数据检索、缓存和刷新配置。 如果未提供,将使用 MetadataAddress 和 Backchannel 属性创建一个。

CorrelationCookie

确定用于在将 Cookie 添加到响应之前创建相关 Cookie 的设置。

(继承自 RemoteAuthenticationOptions)
DataProtectionProvider

获取或设置用于保护数据的类型。

(继承自 RemoteAuthenticationOptions)
DisableTelemetry

指示是否应禁用遥测。 启用此功能后,Microsoft IdentityModel 包的程序集版本将作为授权/注销请求参数发送到远程 OpenID Connect 提供程序。

Events

获取或设置处理 OpenIdConnect 消息时要通知的 OpenIdConnectEvents

EventsType

如果已设置,将用作服务类型来获取事件实例而不是属性。

(继承自 AuthenticationSchemeOptions)
ForwardAuthenticate

如果已设置,则指定此方案应将 AuthenticateAsync 调用转发到的目标方案。 例如 Context.AuthenticateAsync(“ThisScheme”) => Context.AuthenticateAsync(“ForwardAuthenticateValue”):将目标设置为当前方案以禁用转发并允许正常处理。

(继承自 AuthenticationSchemeOptions)
ForwardChallenge

如果设置,则指定此方案应将 ChallengeAsync 调用转发到的目标方案。 例如 Context.ChallengeAsync(“ThisScheme”) => Context.ChallengeAsync(“ForwardChallengeValue”):将目标设置为当前方案以禁用转发并允许正常处理。

(继承自 AuthenticationSchemeOptions)
ForwardDefault

如果设置,则指定一个默认方案,身份验证处理程序应默认将所有身份验证操作转发到该方案。 默认转发逻辑将首先检查最具体的 ForwardAuthenticate/Challenge/Forbid/SignIn/SignOut 设置,然后检查 ForwardDefaultSelector,后跟 ForwardDefault。 第一个非 null 结果将用作要转发的目标方案。

(继承自 AuthenticationSchemeOptions)
ForwardDefaultSelector

用于为当前请求选择默认方案,身份验证处理程序应默认将所有身份验证操作转发到该方案。 默认转发逻辑将首先检查最具体的 ForwardAuthenticate/Challenge/Forbid/SignIn/SignOut 设置,然后检查 ForwardDefaultSelector,后跟 ForwardDefault。 第一个非 null 结果将用作要转发的目标方案。

(继承自 AuthenticationSchemeOptions)
ForwardForbid

如果已设置,则指定此方案应将 ForbidAsync 调用转发到的目标方案。 例如 Context.ForbidAsync(“ThisScheme”) => Context.ForbidAsync(“ForwardForbidValue”);将目标设置为当前方案以禁用转发并允许正常处理。

(继承自 AuthenticationSchemeOptions)
ForwardSignIn

如果已设置,则指定此方案应将 SignInAsync 调用转发到的目标方案。 例如 Context.SignInAsync(“ThisScheme”) => Context.SignInAsync(“ForwardSignInValue”);将目标设置为当前方案以禁用转发并允许正常处理。

(继承自 AuthenticationSchemeOptions)
ForwardSignOut

如果已设置,则指定此方案应将 SignOutAsync 调用转发到的目标方案。 例如 Context.SignOutAsync(“ThisScheme”) => Context.SignOutAsync(“ForwardSignOutValue”);将目标设置为当前方案以禁用转发并允许正常处理。

(继承自 AuthenticationSchemeOptions)
GetClaimsFromUserInfoEndpoint

用于设置处理程序是否应转到用户信息终结点,以在从令牌终结点接收id_token创建标识后检索其他声明。 默认值为“false”。

MapInboundClaims

获取或设置 SecurityTokenValidator 中 JwtSecurityTokenHandler 的默认实例和 TokenHandler 中 JsonWebTokenHandler 的默认实例的 MapInboundClaims 属性,该实例用于确定是否映射验证 JwtSecurityToken时提取的声明类型。

如果此值设置为 true,则使用此映射转换后,声明类型将设置为 JSON 声明“name”。 否则,不会发生映射。

默认值为 true。

MaxAge

获取或设置“max_age”。 如果设置“max_age”参数,则会随身份验证请求一起发送。 如果标识提供者未在指定的时间内主动对用户进行身份验证,系统会提示用户重新进行身份验证。 默认情况下,未指定max_age。

MetadataAddress

获取或设置用于获取元数据的发现终结点

NonceCookie

确定在将 Cookie 添加到响应之前用于创建 nonce Cookie 的设置。

Prompt

获取或设置“prompt”。

ProtocolValidator

获取或设置用于确保收到的“id_token”的 OpenIdConnectProtocolValidatorhttp://openid.net/specs/openid-connect-core-1_0.html#IDTokenValidation

RefreshInterval

获取或设置检索失败或显式请求刷新之间的最小检索时间。

RefreshOnIssuerKeyNotFound

获取或设置是否应在 SecurityTokenSignatureKeyNotFoundException 之后尝试元数据刷新。 这允许在签名密钥滚动更新时自动恢复。 默认情况下启用此功能。

RemoteAuthenticationTimeout

获取或设置完成身份验证流的时间限制(默认情况下为 15 分钟)。

(继承自 RemoteAuthenticationOptions)
RemoteSignOutPath

在此路径上收到的请求将导致处理程序使用 SignOutScheme 调用 SignOut。

RequireHttpsMetadata

获取或设置元数据地址或颁发机构是否需要 HTTPS。 默认值为 true。 这只能在开发环境中禁用。

Resource

获取或设置“resource”。

ResponseMode

获取或设置“response_mode”。

ResponseType

获取或设置“response_type”。

ReturnUrlParameter

获取或设置参数的名称,该参数用于在远程质询触发到访问被拒绝页面之前传达用户的原始位置。 仅当显式指定 AccessDeniedPath 时,才使用此属性。

(继承自 RemoteAuthenticationOptions)
SaveTokens

定义在成功授权后是否应将访问和刷新令牌存储在 AuthenticationProperties 中。 默认情况下,此属性设置为 false 以减少最终身份验证 Cookie 的大小。

(继承自 RemoteAuthenticationOptions)
Scope

获取要请求的权限列表。

SecurityTokenValidator
已过时.

获取或设置用于验证标识令牌的 ISecurityTokenValidator

SignedOutCallbackPath

从标识提供者注销后,将在应用程序的基路径中返回用户代理的请求路径。 请参阅 http://openid.net/specs/openid-connect-session-1_0.html#RedirectionAfterLogoutpost_logout_redirect_uri。

SignedOutRedirectUri

从标识提供者注销应用程序后,用户代理将重定向到的 URI。 调用 SignedOutCallbackPath 后,将发生重定向。

SignInScheme

获取或设置与负责在成功身份验证后保留用户标识的中间件对应的身份验证方案。 此值通常对应于 Startup 类中注册的 Cookie 中间件。 省略时,DefaultSignInScheme 用作回退值。

(继承自 RemoteAuthenticationOptions)
SignOutScheme

用于 SignOutPath 上的注销的身份验证方案。 如果未设置,将使用 SignInScheme。

SkipUnrecognizedRequests

指示对 CallbackPath 的请求是否也可能用于其他组件。 如果启用,处理程序将通过不包含 OpenIdConnect 身份验证响应的请求传递。 禁用此功能并将 CallbackPath 设置为专用终结点可能会提供更好的错误处理。 默认情况下,这是禁用的。

StateDataFormat

获取或设置用于保护处理程序处理的数据的类型。

StringDataFormat

获取或设置用于保护处理程序使用的字符串的类型。

TimeProvider

用于测试。

(继承自 AuthenticationSchemeOptions)
TokenHandler

获取或设置用于验证标识令牌的 TokenHandler

如果 falseUseSecurityTokenValidator,则使用此方法,而不是 SecurityTokenValidator

TokenValidationParameters

获取或设置用于验证标识令牌的参数。

UsePkce

启用或禁用对代码交换(PKCE)标准的证明密钥的使用。 这仅适用于将 ResponseType 设置为 Code时。 请参阅 https://tools.ietf.org/html/rfc7636。 默认值为 true

UseSecurityTokenValidator

获取或设置是使用 TokenHandler 还是用于验证标识令牌的 SecurityTokenValidator

UseTokenLifetime

指示身份验证会话生存期(例如 cookies)应与身份验证令牌的生存期匹配。 如果令牌不提供生存期信息,则将使用正常会话生存期。 默认情况下,这是禁用的。

方法

Validate()

检查选项是否有效。 如果情况不正常,应引发异常。

Validate(String)

检查选项是否对特定方案有效

(继承自 RemoteAuthenticationOptions)

适用于