<PackageReference Include="System.ServiceModel.Primitives" Version="8.1.2" />

System.IdentityModel.Selectors.SecurityTokenProvider

public abstract class SecurityTokenProvider
namespace System.IdentityModel.Selectors { public abstract class SecurityTokenProvider { public virtual bool SupportsTokenRenewal { get; } public virtual bool SupportsTokenCancellation { get; } protected SecurityTokenProvider(); public SecurityToken GetToken(TimeSpan timeout); public IAsyncResult BeginGetToken(TimeSpan timeout, AsyncCallback callback, object state); public SecurityToken EndGetToken(IAsyncResult result); public Task<SecurityToken> GetTokenAsync(TimeSpan timeout); protected abstract SecurityToken GetTokenCore(TimeSpan timeout); protected virtual IAsyncResult BeginGetTokenCore(TimeSpan timeout, AsyncCallback callback, object state); protected virtual SecurityToken EndGetTokenCore(IAsyncResult result); protected virtual Task<SecurityToken> GetTokenCoreAsync(TimeSpan timeout); public SecurityToken RenewToken(TimeSpan timeout, SecurityToken tokenToBeRenewed); public IAsyncResult BeginRenewToken(TimeSpan timeout, SecurityToken tokenToBeRenewed, AsyncCallback callback, object state); public SecurityToken EndRenewToken(IAsyncResult result); public Task<SecurityToken> RenewTokenAsync(TimeSpan timeout, SecurityToken tokenToBeRenewed); protected virtual SecurityToken RenewTokenCore(TimeSpan timeout, SecurityToken tokenToBeRenewed); protected virtual IAsyncResult BeginRenewTokenCore(TimeSpan timeout, SecurityToken tokenToBeRenewed, AsyncCallback callback, object state); protected virtual SecurityToken EndRenewTokenCore(IAsyncResult result); protected virtual Task<SecurityToken> RenewTokenCoreAsync(TimeSpan timeout, SecurityToken tokenToBeRenewed); public void CancelToken(TimeSpan timeout, SecurityToken token); public IAsyncResult BeginCancelToken(TimeSpan timeout, SecurityToken token, AsyncCallback callback, object state); public void EndCancelToken(IAsyncResult result); public Task CancelTokenAsync(TimeSpan timeout, SecurityToken token); protected virtual void CancelTokenCore(TimeSpan timeout, SecurityToken token); protected virtual IAsyncResult BeginCancelTokenCore(TimeSpan timeout, SecurityToken token, AsyncCallback callback, object state); protected virtual void EndCancelTokenCore(IAsyncResult result); protected virtual Task CancelTokenCoreAsync(TimeSpan timeout, SecurityToken token); } }