Aller au contenu
Abblix
Cette page n'a pas encore été traduite.

AuthorizationDetail Class

One entry in the OAuth 2.0 Rich Authorization Requests authorization_details array (RFC 9396 §2), wrapped over a System.Text.Json.Nodes.JsonNode which is the source of truth for the entry's content. The wrapper exposes the RFC 9396 §2.2 common-data members as strongly-typed accessors that read from and write to the underlying Json directly — the same shape JsonWebTokenPayload uses over its System.Text.Json.Nodes.JsonObject.

C#
public record AuthorizationDetail : System.IEquatable<Abblix.Jwt.AuthorizationDetail>

Inheritance System.Object → AuthorizationDetail

Implements System.IEquatable<AuthorizationDetail>

Remarks

Type-specific members outside the §2.2 common-data set (for example the instructedAmount / creditorAccount fields of a PSD2 payment_initiation entry) are accessed directly through Json; the per-type validator that owns the schema for a given type reads and writes them via the System.Text.Json.Nodes API on the wrapped node.

Constructors

AuthorizationDetail(JsonObject) Constructor

One entry in the OAuth 2.0 Rich Authorization Requests authorization_details array (RFC 9396 §2), wrapped over a System.Text.Json.Nodes.JsonNode which is the source of truth for the entry's content. The wrapper exposes the RFC 9396 §2.2 common-data members as strongly-typed accessors that read from and write to the underlying Json directly — the same shape JsonWebTokenPayload uses over its System.Text.Json.Nodes.JsonObject.

C#
public AuthorizationDetail(System.Text.Json.Nodes.JsonObject Json);

Parameters

Json System.Text.Json.Nodes.JsonObject

The underlying JSON node carrying the entry's wire shape. Member order, type-specific payload (RFC 9396 §2.2 extension members), and any unknown fields the AS does not model survive the authorize → code → token round-trip byte-exact because no typed deserialise / re-serialise cycle ever runs over them.

Remarks

Type-specific members outside the §2.2 common-data set (for example the instructedAmount / creditorAccount fields of a PSD2 payment_initiation entry) are accessed directly through Json; the per-type validator that owns the schema for a given type reads and writes them via the System.Text.Json.Nodes API on the wrapped node.

Properties

AuthorizationDetail.Actions Property

Kinds of actions to be taken at the resource, per RFC 9396 §2.2.

C#
public System.Collections.Generic.IEnumerable<string>? Actions { get; set; }

Property Value

System.Collections.Generic.IEnumerable<System.String>

AuthorizationDetail.Datatypes Property

Kinds of data being requested from the resource, per RFC 9396 §2.2.

C#
public System.Collections.Generic.IEnumerable<string>? Datatypes { get; set; }

Property Value

System.Collections.Generic.IEnumerable<System.String>

AuthorizationDetail.Identifier Property

A specific resource identifier at the API, per RFC 9396 §2.2.

C#
public string? Identifier { get; set; }

Property Value

System.String

AuthorizationDetail.Json Property

The underlying JSON node carrying the entry's wire shape. Member order, type-specific payload (RFC 9396 §2.2 extension members), and any unknown fields the AS does not model survive the authorize → code → token round-trip byte-exact because no typed deserialise / re-serialise cycle ever runs over them.

C#
public System.Text.Json.Nodes.JsonObject Json { get; }

Property Value

System.Text.Json.Nodes.JsonObject

AuthorizationDetail.Locations Property

Locations of the resource server(s) the client wants to access, per RFC 9396 §2.2. Typically URIs identifying resource servers.

C#
public System.Collections.Generic.IEnumerable<string>? Locations { get; set; }

Property Value

System.Collections.Generic.IEnumerable<System.String>

AuthorizationDetail.Privileges Property

Types or levels of privilege being requested at the resource, per RFC 9396 §2.2.

C#
public System.Collections.Generic.IEnumerable<string>? Privileges { get; set; }

Property Value

System.Collections.Generic.IEnumerable<System.String>

AuthorizationDetail.Type Property

The authorization-detail type identifier per RFC 9396 §2.1. Required by the spec; the per-type validator rejects entries where this member is missing with invalid_authorization_details.

C#
public string? Type { get; set; }

Property Value

System.String