OpenIdConnectOptions 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
的配置选项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) |
AuthenticationMethod |
获取或设置用于将用户代理重定向到标识提供者的方法。 |
Authority |
获取或设置在执行 OpenIdConnect 调用时使用的 Authority。 |
AutomaticRefreshInterval |
获取或设置自动元数据刷新的频率。 |
Backchannel |
用于与远程标识提供者通信。 (继承自 RemoteAuthenticationOptions) |
BackchannelHttpHandler |
用于与远程标识提供者通信的 HttpMessageHandler。 除非值可以向下转换为 WebRequestHandler,否则不能在设置 BackchannelCertificateValidator 的同时设置此项。 (继承自 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 |
获取或设置在 OpenIdConnectEvents 处理 OpenIdConnect 消息时要通知的 。 |
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 |
获取或设置 MapInboundClaims SecurityTokenValidator 中 的默认实例 JwtSecurityTokenHandler 和 TokenHandler 中 的默认 JsonWebTokenHandler 实例上的 属性,在确定是否映射在验证 JwtSecurityToken时提取的声明类型时使用。 如果设置为 true,则使用此映射转换后,“声明类型”将设置为 JSON 声明“name”。 否则,不会发生映射。 默认值为 true。 |
MaxAge |
获取或设置“max_age”。 如果设置了“max_age”参数,则会随身份验证请求一起发送。 如果标识提供者未在指定的时间内主动对用户进行身份验证,系统将提示用户重新进行身份验证。 默认情况下,不指定任何max_age。 |
MetadataAddress |
获取或设置用于获取元数据的发现终结点 |
NonceCookie |
确定用于在将 Cookie 添加到响应之前创建 nonce Cookie 的设置。 |
Prompt |
获取或设置“提示”。 |
ProtocolValidator |
获取或设置 OpenIdConnectProtocolValidator ,用于确保收到的“id_token”对于以下各项有效: http://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 。
默认情况下,此属性设置为 |
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 上的 SignOut 的身份验证方案。 如果未设置,将使用 SignInScheme。 |
SkipUnrecognizedRequests |
指示对 CallbackPath 的请求是否也针对其他组件。 如果启用,处理程序将通过不包含 OpenIdConnect 身份验证响应的请求传递。 禁用此功能并将 CallbackPath 设置为专用终结点可能会提供更好的错误处理。 此项已默认禁用。 |
StateDataFormat |
获取或设置用于保护处理程序处理的数据的类型。 |
StringDataFormat |
获取或设置用于保护处理程序使用的字符串的类型。 |
TimeProvider |
用于测试。 (继承自 AuthenticationSchemeOptions) |
TokenHandler |
获取或设置 TokenHandler 用于验证标识令牌的 。
如果 UseSecurityTokenValidator 为 |
TokenValidationParameters |
获取或设置用于验证标识令牌的参数。 |
UsePkce |
启用或禁用代码交换的证明密钥的使用 (PKCE) 标准。
仅当 设置为 Code时,ResponseType这才适用。
请参阅 https://tools.ietf.org/html/rfc7636。
默认值为 |
UseSecurityTokenValidator |
获取或设置是使用 TokenHandler 还是 SecurityTokenValidator 来验证标识令牌。 |
UseTokenLifetime |
指示身份验证会话生存期 (例如 cookie) 应与身份验证令牌的生存期匹配。 如果令牌未提供生存期信息,则将使用正常会话的生存期。 此项已默认禁用。 |
方法
Validate() |
检查选项是否有效。 如果情况不正常,应引发异常。 |
Validate(String) |
检查选项是否对特定方案有效 (继承自 RemoteAuthenticationOptions) |
适用于
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈