Skip to content

UserPrincipal

class Vendidit\AuthServer\Domain\UserPrincipal Source: src/Domain/UserPrincipal.php

A user-shaped Principal. Built from a validated access-token’s claims.

Claim mapping (auth-server/internal/auth/jwt/claims.go TokenClaims): uid → $id email → $email first_name → $firstName last_name → $lastName display_name → $displayName org_id → $orgId org_slug → $orgSlug org_name → $orgName app_id → $appId app_code → $appCode roles → $roles (string[]) permissions → $permissions (string[]) session_id → $sessionId auth_provider → $authProvider imp_uid → $impersonatorUserId imp_email → $impersonatorEmail tv → $tokenVersion

Methods

`__construct(string $id,

?string $jti,
?int $expiresAt,
public readonly string $email,
public readonly ?string $firstName,
public readonly ?string $lastName,
public readonly ?string $displayName,
public readonly ?string $orgId,
public readonly ?string $orgSlug,
public readonly ?string $orgName,
public readonly ?string $appId,
public readonly ?string $appCode,
public readonly array $roles,
public readonly array $permissions,
public readonly ?string $sessionId,
public readonly ?string $authProvider,
public readonly ?string $impersonatorUserId,
public readonly ?string $impersonatorEmail,
public readonly int $tokenVersion,)`

@param list $roles @param list $permissions

fromClaims(object $c)

Build from a decoded JWT claims object (stdClass from firebase/php-jwt).