Skip to content

Limitations

Limitations are part of the permissions system. They limit the access granted to users by Policies. While a Policy grants the user access to a function, Limitations narrow it down by different criteria.

Limitations consist of two parts:

  • Limitation (Value)
  • LimitationType

Certain Limitations also serve as Role Limitations, which means they can be used to limit the rights of a Role assignment. Currently, this covers Subtree of Location, Section and Personalization access Limitations.

Limitation represents the value, while LimitationType deals with the business logic surrounding how it actually works and is enforced. LimitationTypes have two modes of operation in regards to permission logic (seeĀ Ibexa\Contracts\Core\Limitation interface for more info):

Method Use
evaluate Evaluates if the User has access to a given object in a certain context (for instance the context can be Locations when the object is Content), under the condition of the Limitation value(s).
getCriterion Generates a Criterion using Limitation value and current User which SearchService by default applies to search criteria for filtering search based on permissions.

Limitation reference

See Limitation reference for detailed information about individual Limitations.