Table of Contents

Class TendukeConfig

Namespace
Tenduke.Core.Config
Assembly
Tenduke.Core.dll

Loads configuration items for interacting with licensing and oauth / OpenID connect.

public class TendukeConfig : ILicensingApiConfig, IOidcConfig, IConfig
Inheritance
TendukeConfig
Implements
Inherited Members
Extension Methods

Properties

AuthRedirectPath

Gets/Sets the path for PKCE Flow Client success redirect

public string? AuthRedirectPath { get; set; }

Property Value

string

Remarks

For desktop clients (using system default browser), this path fragment will be appened to http://localhost using AuthRedirectPort if specified or otherwise a random ephemeral port.

AuthRedirectPort

Gets/Sets the local redirect port to listen on for PKCE Flow Client

public int AuthRedirectPort { get; set; }

Property Value

int

AuthRedirectTimeoutSeconds

Gets the the timeout, in seconds, for PKCE Flow login and redirect

public float AuthRedirectTimeoutSeconds { get; set; }

Property Value

float

AuthRedirectUri

Gets/Sets the URI for OAuth redirect_uri

public Uri? AuthRedirectUri { get; set; }

Property Value

Uri

AuthSuccessMessage

Gets/Sets the file name and path or the file containing response for successful login (see PKCE Flow Client)

public string? AuthSuccessMessage { get; set; }

Property Value

string

DefaultLicenseCheckoutHttpClientName

Gets the default name for HttpClient used to talk to 10Duke License Checkout API

public static string DefaultLicenseCheckoutHttpClientName { get; }

Property Value

string

DefaultOidcHttpClientName

Gets the default name for HttpClient used to talk to OpenID Connect provider

public static string DefaultOidcHttpClientName { get; }

Property Value

string

EffectiveRedirectPath

Gets the effective redirect path for the PKCE Flow Client

public string? EffectiveRedirectPath { get; }

Property Value

string

EffectiveRedirectPort

Gets the effective redirect port for the PKCE Flow Client

public int EffectiveRedirectPort { get; }

Property Value

int

EffectiveRedirectUri

Gets the effective redirect URI for the PKCE Flow Client

public Uri? EffectiveRedirectUri { get; }

Property Value

Uri

HttpTimeoutSeconds

Gets/Sets the timeout, in seconds, for HTTP requests

public float HttpTimeoutSeconds { get; set; }

Property Value

float

HttpTimeoutSecondsTimeSpan

Gets the timeout for HTTP requests

public TimeSpan HttpTimeoutSecondsTimeSpan { get; }

Property Value

TimeSpan

HttpsProxy

Gets/Sets the proxy to use for HTTPS requests

public Uri? HttpsProxy { get; set; }

Property Value

Uri

IdpJwksUri

Gets/Sets the URL path to read public key used to verify JWTs received from Authorization Server authenticating OpenID Connect session

public Uri? IdpJwksUri { get; set; }

Property Value

Uri

IdpOAuthAuthorizationUrl

Gets/Sets the endpoint for Authorization Request in Authorization Code or Implicit Grant flows

public Uri? IdpOAuthAuthorizationUrl { get; set; }

Property Value

Uri

IdpOAuthClientId

Gets/Sets the application credentials for OAuth/OpenID Connect

public string? IdpOAuthClientId { get; set; }

Property Value

string

IdpOAuthClientSecret

Gets/Sets the application credentials for OAuth/OpenID Connect. Required for some OAuth flows or for some Identity Providers

public string? IdpOAuthClientSecret { get; set; }

Property Value

string

IdpOAuthDeviceCodeUrl

Gets/Sets the endpoint for Device Authorization Request in Device Authorization Grant flow

public Uri? IdpOAuthDeviceCodeUrl { get; set; }

Property Value

Uri

IdpOAuthScope

Gets/Sets the scopes to include in the Access and ID tokens requested via OpenID Connect

public string? IdpOAuthScope { get; set; }

Property Value

string

IdpOAuthTokenUrl

Gets/Sets the endpoint for Access Token Request or Device Access Token Request

public Uri? IdpOAuthTokenUrl { get; set; }

Property Value

Uri

IdpOidcDiscoveryUrl

Gets/Sets the URL used to retrieve the details of the OpenID Connect endpoints for the identity provider

public Uri? IdpOidcDiscoveryUrl { get; set; }

Property Value

Uri

IdpUserinfoUrl

Gets/Sets the endpoint handling the UserInfo Request

public Uri? IdpUserinfoUrl { get; set; }

Property Value

Uri

LicenseCheckoutHttpClientName

Gets/Sets the name of the HttpClient to use for requests to the 10Duke Scale License Checkout API

public string LicenseCheckoutHttpClientName { get; set; }

Property Value

string

LicensingApiAuthorizationModel

Gets/Sets the method of authorization used for Scale API calls

public ApiAuthorizationModel LicensingApiAuthorizationModel { get; set; }

Property Value

ApiAuthorizationModel

LicensingApiUrl

Gets/Sets the base URL for the Licensing API

public Uri? LicensingApiUrl { get; set; }

Property Value

Uri

OidcHttpClientName

Gets the name of the HttpClient to use for requests to the OpenID Connect Provider

public string OidcHttpClientName { get; set; }

Property Value

string

PublicKeyPath

Gets/Sets the location on disk to save public keys

public string PublicKeyPath { get; set; }

Property Value

string

TokenPath

Gets/Sets the location on disk to save license tokens

public string TokenPath { get; set; }

Property Value

string

TokenRefreshLeewaySeconds

Gets/Sets the number of seconds before expiry time that an ID Token or Scale JWT will be automatically refreshed

public float TokenRefreshLeewaySeconds { get; set; }

Property Value

float