bayesline.api.ResourcePermissionSummary#

pydantic model bayesline.api.ResourcePermissionSummary#

Summary of a user’s permissions for a specific resource.

Show JSON schema
{
   "title": "ResourcePermissionSummary",
   "description": "Summary of a user's permissions for a specific resource.",
   "type": "object",
   "properties": {
      "resource_type": {
         "$ref": "#/$defs/ResourceType"
      },
      "resource_id": {
         "title": "Resource Id",
         "type": "integer"
      },
      "resource_name": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Resource Name"
      },
      "resource_owner": {
         "anyOf": [
            {
               "type": "string"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "title": "Resource Owner"
      },
      "effective_permission": {
         "$ref": "#/$defs/PermissionLevel"
      },
      "permission_sources": {
         "items": {
            "type": "string"
         },
         "title": "Permission Sources",
         "type": "array"
      }
   },
   "$defs": {
      "PermissionLevel": {
         "description": "Permission levels for resource access.",
         "enum": [
            "read",
            "write",
            "delete",
            "admin"
         ],
         "title": "PermissionLevel",
         "type": "string"
      },
      "ResourceType": {
         "description": "Types of resources that can be protected by ACL.",
         "enum": [
            "setting"
         ],
         "title": "ResourceType",
         "type": "string"
      }
   },
   "required": [
      "resource_type",
      "resource_id",
      "effective_permission",
      "permission_sources"
   ]
}

Config:
  • frozen: bool = True

Fields:
  • effective_permission (bayesline.api._src.acl_models.PermissionLevel)

  • permission_sources (collections.abc.Sequence[str])

  • resource_id (int)

  • resource_name (str | None)

  • resource_owner (str | None)

  • resource_type (bayesline.api._src.acl_models.ResourceType)

field resource_type: ResourceType [Required]#
field resource_id: int [Required]#
field resource_name: str | None = None#
field resource_owner: str | None = None#
field effective_permission: PermissionLevel [Required]#
field permission_sources: Sequence[str] [Required]#