{ "name": "RBAC Role Assignment", "description": "Structure documentation for an RBAC role assignment — the binding of a principal (user, group, or service account) to a role.", "fields": [ { "name": "id", "type": "string", "required": false, "description": "Unique identifier for the assignment record." }, { "name": "principalId", "type": "string", "required": true, "description": "Identifier of the user, group, or service account being assigned the role." }, { "name": "principalType", "type": "string (enum: user, group, service_account)", "required": false, "description": "Type of principal receiving the role." }, { "name": "roleId", "type": "string", "required": true, "description": "Identifier of the role being assigned." }, { "name": "scope", "type": "string", "required": false, "description": "Scope of the assignment — global, organization, project, or resource." }, { "name": "grantedBy", "type": "string", "required": false, "description": "Identifier of the principal that granted this assignment." }, { "name": "grantedAt", "type": "string (date-time)", "required": false, "description": "ISO 8601 timestamp when the assignment was granted." }, { "name": "expiresAt", "type": "string (date-time)", "required": false, "description": "Optional expiration timestamp for time-limited role assignments." } ] }