Class TendukeConfig
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 OAuth PKCE flow post login redirect.
public string? AuthRedirectPath { get; set; }
Property Value
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.
The constructed URI will be provided to the OAuth Authorization Server (AS), also known as the OpenID Provider (OP) as a query parameter to the Authorization Request. After successful login of the user the AS directs the user-agent back to the client, at the URI constructed from this configuration item.
AuthRedirectPort
Gets the local redirect port to listen on for OAuth PKCE flow post login redirect.
public int AuthRedirectPort { get; set; }
Property Value
AuthRedirectTimeoutSeconds
Gets/Sets the the timeout, in seconds, for PKCE Flow login and redirect
public float AuthRedirectTimeoutSeconds { get; set; }
Property Value
AuthRedirectUri
Gets/Sets the URI for OAuth PKCE flow post login redirect.
public Uri? AuthRedirectUri { get; set; }
Property Value
Remarks
This value will be provided to the OAuth Authorization Server (AS), also known as the OpenID Provider (OP) as a query parameter to the Authorization Request. After successful login of the user the AS directs the user-agent back to the client, at the URI specified by this configuration item.
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
DefaultLicenseCheckoutHttpClientName
Gets the default name for HttpClient used to talk to 10Duke License Checkout API
public static string DefaultLicenseCheckoutHttpClientName { get; }
Property Value
DefaultOidcHttpClientName
Gets the default name for HttpClient used to talk to OpenID Connect provider
public static string DefaultOidcHttpClientName { get; }
Property Value
EffectiveLogoutRedirectPath
Gets the effective redirect path for logout redirect.
public string? EffectiveLogoutRedirectPath { get; }
Property Value
EffectiveLogoutRedirectPort
Gets the effective redirect port for logout redirect.
public int EffectiveLogoutRedirectPort { get; }
Property Value
EffectiveRedirectPath
Gets the effective redirect path for the PKCE Flow Client
public string? EffectiveRedirectPath { get; }
Property Value
EffectiveRedirectPort
Gets the effective redirect port for the PKCE Flow Client
public int EffectiveRedirectPort { get; }
Property Value
EffectiveRedirectUri
Gets the effective redirect URI for the PKCE Flow Client
public Uri? EffectiveRedirectUri { get; }
Property Value
HttpTimeoutSeconds
Gets/Sets the timeout, in seconds, for HTTP requests
public float HttpTimeoutSeconds { get; set; }
Property Value
HttpTimeoutSecondsTimeSpan
Gets the timeout for HTTP requests
public TimeSpan HttpTimeoutSecondsTimeSpan { get; }
Property Value
HttpsProxy
Gets/Sets the proxy to use for HTTPS requests
public Uri? HttpsProxy { get; set; }
Property Value
IdpEndSessionEndpoint
Gets/Sets the end session endpoint.
public Uri? IdpEndSessionEndpoint { get; set; }
Property Value
Remarks
This optional entry in the OpenID configuration specifies the endpoint to begin Relying Party (RP) initiated logout, if the OpenID Provider (OP) supports that protocol extension.
IdpIssuer
Gets/Sets the Issuer (iss) for OIDC token validation
public string? IdpIssuer { get; set; }
Property Value
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
IdpOAuthAuthorizationUrl
Gets/Sets the endpoint for Authorization Request in Authorization Code or Implicit Grant flows
public Uri? IdpOAuthAuthorizationUrl { get; set; }
Property Value
IdpOAuthClientId
Gets/Sets the application credentials for OAuth/OpenID Connect
public string? IdpOAuthClientId { get; set; }
Property Value
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
IdpOAuthDeviceCodeUrl
Gets/Sets the endpoint for Device Authorization Request in Device Authorization Grant flow
public Uri? IdpOAuthDeviceCodeUrl { get; set; }
Property Value
IdpOAuthScope
Gets/Sets the scopes to include in the Access and ID tokens requested via OpenID Connect
public string? IdpOAuthScope { get; set; }
Property Value
IdpOAuthTokenUrl
Gets/Sets the endpoint for Access Token Request or Device Access Token Request
public Uri? IdpOAuthTokenUrl { get; set; }
Property Value
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
IdpUserinfoUrl
Gets/Sets the endpoint handling the UserInfo Request
public Uri? IdpUserinfoUrl { get; set; }
Property Value
IsLogoutRedirectConfigured
Are either of LogoutRedirectUri or LogoutRedirectPath set?
public bool IsLogoutRedirectConfigured { get; }
Property Value
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
LicensingApiAuthorizationModel
Gets/Sets the method of authorization used for Scale API calls
public ApiAuthorizationModel LicensingApiAuthorizationModel { get; set; }
Property Value
LicensingApiUrl
Gets/Sets the base URL for the Licensing API
public Uri? LicensingApiUrl { get; set; }
Property Value
LogoutRedirectPath
Gets the path to construct an application URI for the OpenID Provider (OP) to redirect to after successful logout.
public string? LogoutRedirectPath { get; set; }
Property Value
Remarks
Some OpenID Provider (OP) logout flows allow the client application or Relying Party (RP) to specify a URI for the OP to redirect to after successful logout.
This allows the RP to complete the termination of the local session (for example removing any stored access or refresh tokens) once the OP has confirmed the session has been terminated.
For desktop clients (using system default browser), this path fragment will be appened to
http://localhost
using LogoutRedirectPort if specified or otherwise a
random ephemeral port.
LogoutRedirectPort
Gets the port to listen for for the OpenID Provider (OP) redirect after successful logout.
public int LogoutRedirectPort { get; set; }
Property Value
LogoutRedirectTimeoutSeconds
Gets/Sets the the timeout, in seconds, for logout redirect.
public float LogoutRedirectTimeoutSeconds { get; set; }
Property Value
LogoutRedirectUri
Gets the application URI for the OpenID Provider (OP) to redirect to after successful logout.
public Uri? LogoutRedirectUri { get; set; }
Property Value
Remarks
Some OpenID Provider (OP) logout flows allow the client application or Relying Party (RP) to specify a URI for the OP to redirect to after successful logout.
This allows the RP to complete the termination of the local session (for example removing any stored access or refresh tokens) once the OP has confirmed the session has been terminated.
For desktop applications (using system default browser), the SDK will listen on this URI for the redirect to localhost.
LogoutSuccessMessage
Gets/Sets the file name and path of the file containing response for successful logout.
public string? LogoutSuccessMessage { get; set; }
Property Value
Remarks
Optionally used as part of the Relying Party (RP) Initiated Logout flow.
OidcHttpClientName
Gets/Sets the name of the HttpClient to use for requests to the OpenID Connect Provider
public string OidcHttpClientName { get; set; }
Property Value
PublicKeyPath
Gets/Sets the location on disk to save public keys
public string PublicKeyPath { get; set; }
Property Value
TokenPath
Gets/Sets the location on disk to save license tokens
public string TokenPath { get; set; }
Property Value
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
Methods
GetEffectiveLogoutRedirectUri(int)
Gets the effective redirect URI for logout redirect.
public Uri? GetEffectiveLogoutRedirectUri(int port)
Parameters
port
int