AXIAM PHP SDK

RoleServiceAccountAssignment
in package
implements JsonSerializable

FinalYes

A service account together with the resource scope of its assignment.

Table of Contents

Interfaces

JsonSerializable

Properties

$inherit  : bool
$resourceId  : string|null
$serviceAccount  : ServiceAccountResponse
$tenantScope  : array<string|int, mixed>|null

Methods

__construct()  : mixed
Constructs a RoleServiceAccountAssignment.
fromArray()  : self
Rebuilds a RoleServiceAccountAssignment 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

Methods

__construct()

Constructs a RoleServiceAccountAssignment.

public __construct(bool $inherit, ServiceAccountResponse $serviceAccount[, string|null $resourceId = null ][, array<int, string>|null $tenantScope = null ]) : mixed
Parameters
$inherit : bool

Whether the assignment also reaches the descendants of resource_id (true, the default) or applies at that resource only (false).

$serviceAccount : ServiceAccountResponse

The assigned service account. Carries no secret — the client secret is returned once, at creation, and never again.

$resourceId : string|null = null

None means the role was assigned globally (no resource scope). (optional)

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

The tenants this assignment reaches, or omitted for "wherever the role does". Shown next to the assignment so an operator can tell a deliberately narrowed grant from an organization-wide one. (optional)

fromArray()

Rebuilds a RoleServiceAccountAssignment 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>
On this page

Search results