openiddict-documentation/api/OpenIddict.Core.OpenIddictAuthorizationManager-1.html
2021-02-08 10:58:19 +00:00

2376 lines
97 KiB
HTML

<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Class OpenIddictAuthorizationManager&lt;TAuthorization&gt;
</title>
<meta name="viewport" content="width=device-width">
<meta name="title" content="Class OpenIddictAuthorizationManager&lt;TAuthorization&gt;
">
<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.Core.OpenIddictAuthorizationManager`1">
<h1 id="OpenIddict_Core_OpenIddictAuthorizationManager_1" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1" class="text-break">Class OpenIddictAuthorizationManager&lt;TAuthorization&gt;
</h1>
<div class="markdown level0 summary"><p>Provides methods allowing to manage the authorizations stored in the store.</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">OpenIddictAuthorizationManager&lt;TAuthorization&gt;</span></div>
</div>
<h6><strong>Namespace</strong>: <a class="xref" href="OpenIddict.Core.html">OpenIddict.Core</a></h6>
<h6><strong>Assembly</strong>: cs.temp.dll.dll</h6>
<h5 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_syntax">Syntax</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class OpenIddictAuthorizationManager&lt;TAuthorization&gt; : IOpenIddictAuthorizationManager where TAuthorization : class</code></pre>
</div>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TAuthorization</span></td>
<td><p>The type of the Authorization entity.</p>
</td>
</tr>
</tbody>
</table>
<h5 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_remarks"><strong>Remarks</strong></h5>
<div class="markdown level0 remarks"><p>Applications that do not want to depend on a specific entity type can use the non-generic
<see cref="!:IOpenIddictAuthorizationManager"></see> instead, for which the actual entity type
is resolved at runtime based on the default entity type registered in the core options.</p>
</div>
<h3 id="constructors">Constructors
</h3>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1__ctor_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.#ctor*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1__ctor_IOpenIddictAuthorizationCache__0__ILogger_OpenIddict_Core_OpenIddictAuthorizationManager__0___IOptionsMonitor_OpenIddict_Core_OpenIddictCoreOptions__IOpenIddictAuthorizationStoreResolver_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.#ctor(IOpenIddictAuthorizationCache{`0},ILogger{OpenIddict.Core.OpenIddictAuthorizationManager{`0}},IOptionsMonitor{OpenIddict.Core.OpenIddictCoreOptions},IOpenIddictAuthorizationStoreResolver)">OpenIddictAuthorizationManager(IOpenIddictAuthorizationCache&lt;TAuthorization&gt;, ILogger&lt;OpenIddictAuthorizationManager&lt;TAuthorization&gt;&gt;, IOptionsMonitor&lt;OpenIddictCoreOptions&gt;, IOpenIddictAuthorizationStoreResolver)</h4>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public OpenIddictAuthorizationManager(IOpenIddictAuthorizationCache&lt;TAuthorization&gt; cache, ILogger&lt;OpenIddictAuthorizationManager&lt;TAuthorization&gt;&gt; logger, IOptionsMonitor&lt;OpenIddictCoreOptions&gt; options, IOpenIddictAuthorizationStoreResolver resolver)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">IOpenIddictAuthorizationCache</span>&lt;TAuthorization&gt;</td>
<td><span class="parametername">cache</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">ILogger</span>&lt;<a class="xref" href="OpenIddict.Core.OpenIddictAuthorizationManager-1.html">OpenIddictAuthorizationManager</a>&lt;TAuthorization&gt;&gt;</td>
<td><span class="parametername">logger</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">IOptionsMonitor</span>&lt;<a class="xref" href="OpenIddict.Core.OpenIddictCoreOptions.html">OpenIddictCoreOptions</a>&gt;</td>
<td><span class="parametername">options</span></td>
<td></td>
</tr>
<tr>
<td><span class="xref">IOpenIddictAuthorizationStoreResolver</span></td>
<td><span class="parametername">resolver</span></td>
<td></td>
</tr>
</tbody>
</table>
<h3 id="properties">Properties
</h3>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Cache_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Cache*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Cache" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Cache">Cache</h4>
<div class="markdown level1 summary"><p>Gets the cache associated with the current manager.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected IOpenIddictAuthorizationCache&lt;TAuthorization&gt; Cache { 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">IOpenIddictAuthorizationCache</span>&lt;TAuthorization&gt;</td>
<td></td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Logger_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Logger*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Logger" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Logger">Logger</h4>
<div class="markdown level1 summary"><p>Gets the logger associated with the current manager.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected ILogger Logger { 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">ILogger</span></td>
<td></td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Options_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Options*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Options" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Options">Options</h4>
<div class="markdown level1 summary"><p>Gets the options associated with the current manager.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected IOptionsMonitor&lt;OpenIddictCoreOptions&gt; Options { 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">IOptionsMonitor</span>&lt;<a class="xref" href="OpenIddict.Core.OpenIddictCoreOptions.html">OpenIddictCoreOptions</a>&gt;</td>
<td></td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Store_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Store*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_Store" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.Store">Store</h4>
<div class="markdown level1 summary"><p>Gets the store associated with the current manager.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">protected IOpenIddictAuthorizationStore&lt;TAuthorization&gt; Store { 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">IOpenIddictAuthorizationStore</span>&lt;TAuthorization&gt;</td>
<td></td>
</tr>
</tbody>
</table>
<h3 id="methods">Methods
</h3>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CountAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CountAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CountAsync_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CountAsync(CancellationToken)">CountAsync(CancellationToken)</h4>
<div class="markdown level1 summary"><p>Determines the number of authorizations that exist in the database.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;long&gt; CountAsync(CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Int64</span>&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation,
whose result returns the number of authorizations in the database.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CountAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CountAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CountAsync__1_Func_IQueryable__0__IQueryable___0___CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CountAsync``1(Func{IQueryable{`0},IQueryable{``0}},CancellationToken)">CountAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Determines the number of authorizations that match the specified query.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;long&gt; CountAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt; query, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">Func</span>&lt;<span class="xref">IQueryable</span>&lt;TAuthorization&gt;, <span class="xref">IQueryable</span>&lt;TResult&gt;&gt;</td>
<td><span class="parametername">query</span></td>
<td><p>The query to execute.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Int64</span>&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation,
whose result returns the number of authorizations that match the specified query.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TResult</span></td>
<td><p>The result type.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync(`0,CancellationToken)">CreateAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Creates a new authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask CreateAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The application to create.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync_ClaimsPrincipal_System_String_System_String_System_String_ImmutableArray_System_String__CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync(ClaimsPrincipal,System.String,System.String,System.String,ImmutableArray{System.String},CancellationToken)">CreateAsync(ClaimsPrincipal, String, String, String, ImmutableArray&lt;String&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Creates a new permanent authorization based on the specified parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;TAuthorization&gt; CreateAsync(ClaimsPrincipal principal, string subject, string client, string type, ImmutableArray&lt;string&gt; scopes, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">ClaimsPrincipal</span></td>
<td><span class="parametername">principal</span></td>
<td><p>The principal associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">client</span></td>
<td><p>The client associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">type</span></td>
<td><p>The authorization type.</p>
</td>
</tr>
<tr>
<td><span class="xref">ImmutableArray</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><span class="parametername">scopes</span></td>
<td><p>The minimal scopes associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;TAuthorization&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation, whose result returns the authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_CreateAsync_OpenIddictAuthorizationDescriptor_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.CreateAsync(OpenIddictAuthorizationDescriptor,CancellationToken)">CreateAsync(OpenIddictAuthorizationDescriptor, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Creates a new authorization based on the specified descriptor.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;TAuthorization&gt; CreateAsync(OpenIddictAuthorizationDescriptor descriptor, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">OpenIddictAuthorizationDescriptor</span></td>
<td><span class="parametername">descriptor</span></td>
<td><p>The authorization descriptor.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;TAuthorization&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation, whose result returns the authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_DeleteAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.DeleteAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_DeleteAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.DeleteAsync(`0,CancellationToken)">DeleteAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Removes an existing authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask DeleteAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization to delete.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_System_String_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync(System.String,System.String,CancellationToken)">FindAsync(String, String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the authorizations corresponding to the specified
subject and associated with the application identifier.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindAsync(string subject, string client, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">client</span></td>
<td><p>The client associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the subject/client.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_System_String_System_String_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync(System.String,System.String,System.String,CancellationToken)">FindAsync(String, String, String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the authorizations matching the specified parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindAsync(string subject, string client, string status, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">client</span></td>
<td><p>The client associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">status</span></td>
<td><p>The authorization status.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the criteria.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_System_String_System_String_System_String_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync(System.String,System.String,System.String,System.String,CancellationToken)">FindAsync(String, String, String, String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the authorizations matching the specified parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindAsync(string subject, string client, string status, string type, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">client</span></td>
<td><p>The client associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">status</span></td>
<td><p>The authorization status.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">type</span></td>
<td><p>The authorization type.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the criteria.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindAsync_System_String_System_String_System_String_System_String_ImmutableArray_System_String__CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindAsync(System.String,System.String,System.String,System.String,ImmutableArray{System.String},CancellationToken)">FindAsync(String, String, String, String, ImmutableArray&lt;String&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the authorizations matching the specified parameters.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindAsync(string subject, string client, string status, string type, ImmutableArray&lt;string&gt; scopes, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">client</span></td>
<td><p>The client associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">status</span></td>
<td><p>The authorization status.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">type</span></td>
<td><p>The authorization type.</p>
</td>
</tr>
<tr>
<td><span class="xref">ImmutableArray</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><span class="parametername">scopes</span></td>
<td><p>The minimal scopes associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the criteria.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindByApplicationIdAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindByApplicationIdAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindByApplicationIdAsync_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindByApplicationIdAsync(System.String,CancellationToken)">FindByApplicationIdAsync(String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the list of authorizations corresponding to the specified application identifier.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindByApplicationIdAsync(string identifier, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">identifier</span></td>
<td><p>The application identifier associated with the authorizations.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the specified application.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindByIdAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindByIdAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindByIdAsync_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindByIdAsync(System.String,CancellationToken)">FindByIdAsync(String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves an authorization using its unique identifier.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;TAuthorization&gt; FindByIdAsync(string identifier, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">identifier</span></td>
<td><p>The unique identifier associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;TAuthorization&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation,
whose result returns the authorization corresponding to the identifier.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindBySubjectAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindBySubjectAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_FindBySubjectAsync_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.FindBySubjectAsync(System.String,CancellationToken)">FindBySubjectAsync(String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves all the authorizations corresponding to the specified subject.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; FindBySubjectAsync(string subject, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">subject</span></td>
<td><p>The subject associated with the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>The authorizations corresponding to the specified subject.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetApplicationIdAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetApplicationIdAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetApplicationIdAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetApplicationIdAsync(`0,CancellationToken)">GetApplicationIdAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the optional application identifier associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;string&gt; GetApplicationIdAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the application identifier associated with the authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetAsync__1_Func_IQueryable__0__IQueryable___0___CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetAsync``1(Func{IQueryable{`0},IQueryable{``0}},CancellationToken)">GetAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Executes the specified query and returns the first element.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;TResult&gt; GetAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt; query, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">Func</span>&lt;<span class="xref">IQueryable</span>&lt;TAuthorization&gt;, <span class="xref">IQueryable</span>&lt;TResult&gt;&gt;</td>
<td><span class="parametername">query</span></td>
<td><p>The query to execute.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;TResult&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation,
whose result returns the first element returned when executing the query.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TResult</span></td>
<td><p>The result type.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetAsync__2_Func_IQueryable__0____0_IQueryable___1_____0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetAsync``2(Func{IQueryable{`0},``0,IQueryable{``1}},``0,CancellationToken)">GetAsync&lt;TState, TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, TState, IQueryable&lt;TResult&gt;&gt;, TState, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Executes the specified query and returns the first element.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;TResult&gt; GetAsync&lt;TState, TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, TState, IQueryable&lt;TResult&gt;&gt; query, TState state, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">Func</span>&lt;<span class="xref">IQueryable</span>&lt;TAuthorization&gt;, TState, <span class="xref">IQueryable</span>&lt;TResult&gt;&gt;</td>
<td><span class="parametername">query</span></td>
<td><p>The query to execute.</p>
</td>
</tr>
<tr>
<td><span class="xref">TState</span></td>
<td><span class="parametername">state</span></td>
<td><p>The optional state.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;TResult&gt;</td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation,
whose result returns the first element returned when executing the query.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TState</span></td>
<td><p>The state type.</p>
</td>
</tr>
<tr>
<td><span class="parametername">TResult</span></td>
<td><p>The result type.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetCreationDateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetCreationDateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetCreationDateAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetCreationDateAsync(`0,CancellationToken)">GetCreationDateAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the creation date associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;DateTimeOffset?&gt; GetCreationDateAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Nullable</span>&lt;<span class="xref">DateTimeOffset</span>&gt;&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the creation date associated with the specified authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetIdAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetIdAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetIdAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetIdAsync(`0,CancellationToken)">GetIdAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the unique identifier associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;string&gt; GetIdAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the unique identifier associated with the authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetPropertiesAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetPropertiesAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetPropertiesAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetPropertiesAsync(`0,CancellationToken)">GetPropertiesAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the additional properties associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;ImmutableDictionary&lt;string, JsonElement&gt;&gt; GetPropertiesAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">ImmutableDictionary</span>&lt;<span class="xref">System.String</span>, <span class="xref">JsonElement</span>&gt;&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns all the additional properties associated with the authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetScopesAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetScopesAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetScopesAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetScopesAsync(`0,CancellationToken)">GetScopesAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the scopes associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;ImmutableArray&lt;string&gt;&gt; GetScopesAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">ImmutableArray</span>&lt;<span class="xref">System.String</span>&gt;&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the scopes associated with the specified authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetStatusAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetStatusAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetStatusAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetStatusAsync(`0,CancellationToken)">GetStatusAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the status associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;string&gt; GetStatusAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the status associated with the specified authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetSubjectAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetSubjectAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetSubjectAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetSubjectAsync(`0,CancellationToken)">GetSubjectAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the subject associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;string&gt; GetSubjectAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the subject associated with the specified authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetTypeAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetTypeAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_GetTypeAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.GetTypeAsync(`0,CancellationToken)">GetTypeAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Retrieves the type associated with an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;string&gt; GetTypeAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><p>A <see cref="!:ValueTask&lt;TResult>"></see> that can be used to monitor the asynchronous operation,
whose result returns the type associated with the specified authorization.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasScopesAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasScopesAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasScopesAsync__0_ImmutableArray_System_String__CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasScopesAsync(`0,ImmutableArray{System.String},CancellationToken)">HasScopesAsync(TAuthorization, ImmutableArray&lt;String&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Determines whether the specified scopes are included in the authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;bool&gt; HasScopesAsync(TAuthorization authorization, ImmutableArray&lt;string&gt; scopes, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">ImmutableArray</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td><span class="parametername">scopes</span></td>
<td><p>The scopes.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Boolean</span>&gt;</td>
<td><p><code>true</code> if the scopes are included in the authorization, <code>false</code> otherwise.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasStatusAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasStatusAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasStatusAsync__0_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasStatusAsync(`0,System.String,CancellationToken)">HasStatusAsync(TAuthorization, String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Determines whether a given authorization has the specified status.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;bool&gt; HasStatusAsync(TAuthorization authorization, string status, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">status</span></td>
<td><p>The expected status.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Boolean</span>&gt;</td>
<td><p><code>true</code> if the authorization has the specified status, <code>false</code> otherwise.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasTypeAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasTypeAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_HasTypeAsync__0_System_String_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.HasTypeAsync(`0,System.String,CancellationToken)">HasTypeAsync(TAuthorization, String, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Determines whether a given authorization has the specified type.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;bool&gt; HasTypeAsync(TAuthorization authorization, string type, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">type</span></td>
<td><p>The expected type.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Boolean</span>&gt;</td>
<td><p><code>true</code> if the authorization has the specified type, <code>false</code> otherwise.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync_System_Nullable_System_Int32__System_Nullable_System_Int32__CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync(System.Nullable{System.Int32},System.Nullable{System.Int32},CancellationToken)">ListAsync(Nullable&lt;Int32&gt;, Nullable&lt;Int32&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Executes the specified query and returns all the corresponding elements.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TAuthorization&gt; ListAsync(int? count = default(int? ), int? offset = default(int? ), CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Nullable</span>&lt;<span class="xref">System.Int32</span>&gt;</td>
<td><span class="parametername">count</span></td>
<td><p>The number of results to return.</p>
</td>
</tr>
<tr>
<td><span class="xref">System.Nullable</span>&lt;<span class="xref">System.Int32</span>&gt;</td>
<td><span class="parametername">offset</span></td>
<td><p>The number of results to skip.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TAuthorization&gt;</td>
<td><p>All the elements returned when executing the specified query.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync__1_Func_IQueryable__0__IQueryable___0___CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync``1(Func{IQueryable{`0},IQueryable{``0}},CancellationToken)">ListAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt;, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Executes the specified query and returns all the corresponding elements.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TResult&gt; ListAsync&lt;TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, IQueryable&lt;TResult&gt;&gt; query, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">Func</span>&lt;<span class="xref">IQueryable</span>&lt;TAuthorization&gt;, <span class="xref">IQueryable</span>&lt;TResult&gt;&gt;</td>
<td><span class="parametername">query</span></td>
<td><p>The query to execute.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TResult&gt;</td>
<td><p>All the elements returned when executing the specified query.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TResult</span></td>
<td><p>The result type.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ListAsync__2_Func_IQueryable__0____0_IQueryable___1_____0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ListAsync``2(Func{IQueryable{`0},``0,IQueryable{``1}},``0,CancellationToken)">ListAsync&lt;TState, TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, TState, IQueryable&lt;TResult&gt;&gt;, TState, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Executes the specified query and returns all the corresponding elements.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;TResult&gt; ListAsync&lt;TState, TResult&gt;(Func&lt;IQueryable&lt;TAuthorization&gt;, TState, IQueryable&lt;TResult&gt;&gt; query, TState state, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">Func</span>&lt;<span class="xref">IQueryable</span>&lt;TAuthorization&gt;, TState, <span class="xref">IQueryable</span>&lt;TResult&gt;&gt;</td>
<td><span class="parametername">query</span></td>
<td><p>The query to execute.</p>
</td>
</tr>
<tr>
<td><span class="xref">TState</span></td>
<td><span class="parametername">state</span></td>
<td><p>The optional state.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;TResult&gt;</td>
<td><p>All the elements returned when executing the specified query.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="typeParameters">Type Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="parametername">TState</span></td>
<td><p>The state type.</p>
</td>
</tr>
<tr>
<td><span class="parametername">TResult</span></td>
<td><p>The result type.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PopulateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PopulateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PopulateAsync__0_OpenIddictAuthorizationDescriptor_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PopulateAsync(`0,OpenIddictAuthorizationDescriptor,CancellationToken)">PopulateAsync(TAuthorization, OpenIddictAuthorizationDescriptor, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Populates the authorization using the specified descriptor.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask PopulateAsync(TAuthorization authorization, OpenIddictAuthorizationDescriptor descriptor, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">OpenIddictAuthorizationDescriptor</span></td>
<td><span class="parametername">descriptor</span></td>
<td><p>The descriptor.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PopulateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PopulateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PopulateAsync_OpenIddictAuthorizationDescriptor__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PopulateAsync(OpenIddictAuthorizationDescriptor,`0,CancellationToken)">PopulateAsync(OpenIddictAuthorizationDescriptor, TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Populates the specified descriptor using the properties exposed by the authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask PopulateAsync(OpenIddictAuthorizationDescriptor descriptor, TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">OpenIddictAuthorizationDescriptor</span></td>
<td><span class="parametername">descriptor</span></td>
<td><p>The descriptor.</p>
</td>
</tr>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PruneAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PruneAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PruneAsync_DateTimeOffset_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.PruneAsync(DateTimeOffset,CancellationToken)">PruneAsync(DateTimeOffset, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Removes the authorizations that are marked as invalid and the ad-hoc ones that have no token attached.
Only authorizations created before the specified <code data-dev-comment-type="paramref" class="paramref">threshold</code> are removed.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask PruneAsync(DateTimeOffset threshold, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">DateTimeOffset</span></td>
<td><span class="parametername">threshold</span></td>
<td><p>The date before which authorizations are not pruned.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_PruneAsync_DateTimeOffset_CancellationToken__remarks">Remarks</h5>
<div class="markdown level1 remarks"><p>To ensure ad-hoc authorizations that no longer have any valid/non-expired token
attached are correctly removed, the tokens should always be pruned first.</p>
</div>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_TryRevokeAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.TryRevokeAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_TryRevokeAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.TryRevokeAsync(`0,CancellationToken)">TryRevokeAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Tries to revoke an authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask&lt;bool&gt; TryRevokeAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization to revoke.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span>&lt;<span class="xref">System.Boolean</span>&gt;</td>
<td><p><code>true</code> if the authorization was successfully revoked, <code>false</code> otherwise.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_UpdateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.UpdateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_UpdateAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.UpdateAsync(`0,CancellationToken)">UpdateAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Updates an existing authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask UpdateAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization to update.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_UpdateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.UpdateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_UpdateAsync__0_OpenIddictAuthorizationDescriptor_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.UpdateAsync(`0,OpenIddictAuthorizationDescriptor,CancellationToken)">UpdateAsync(TAuthorization, OpenIddictAuthorizationDescriptor, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Updates an existing authorization.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ValueTask UpdateAsync(TAuthorization authorization, OpenIddictAuthorizationDescriptor descriptor, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization to update.</p>
</td>
</tr>
<tr>
<td><span class="xref">OpenIddictAuthorizationDescriptor</span></td>
<td><span class="parametername">descriptor</span></td>
<td><p>The descriptor used to update the authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">ValueTask</span></td>
<td><p>A <see cref="!:ValueTask"></see> that can be used to monitor the asynchronous operation.</p>
</td>
</tr>
</tbody>
</table>
<a id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ValidateAsync_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ValidateAsync*"></a>
<h4 id="OpenIddict_Core_OpenIddictAuthorizationManager_1_ValidateAsync__0_CancellationToken_" data-uid="OpenIddict.Core.OpenIddictAuthorizationManager`1.ValidateAsync(`0,CancellationToken)">ValidateAsync(TAuthorization, CancellationToken)</h4>
<div class="markdown level1 summary"><p>Validates the authorization to ensure it&apos;s in a consistent state.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual IAsyncEnumerable&lt;ValidationResult&gt; ValidateAsync(TAuthorization authorization, CancellationToken cancellationToken = null)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">TAuthorization</span></td>
<td><span class="parametername">authorization</span></td>
<td><p>The authorization.</p>
</td>
</tr>
<tr>
<td><span class="xref">CancellationToken</span></td>
<td><span class="parametername">cancellationToken</span></td>
<td><p>The <see cref="!:CancellationToken"></see> that can be used to abort the operation.</p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</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">IAsyncEnumerable</span>&lt;<span class="xref">ValidationResult</span>&gt;</td>
<td><p>The validation error encountered when validating the authorization.</p>
</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>