py_abac.policy.conditions package

Subpackages

Submodules

py_abac.policy.conditions.base module

Operation base class

class py_abac.policy.conditions.base.ConditionBase[source]

Bases: object

Base class for conditions

abstract is_satisfied(ctx: py_abac.context.EvaluationContext) → bool[source]

Is conditions satisfied?

Parameters

ctx – evaluation context

Returns

True if satisfied else False

py_abac.policy.conditions.schema module

Condition one-of schema

class py_abac.policy.conditions.schema.ConditionSchema(*, only: Union[Sequence[str], Set[str], None] = None, exclude: Union[Sequence[str], Set[str]] = (), many: bool = False, context: Optional[Dict] = None, load_only: Union[Sequence[str], Set[str]] = (), dump_only: Union[Sequence[str], Set[str]] = (), partial: Union[bool, Sequence[str], Set[str]] = False, unknown: Optional[str] = None)[source]

Bases: marshmallow_oneofschema.one_of_schema.OneOfSchema

Polymorphic JSON schema for conditions

opts = <marshmallow.schema.SchemaOpts object>
type_field = 'condition'
type_schemas = {'AllIn': <class 'py_abac.policy.conditions.collection.all_in.AllInSchema'>, 'AllInAttribute': <class 'py_abac.policy.conditions.attribute.all_in.AllInAttributeSchema'>, 'AllNotIn': <class 'py_abac.policy.conditions.collection.all_not_in.AllNotInSchema'>, 'AllNotInAttribute': <class 'py_abac.policy.conditions.attribute.all_not_in.AllNotInAttributeSchema'>, 'AllOf': <class 'py_abac.policy.conditions.logic.all_of.AllOfSchema'>, 'Any': <class 'py_abac.policy.conditions.others.any.AnySchema'>, 'AnyIn': <class 'py_abac.policy.conditions.collection.any_in.AnyInSchema'>, 'AnyInAttribute': <class 'py_abac.policy.conditions.attribute.any_in.AnyInAttributeSchema'>, 'AnyNotIn': <class 'py_abac.policy.conditions.collection.any_not_in.AnyNotInSchema'>, 'AnyNotInAttribute': <class 'py_abac.policy.conditions.attribute.any_not_in.AnyNotInAttributeSchema'>, 'AnyOf': <class 'py_abac.policy.conditions.logic.any_of.AnyOfSchema'>, 'CIDR': <class 'py_abac.policy.conditions.others.cidr.CIDRSchema'>, 'Contains': <class 'py_abac.policy.conditions.string.contains.ContainsSchema'>, 'EndsWith': <class 'py_abac.policy.conditions.string.ends_with.EndsWithSchema'>, 'Eq': <class 'py_abac.policy.conditions.numeric.eq.EqSchema'>, 'Equals': <class 'py_abac.policy.conditions.string.equals.EqualsSchema'>, 'EqualsAttribute': <class 'py_abac.policy.conditions.attribute.equals.EqualsAttributeSchema'>, 'EqualsObject': <class 'py_abac.policy.conditions.object.equals_object.EqualsObjectSchema'>, 'Exists': <class 'py_abac.policy.conditions.others.exists.ExistsSchema'>, 'Gt': <class 'py_abac.policy.conditions.numeric.gt.GtSchema'>, 'Gte': <class 'py_abac.policy.conditions.numeric.gte.GteSchema'>, 'IsEmpty': <class 'py_abac.policy.conditions.collection.is_empty.IsEmptySchema'>, 'IsIn': <class 'py_abac.policy.conditions.collection.is_in.IsInSchema'>, 'IsInAttribute': <class 'py_abac.policy.conditions.attribute.is_in.IsInAttributeSchema'>, 'IsNotEmpty': <class 'py_abac.policy.conditions.collection.is_not_empty.IsNotEmptySchema'>, 'IsNotIn': <class 'py_abac.policy.conditions.collection.is_not_in.IsNotInSchema'>, 'IsNotInAttribute': <class 'py_abac.policy.conditions.attribute.is_not_in.IsNotInAttributeSchema'>, 'Lt': <class 'py_abac.policy.conditions.numeric.lt.LtSchema'>, 'Lte': <class 'py_abac.policy.conditions.numeric.lte.LteSchema'>, 'Neq': <class 'py_abac.policy.conditions.numeric.neq.NeqSchema'>, 'Not': <class 'py_abac.policy.conditions.logic.not_.NotSchema'>, 'NotContains': <class 'py_abac.policy.conditions.string.not_contains.NotContainsSchema'>, 'NotEquals': <class 'py_abac.policy.conditions.string.not_equals.NotEqualsSchema'>, 'NotEqualsAttribute': <class 'py_abac.policy.conditions.attribute.not_equals.NotEqualsAttributeSchema'>, 'NotExists': <class 'py_abac.policy.conditions.others.not_exists.NotExistsSchema'>, 'RegexMatch': <class 'py_abac.policy.conditions.string.regex_match.RegexMatchSchema'>, 'StartsWith': <class 'py_abac.policy.conditions.string.starts_with.StartsWithSchema'>}

Module contents

Conditions