AXIAM PHP SDK

SamlServiceProviderInput
in package
implements JsonSerializable

FinalYes

Everything an administrator supplies when registering or replacing a service provider (`create` and `update` both take it; `update` is a full replacement). Every field but `entity_id`, `display_name` and `acs_urls` has a default, so a client written against a later revision of this struct keeps working.

This is a REPLACEMENT body (§27.4 rule 5): what it omits is not preserved. The required members are constructor parameters, so omitting one is a constructor error; an optional member left unset is omitted from the wire and takes its default server-side.

Table of Contents

Interfaces

JsonSerializable

Properties

$acsUrls  : array<string|int, mixed>
$allowedGroups  : array<string|int, mixed>|null
$allowIdpInitiated  : bool|null
$attributeMappings  : array<string|int, mixed>|null
$displayName  : string
$enabled  : bool|null
$encryptAssertions  : bool|null
$entityId  : string
$nameIdFormat  : NameIdFormat|null
$signResponses  : bool|null
$sloBinding  : SamlBinding|null
$sloUrl  : string|null
$spEncryptionCertPem  : string|null
$spSigningCertPem  : string|null
$wantAuthnRequestsSigned  : bool|null

Methods

__construct()  : mixed
Constructs a SamlServiceProviderInput.
fromArray()  : self
Rebuilds a SamlServiceProviderInput 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.
unknownEnumValue()  : string|null
The string the server sent for an open-enum member this SDK has no name for, or `null`.

Properties

Methods

__construct()

Constructs a SamlServiceProviderInput.

public __construct(array<int, AcsEndpoint> $acsUrls, string $displayName, string $entityId[, bool|null $allowIdpInitiated = null ][, array<int, string>|null $allowedGroups = null ][, array<int, AttributeMapping>|null $attributeMappings = null ][, bool|null $enabled = null ][, bool|null $encryptAssertions = null ][, NameIdFormat|null $nameIdFormat = null ][, bool|null $signResponses = null ][, SamlBinding|null $sloBinding = null ][, string|null $sloUrl = null ][, string|null $spEncryptionCertPem = null ][, string|null $spSigningCertPem = null ][, bool|null $wantAuthnRequestsSigned = null ]) : mixed
Parameters
$acsUrls : array<int, AcsEndpoint>

The ACS allow-list. At least one, at most one default.

$displayName : string

Human-readable name for the console.

$entityId : string

The SP's entityID, unique per tenant. At most [MAX_ENTITY_ID_BYTES].

$allowIdpInitiated : bool|null = null

Whether IdP-initiated SSO is allowed for this SP (D-3). A per-SP opt-in, off by default: an unsolicited assertion has no InResponseTo to bind it to a request the SP made. (optional)

$allowedGroups : array<int, string>|null = null

Groups whose members may sign in to this SP. Empty means every active user of the tenant may.* Evaluated by the SSO endpoint (T23.2.3). (optional)

$attributeMappings : array<int, AttributeMapping>|null = null

Attribute mapping table, at most [MAX_ATTRIBUTE_MAPPINGS] entries. (optional)

$enabled : bool|null = null

Whether the SP may sign in at all. A disabled SP stays registered but every SSO request for it is refused. (optional)

$encryptAssertions : bool|null = null

Encrypt assertions to the SP's encryption certificate (D-2). Off by default; requires [Self::sp_encryption_cert_pem]. (optional)

$nameIdFormat : NameIdFormat|null = null

NameID policy. Default: persistent, pairwise. (optional)

$signResponses : bool|null = null

Sign the <samlp:Response> envelope as well as the assertion (which is signed always). Default true: it costs nothing and many SPs require it. (optional)

$sloBinding : SamlBinding|null = null

the server's slo_binding field (optional)

$sloUrl : string|null = null

Single-logout endpoint, if the SP supports it. (optional)

$spEncryptionCertPem : string|null = null

PEM certificate assertions are encrypted to. Required when encrypt_assertions is set. (optional)

$spSigningCertPem : string|null = null

PEM certificate the SP signs its AuthnRequests with. (optional)

$wantAuthnRequestsSigned : bool|null = null

Refuse an AuthnRequest that is not signed by sp_signing_cert_pem. Requires that certificate. (optional)

fromArray()

Rebuilds a SamlServiceProviderInput from one decoded JSON object.

public static fromArray(array<string, mixed> $data) : self
Parameters
$data : array<string, mixed>

The raw wire object.

Return values
self

jsonSerialize()

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.

Return values
array<string, mixed>

unknownEnumValue()

The string the server sent for an open-enum member this SDK has no name for, or `null`.

public unknownEnumValue(string $wire) : string|null

Only a model decoded by self::fromArray() knows it, and only for a member that decoded to Unknown (CONTRACT.md §27.6.2 item 4, §34.8 (c)): it lets a refusal name the value. It is for messages -- it is never rendered by self::toArray() or self::jsonSerialize() and so is never sent.

Parameters
$wire : string

The member's wire name.

Return values
string|null
On this page

Search results