2021-01-18 02:24:47 +08:00
<!DOCTYPE html>
<!-- [if IE]><![endif] -->
< html >
< head >
< meta charset = "utf-8" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" >
< title > Class OpenIddictServerOptions
< / title >
< meta name = "viewport" content = "width=device-width" >
< meta name = "title" content = "Class OpenIddictServerOptions
">
< meta name = "generator" content = "docfx 2.56.6.0" >
< link rel = "shortcut icon" href = "../images/favicon.ico" >
< link rel = "stylesheet" href = "../styles/docfx.vendor.css" >
< link rel = "stylesheet" href = "../styles/docfx.css" >
< link rel = "stylesheet" href = "../styles/main.css" >
< link href = "https://fonts.googleapis.com/css?family=Roboto" rel = "stylesheet" >
< meta property = "docfx:navrel" content = "../toc.html" >
< meta property = "docfx:tocrel" content = "toc.html" >
< / head > < body data-spy = "scroll" data-target = "#affix" data-offset = "120" >
< div id = "wrapper" >
< header >
< nav id = "autocollapse" class = "navbar navbar-inverse ng-scope" role = "navigation" >
< div class = "container" >
< div class = "navbar-header" >
< button type = "button" class = "navbar-toggle" data-toggle = "collapse" data-target = "#navbar" >
< span class = "sr-only" > Toggle navigation< / span >
< span class = "icon-bar" > < / span >
< span class = "icon-bar" > < / span >
< span class = "icon-bar" > < / span >
< / button >
< a class = "navbar-brand" href = "../index.html" >
< img id = "logo" class = "svg" src = "../images/logo.png" alt = "" >
< / a > < / div >
< div class = "collapse navbar-collapse" id = "navbar" >
< form class = "navbar-form navbar-right" role = "search" id = "search" >
< div class = "form-group" >
< input type = "text" class = "form-control" id = "search-query" placeholder = "Search" autocomplete = "off" >
< / div >
< / form >
< / div >
< / div >
< / nav >
< div class = "subnav navbar navbar-default" >
< div class = "container hide-when-search" id = "breadcrumb" >
< ul class = "breadcrumb" >
< li > < / li >
< / ul >
< / div >
< / div >
< / header >
< div role = "main" class = "container body-content hide-when-search" >
< div class = "sidenav hide-when-search" >
< a class = "btn toc-toggle collapse" data-toggle = "collapse" href = "#sidetoggle" aria-expanded = "false" aria-controls = "sidetoggle" > Show / Hide Table of Contents< / a >
< div class = "sidetoggle collapse" id = "sidetoggle" >
< div id = "sidetoc" > < / div >
< / div >
< / div >
< div class = "article row grid-right" >
< div class = "col-md-10" >
< article class = "content wrap" id = "_content" data-uid = "OpenIddict.Server.OpenIddictServerOptions" >
< h1 id = "OpenIddict_Server_OpenIddictServerOptions" data-uid = "OpenIddict.Server.OpenIddictServerOptions" class = "text-break" > Class OpenIddictServerOptions
< / h1 >
< div class = "markdown level0 summary" > < p > Provides various settings needed to configure the OpenIddict server handler.< / p >
< / div >
< div class = "markdown level0 conceptual" > < / div >
< div class = "inheritance" >
< h5 > Inheritance< / h5 >
< div class = "level0" > < span class = "xref" > System.Object< / span > < / div >
< div class = "level1" > < span class = "xref" > OpenIddictServerOptions< / span > < / div >
< / div >
< div class = "inheritedMembers" >
< h5 > Inherited Members< / h5 >
< div >
< span class = "xref" > System.Object.Equals(System.Object)< / span >
< / div >
< div >
< span class = "xref" > System.Object.Equals(System.Object, System.Object)< / span >
< / div >
< div >
< span class = "xref" > System.Object.GetHashCode()< / span >
< / div >
< div >
< span class = "xref" > System.Object.GetType()< / span >
< / div >
< div >
< span class = "xref" > System.Object.MemberwiseClone()< / span >
< / div >
< div >
< span class = "xref" > System.Object.ToString()< / span >
< / div >
< div >
< span class = "xref" > System.Object.ReferenceEquals(System.Object, System.Object)< / span >
< / div >
< / div >
< h6 > < strong > Namespace< / strong > : < a class = "xref" href = "OpenIddict.Server.html" > OpenIddict.Server< / a > < / h6 >
< h6 > < strong > Assembly< / strong > : cs.temp.dll.dll< / h6 >
< h5 id = "OpenIddict_Server_OpenIddictServerOptions_syntax" > Syntax< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public class OpenIddictServerOptions< / code > < / pre >
< / div >
< h3 id = "properties" > Properties
< / h3 >
< a id = "OpenIddict_Server_OpenIddictServerOptions_AcceptAnonymousClients_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AcceptAnonymousClients*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_AcceptAnonymousClients" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AcceptAnonymousClients" > AcceptAnonymousClients< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean determining whether client identification is optional.
Enabling this option allows client applications to communicate with the token,
introspection and revocation endpoints without having to send their client identifier.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool AcceptAnonymousClients { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_AccessTokenLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AccessTokenLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_AccessTokenLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AccessTokenLifetime" > AccessTokenLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time access tokens remain valid after being issued. The default value is 1 hour.
The client application is expected to refresh or acquire a new access token after the token has expired.
While not recommended, this property can be set to < code > null< / code > to issue access tokens that never expire.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? AccessTokenLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_AuthorizationCodeLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AuthorizationCodeLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_AuthorizationCodeLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AuthorizationCodeLifetime" > AuthorizationCodeLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time authorization codes remain valid after being issued. The default value is 5 minutes.
While not recommended, this property can be set to < code > null< / code > to issue codes that never expire.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? AuthorizationCodeLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_AuthorizationEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AuthorizationEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_AuthorizationEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.AuthorizationEndpointUris" > AuthorizationEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the authorization endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> AuthorizationEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_Claims_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Claims*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_Claims" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Claims" > Claims< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0/OpenID Connect claims supported by this application.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> Claims { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_CodeChallengeMethods_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.CodeChallengeMethods*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_CodeChallengeMethods" data-uid = "OpenIddict.Server.OpenIddictServerOptions.CodeChallengeMethods" > CodeChallengeMethods< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0 code challenge methods enabled for this application.
By default, only the S256 method is allowed (if the code flow is enabled).< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> CodeChallengeMethods { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_ConfigurationEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ConfigurationEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_ConfigurationEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ConfigurationEndpointUris" > ConfigurationEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the configuration endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> ConfigurationEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_CryptographyEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.CryptographyEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_CryptographyEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.CryptographyEndpointUris" > CryptographyEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the cryptography endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> CryptographyEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DeviceCodeLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DeviceCodeLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DeviceCodeLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DeviceCodeLifetime" > DeviceCodeLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time device codes remain valid after being issued. The default value is 10 minutes.
The client application is expected to start a whole new authentication flow after the device code has expired.
While not recommended, this property can be set to < code > null< / code > to issue codes that never expire.
Note: the same value should be chosen for both < a class = "xref" href = "OpenIddict.Server.OpenIddictServerOptions.html#OpenIddict_Server_OpenIddictServerOptions_UserCodeLifetime" > UserCodeLifetime< / a > and this property.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? DeviceCodeLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DeviceEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DeviceEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DeviceEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DeviceEndpointUris" > DeviceEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the device endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> DeviceEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableAccessTokenEncryption_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableAccessTokenEncryption*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableAccessTokenEncryption" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableAccessTokenEncryption" > DisableAccessTokenEncryption< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether access token encryption should be disabled.
Disabling encryption is NOT recommended and SHOULD only be done when issuing tokens
to third-party resource servers/APIs you don' t control and don' t fully trust.
Note: disabling encryption has no effect when using ASP.NET Core Data Protection.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableAccessTokenEncryption { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableAuthorizationStorage_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableAuthorizationStorage*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableAuthorizationStorage" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableAuthorizationStorage" > DisableAuthorizationStorage< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether authorization storage should be disabled.
When disabled, ad-hoc authorizations are not created when an authorization code or
refresh token is issued and can' t be revoked to prevent associated tokens from being used.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableAuthorizationStorage { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableRollingRefreshTokens_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableRollingRefreshTokens*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableRollingRefreshTokens" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableRollingRefreshTokens" > DisableRollingRefreshTokens< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether rolling tokens are disabled.
When disabled, refresh tokens used in a token request are not marked
as redeemed and can still be used until they expire. Disabling
rolling refresh tokens is NOT recommended, for security reasons.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableRollingRefreshTokens { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableScopeValidation_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableScopeValidation*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableScopeValidation" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableScopeValidation" > DisableScopeValidation< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether scope validation is disabled.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableScopeValidation { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableSlidingRefreshTokenExpiration_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableSlidingRefreshTokenExpiration*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableSlidingRefreshTokenExpiration" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableSlidingRefreshTokenExpiration" > DisableSlidingRefreshTokenExpiration< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether sliding expiration is disabled
for refresh tokens. When this option is set to < span class = "xref" > true< / span > ,
refresh tokens are issued with a fixed expiration date: when they expire,
a complete authorization flow must be started to retrieve a new refresh token.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableSlidingRefreshTokenExpiration { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_DisableTokenStorage_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableTokenStorage*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_DisableTokenStorage" data-uid = "OpenIddict.Server.OpenIddictServerOptions.DisableTokenStorage" > DisableTokenStorage< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether token storage should be disabled.
When disabled, no database entry is created for the tokens and codes
returned by OpenIddict. Using this option is generally NOT recommended
as it prevents the tokens and codes from being revoked (if needed).< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool DisableTokenStorage { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_EnableDegradedMode_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.EnableDegradedMode*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_EnableDegradedMode" data-uid = "OpenIddict.Server.OpenIddictServerOptions.EnableDegradedMode" > EnableDegradedMode< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether the degraded mode is enabled. When this degraded mode
is enabled, all the security checks that depend on the OpenIddict core managers are disabled.
This option MUST be enabled with extreme caution and custom handlers MUST be registered to
properly validate OpenID Connect requests.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool EnableDegradedMode { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_EncryptionCredentials_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.EncryptionCredentials*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_EncryptionCredentials" data-uid = "OpenIddict.Server.OpenIddictServerOptions.EncryptionCredentials" > EncryptionCredentials< / h4 >
< div class = "markdown level1 summary" > < p > Gets the list of encryption credentials used by the OpenIddict server services.
Multiple credentials can be added to support key rollover, but if X.509 keys
are used, at least one of them must have a valid creation/expiration date.
Note: the encryption credentials are not used to protect/unprotect tokens issued
by ASP.NET Core Data Protection, that uses its own key ring, configured separately.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< EncryptingCredentials> EncryptionCredentials { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > EncryptingCredentials< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< h5 id = "OpenIddict_Server_OpenIddictServerOptions_EncryptionCredentials_remarks" > Remarks< / h5 >
< div class = "markdown level1 remarks" > < p > Note: OpenIddict automatically sorts the credentials based on the following algorithm:
< ul > < li > Symmetric keys are always preferred when they can be used for the operation (e.g token encryption).< / li > < li > X.509 keys are always preferred to non-X.509 asymmetric keys.< / li > < li > X.509 keys with the furthest expiration date are preferred.< / li > < li > X.509 keys whose backing certificate is not yet valid are never preferred.< / li > < / ul > < / p >
< / div >
< a id = "OpenIddict_Server_OpenIddictServerOptions_GrantTypes_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.GrantTypes*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_GrantTypes" data-uid = "OpenIddict.Server.OpenIddictServerOptions.GrantTypes" > GrantTypes< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0/OpenID Connect flows enabled for this application.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> GrantTypes { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_Handlers_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Handlers*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_Handlers" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Handlers" > Handlers< / h4 >
< div class = "markdown level1 summary" > < p > Gets the list of the handlers responsible of processing the OpenIddict server operations.
Note: the list is automatically sorted based on the order assigned to each handler descriptor.
As such, it MUST NOT be mutated after options initialization to preserve the exact order.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< OpenIddictServerHandlerDescriptor> Handlers { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < a class = "xref" href = "OpenIddict.Server.OpenIddictServerHandlerDescriptor.html" > OpenIddictServerHandlerDescriptor< / a > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IdentityTokenLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IdentityTokenLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IdentityTokenLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IdentityTokenLifetime" > IdentityTokenLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time identity tokens remain valid after being issued. The default value is 20 minutes.
The client application is expected to refresh or acquire a new identity token after the token has expired.
While not recommended, this property can be set to < code > null< / code > to issue identity tokens that never expire.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? IdentityTokenLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreEndpointPermissions_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreEndpointPermissions*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreEndpointPermissions" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreEndpointPermissions" > IgnoreEndpointPermissions< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether endpoint permissions should be ignored.
Setting this property to < span class = "xref" > true< / span > is NOT recommended.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool IgnoreEndpointPermissions { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreGrantTypePermissions_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreGrantTypePermissions*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreGrantTypePermissions" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreGrantTypePermissions" > IgnoreGrantTypePermissions< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether grant type permissions should be ignored.
Setting this property to < span class = "xref" > true< / span > is NOT recommended.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool IgnoreGrantTypePermissions { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreResponseTypePermissions_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreResponseTypePermissions*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreResponseTypePermissions" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreResponseTypePermissions" > IgnoreResponseTypePermissions< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether response type permissions should be ignored.
Setting this property to < span class = "xref" > true< / span > is NOT recommended.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool IgnoreResponseTypePermissions { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreScopePermissions_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreScopePermissions*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IgnoreScopePermissions" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IgnoreScopePermissions" > IgnoreScopePermissions< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether scope permissions should be ignored.
Setting this property to < span class = "xref" > true< / span > is NOT recommended.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool IgnoreScopePermissions { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_IntrospectionEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IntrospectionEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_IntrospectionEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.IntrospectionEndpointUris" > IntrospectionEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the introspection endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> IntrospectionEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_Issuer_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Issuer*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_Issuer" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Issuer" > Issuer< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the optional base address used to uniquely identify the authorization server.
The URI must be absolute and may contain a path, but no query string or fragment part.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public Uri? Issuer { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > Uri< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_JsonWebTokenHandler_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.JsonWebTokenHandler*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_JsonWebTokenHandler" data-uid = "OpenIddict.Server.OpenIddictServerOptions.JsonWebTokenHandler" > JsonWebTokenHandler< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the JWT handler used to protect and unprotect tokens.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public JsonWebTokenHandler JsonWebTokenHandler { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > JsonWebTokenHandler< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_LogoutEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.LogoutEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_LogoutEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.LogoutEndpointUris" > LogoutEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the logout endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> LogoutEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_RefreshTokenLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RefreshTokenLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_RefreshTokenLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RefreshTokenLifetime" > RefreshTokenLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time refresh tokens remain valid after being issued. The default value is 14 days.
The client application is expected to start a whole new authentication flow after the refresh token has expired.
While not recommended, this property can be set to < code > null< / code > to issue refresh tokens that never expire.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? RefreshTokenLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_RefreshTokenReuseLeeway_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RefreshTokenReuseLeeway*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_RefreshTokenReuseLeeway" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RefreshTokenReuseLeeway" > RefreshTokenReuseLeeway< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time rolling refresh tokens marked as redeemed can still be
used to make concurrent refresh token requests. The default value is 30 seconds.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? RefreshTokenReuseLeeway { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_RequireProofKeyForCodeExchange_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RequireProofKeyForCodeExchange*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_RequireProofKeyForCodeExchange" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RequireProofKeyForCodeExchange" > RequireProofKeyForCodeExchange< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether PKCE must be used by client applications
when requesting an authorization code (e.g when using the code or hybrid flows).
If this property is set to < span class = "xref" > true< / span > , authorization requests that
lack the code_challenge will be automatically rejected by OpenIddict.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool RequireProofKeyForCodeExchange { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_ResponseModes_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ResponseModes*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_ResponseModes" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ResponseModes" > ResponseModes< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0/OpenID Connect response modes enabled for this application.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> ResponseModes { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_ResponseTypes_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ResponseTypes*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_ResponseTypes" data-uid = "OpenIddict.Server.OpenIddictServerOptions.ResponseTypes" > ResponseTypes< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0/OpenID Connect response types enabled for this application.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> ResponseTypes { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_RevocationEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RevocationEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_RevocationEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.RevocationEndpointUris" > RevocationEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the revocation endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> RevocationEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_Scopes_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Scopes*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_Scopes" data-uid = "OpenIddict.Server.OpenIddictServerOptions.Scopes" > Scopes< / h4 >
< div class = "markdown level1 summary" > < p > Gets the OAuth 2.0/OpenID Connect scopes enabled for this application.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public HashSet< string> Scopes { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > HashSet< / span > < < span class = "xref" > System.String< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_SigningCredentials_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.SigningCredentials*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_SigningCredentials" data-uid = "OpenIddict.Server.OpenIddictServerOptions.SigningCredentials" > SigningCredentials< / h4 >
< div class = "markdown level1 summary" > < p > Gets the list of signing credentials used by the OpenIddict server services.
Multiple credentials can be added to support key rollover, but if X.509 keys
are used, at least one of them must have a valid creation/expiration date.
Note: the signing credentials are not used to protect/unprotect tokens issued
by ASP.NET Core Data Protection, that uses its own key ring, configured separately.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< SigningCredentials> SigningCredentials { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > SigningCredentials< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< h5 id = "OpenIddict_Server_OpenIddictServerOptions_SigningCredentials_remarks" > Remarks< / h5 >
< div class = "markdown level1 remarks" > < p > Note: OpenIddict automatically sorts the credentials based on the following algorithm:
< ul > < li > Symmetric keys are always preferred when they can be used for the operation (e.g token signing).< / li > < li > X.509 keys are always preferred to non-X.509 asymmetric keys.< / li > < li > X.509 keys with the furthest expiration date are preferred.< / li > < li > X.509 keys whose backing certificate is not yet valid are never preferred.< / li > < / ul > < / p >
< / div >
< a id = "OpenIddict_Server_OpenIddictServerOptions_TokenEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.TokenEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_TokenEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.TokenEndpointUris" > TokenEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the token endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> TokenEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_TokenValidationParameters_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.TokenValidationParameters*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_TokenValidationParameters" data-uid = "OpenIddict.Server.OpenIddictServerOptions.TokenValidationParameters" > TokenValidationParameters< / h4 >
< div class = "markdown level1 summary" > < p > Gets the token validation parameters used by the OpenIddict server services.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TokenValidationParameters TokenValidationParameters { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > TokenValidationParameters< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_UserCodeLifetime_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UserCodeLifetime*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_UserCodeLifetime" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UserCodeLifetime" > UserCodeLifetime< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets the period of time user codes remain valid after being issued. The default value is 10 minutes.
The client application is expected to start a whole new authentication flow after the user code has expired.
While not recommended, this property can be set to < code > null< / code > to issue codes that never expire.
Note: the same value should be chosen for both < a class = "xref" href = "OpenIddict.Server.OpenIddictServerOptions.html#OpenIddict_Server_OpenIddictServerOptions_DeviceCodeLifetime" > DeviceCodeLifetime< / a > and this property.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public TimeSpan? UserCodeLifetime { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Nullable< / span > < < span class = "xref" > System.TimeSpan< / span > > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_UseReferenceAccessTokens_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UseReferenceAccessTokens*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_UseReferenceAccessTokens" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UseReferenceAccessTokens" > UseReferenceAccessTokens< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether reference access tokens should be used.
When set to < span class = "xref" > true< / span > , the token payload is stored in the database
and a crypto-secure random identifier is returned to the client application.
Enabling this option is useful when storing a very large number of claims
in the tokens, but it is RECOMMENDED to enable column encryption
in the database or use the ASP.NET Core Data Protection integration,
that provides additional protection against token leakage.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool UseReferenceAccessTokens { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_UseReferenceRefreshTokens_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UseReferenceRefreshTokens*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_UseReferenceRefreshTokens" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UseReferenceRefreshTokens" > UseReferenceRefreshTokens< / h4 >
< div class = "markdown level1 summary" > < p > Gets or sets a boolean indicating whether reference refresh tokens should be used.
When set to < span class = "xref" > true< / span > , the token payload is stored in the database
and a crypto-secure random identifier is returned to the client application.
Enabling this option is useful when storing a very large number of claims
in the tokens, but it is RECOMMENDED to enable column encryption
in the database or use the ASP.NET Core Data Protection integration,
that provides additional protection against token leakage.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public bool UseReferenceRefreshTokens { get; set; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > < span class = "xref" > System.Boolean< / span > < / td >
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_UserinfoEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UserinfoEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_UserinfoEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.UserinfoEndpointUris" > UserinfoEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the userinfo endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> UserinfoEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< a id = "OpenIddict_Server_OpenIddictServerOptions_VerificationEndpointUris_" data-uid = "OpenIddict.Server.OpenIddictServerOptions.VerificationEndpointUris*" > < / a >
< h4 id = "OpenIddict_Server_OpenIddictServerOptions_VerificationEndpointUris" data-uid = "OpenIddict.Server.OpenIddictServerOptions.VerificationEndpointUris" > VerificationEndpointUris< / h4 >
< div class = "markdown level1 summary" > < p > Gets the absolute and relative URIs associated to the verification endpoint.< / p >
< / div >
< div class = "markdown level1 conceptual" > < / div >
< h5 class = "decalaration" > Declaration< / h5 >
< div class = "codewrapper" >
< pre > < code class = "lang-csharp hljs" > public List< Uri> VerificationEndpointUris { get; }< / code > < / pre >
< / div >
< h5 class = "propertyValue" > Property Value< / h5 >
< table class = "table table-bordered table-striped table-condensed" >
< thead >
< tr >
< th > Type< / th >
< th > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
2021-01-24 16:39:56 +08:00
< td > < span class = "xref" > List< / span > < < span class = "xref" > Uri< / span > > < / td >
2021-01-18 02:24:47 +08:00
< td > < / td >
< / tr >
< / tbody >
< / table >
< / article >
< / div >
< div class = "hidden-sm col-md-2" role = "complementary" >
< div class = "sideaffix" >
< div class = "contribution" >
< ul class = "nav" >
< / ul >
< / div >
< nav class = "bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id = "affix" >
< h5 > In This Article< / h5 >
< div > < / div >
< / nav >
< / div >
< / div >
< / div >
< / div >
< footer >
< div class = "grad-bottom" > < / div >
< div class = "footer" >
< div class = "container" >
< span class = "pull-right" >
< a href = "#top" > Back to top< / a >
< / span >
< span > Generated by < strong > DocFX< / strong > < / span >
< / div >
< / div >
< / footer >
< / div >
< script type = "text/javascript" src = "../styles/docfx.vendor.js" > < / script >
< script type = "text/javascript" src = "../styles/docfx.js" > < / script >
< script type = "text/javascript" src = "../styles/main.js" > < / script >
< / body >
< / html >