Table of Contents

Class OAuthPkce

Namespace
BiExcellence.OpenBi.Api.Auth
Assembly
BiExcellence.OpenBi.Api.Client.dll

A PKCE pair (RFC 7636) for the authorization code flow: the Challenge goes to GetAuthorizationUri(IOpenBiApiClient, string, string?, OAuthPkce, string?, string?, string?), the Verifier - kept by the app, never sent anywhere else - to CreateAccessTokenFromAuthorizationCodeAsync(IOpenBiApiClient, string, string?, string, string?, string, CancellationToken). The server requires one for every app, and only the S256 method.

public sealed record OAuthPkce
Inheritance
object
OAuthPkce

Constructors

OAuthPkce(string, string)

A PKCE pair (RFC 7636) for the authorization code flow: the Challenge goes to GetAuthorizationUri(IOpenBiApiClient, string, string?, OAuthPkce, string?, string?, string?), the Verifier - kept by the app, never sent anywhere else - to CreateAccessTokenFromAuthorizationCodeAsync(IOpenBiApiClient, string, string?, string, string?, string, CancellationToken). The server requires one for every app, and only the S256 method.

public OAuthPkce(string Verifier, string Challenge)

Parameters

Verifier string

256 random bits, base64url: the secret half.

Challenge string

BASE64URL(SHA256(Verifier)): the half that travels through the browser.

Properties

Challenge

BASE64URL(SHA256(Verifier)): the half that travels through the browser.

public string Challenge { get; init; }

Property Value

string

Verifier

256 random bits, base64url: the secret half.

public string Verifier { get; init; }

Property Value

string

Methods

Create()

A new pair - one per authorization request.

public static OAuthPkce Create()

Returns

OAuthPkce