SamlSpMetadataDraft
in package
implements
JsonSerializable
A parse of SP metadata: **a draft, not a registration**. Nothing is stored until the caller submits `service_provider` to `create_service_provider` or `update_service_provider`, and nothing in it is trusted because it came from a document (D-41).
Table of Contents
Interfaces
- JsonSerializable
Properties
- $encryptionCertificateFingerprint : string|null
- $serviceProvider : SamlServiceProviderInput
- $signingCertificateFingerprint : string|null
- $warnings : array<string|int, mixed>
Methods
- __construct() : mixed
- Constructs a SamlSpMetadataDraft.
- fromArray() : self
- Rebuilds a SamlSpMetadataDraft from one decoded JSON object.
- jsonSerialize() : array<string, mixed>
- Renders this object for `json_encode()`.
- toArray() : array<string, mixed>
- Renders this object back to its wire form.
Properties
$encryptionCertificateFingerprint read-only
public
string|null
$encryptionCertificateFingerprint
= null
$serviceProvider read-only
public
SamlServiceProviderInput
$serviceProvider
$signingCertificateFingerprint read-only
public
string|null
$signingCertificateFingerprint
= null
$warnings read-only
public
array<string|int, mixed>
$warnings
Methods
__construct()
Constructs a SamlSpMetadataDraft.
public
__construct(SamlServiceProviderInput $serviceProvider, array<int, string> $warnings[, string|null $encryptionCertificateFingerprint = null ][, string|null $signingCertificateFingerprint = null ]) : mixed
Parameters
- $serviceProvider : SamlServiceProviderInput
-
A body
create_service_provideraccepts unchanged (bar the rules that need the datastore).encrypt_assertionsis never set. - $warnings : array<int, string>
-
What to know before submitting it. Human text; do not parse it.
- $encryptionCertificateFingerprint : string|null = null
-
Lower-case hex SHA-256 of the encryption certificate's DER the draft carries, or null. (optional)
- $signingCertificateFingerprint : string|null = null
-
Lower-case hex SHA-256 of the signing certificate's DER the draft carries, or null. (optional)
fromArray()
Rebuilds a SamlSpMetadataDraft from one decoded JSON object.
public
static fromArray(array<string, mixed> $data) : self
Parameters
- $data : array<string, mixed>
-
The raw wire object.
Return values
selfjsonSerialize()
Renders this object for `json_encode()`.
public
jsonSerialize() : array<string, mixed>
Any Sensitive it carries stays WRAPPED here, so a log line or a
json_encode($model) in application code prints [SENSITIVE]. The one place a secret
is revealed is ManagementTransport, on the way to the wire
and nowhere else (§27.5).
Rendering for a log line never fails: an unknown union arm renders its discriminator and
an unrecognised enum value its empty Unknown spelling here, and only self::toArray() -- the request path -- refuses to send it (CONTRACT.md §31.2, §34.2
P12.2).
Return values
array<string, mixed>toArray()
Renders this object back to its wire form.
public
toArray() : array<string, mixed>
§27.4 rule 5: a null property is OMITTED, not emitted as null. On a sparse update those two say opposite things — "leave this alone" versus "set this to nothing" — and only omission means the first.