Persisted Grant Service
Duende.IdentityServer.Services.IPersistedGrantService
Section titled “Duende.IdentityServer.Services.IPersistedGrantService”Provides access to a user’s grants.
/// <summary> /// Implements persisted grant logic /// </summary> public interface IPersistedGrantService { /// <summary> /// Gets all grants for a given subject ID. /// </summary> /// <param name="subjectId">The subject identifier.</param> /// <returns></returns> Task<IEnumerable<Grant>> GetAllGrantsAsync(string subjectId);
/// <summary> /// Removes all grants for a given subject id, and optionally client id and session id combination. /// </summary> /// <param name="subjectId">The subject identifier.</param> /// <param name="clientId">The client identifier (optional).</param> /// <param name="sessionId">The session id (optional).</param> /// <returns></returns> Task RemoveAllGrantsAsync(string subjectId, string clientId = null, string sessionId = null); }
/// <summary> /// Models a grant the user has given. /// </summary> public class Grant { /// <summary> /// Gets or sets the subject identifier. /// </summary> /// <value> /// The subject identifier. /// </value> public string SubjectId { get; set; }
/// <summary> /// Gets or sets the client identifier. /// </summary> /// <value> /// The client identifier. /// </value> public string ClientId { get; set; }
/// <summary> /// Gets the description the user assigned to the device being authorized. /// </summary> /// <value> /// The description. /// </value> public string Description { get; set; }
/// <summary> /// Gets or sets the scopes. /// </summary> /// <value> /// The scopes. /// </value> public IEnumerable<string> Scopes { get; set; }
/// <summary> /// Gets or sets the creation time. /// </summary> /// <value> /// The creation time. /// </value> public DateTime CreationTime { get; set; }
/// <summary> /// Gets or sets the expiration. /// </summary> /// <value> /// The expiration. /// </value> public DateTime? Expiration { get; set; } }