Resolver / Rights Resolver

RightsResolver

class teksi_hooks.resolver.rights_resolver.RightsResolver(validation_resolver=<factory>)[source]

Resolve parsed rights and validation definitions into runtime definitions.

Responsibilities:

  • apply default CRUD rules;

  • expand inherited CRUD rules;

  • apply wildcard attribute defaults;

  • apply default and class-specific attribute validations;

  • apply default and class-specific object validations;

  • apply default and class-specific mandatory attributes;

  • produce immutable resolved models;

  • build class-level transition definitions.

Rights and validation definitions are parsed separately and combined only while constructing the resolved runtime configuration.

Parameters:

validation_resolver (ValidationResolver)

resolve(definition, validation_definition=None)[source]

Resolve rights and validation configuration.

Validation configuration is optional to preserve compatibility with callers that currently resolve rights without a validation file.

Parameters:
Return type:

ResolvedRights

resolve_subclass_rights(definition)[source]

Resolve subclass-based rights inheritance.

Return parent class identifiers mapped to child classes whose rights should be considered during authorization evaluation.

Parameters:

definition (RightsDefinition)

Return type:

Mapping[str, tuple[str, …]]

resolve_derived_rights_config(definition)[source]

Resolve derived-rights definitions for all configured classes.

Parameters:

definition (RightsDefinition)

Return type:

Mapping[str, tuple[DerivedRights, …]]

Fields

validation_resolver

Type: ValidationResolver