Skip to main content
Version: v5.6.1

Authorisation policy

Included from Basic tier

An authorisation policy bundles path-based access rules with the identities they grant: each rule names a node or platform rule path and the actions it permits (read/update/delete/execute), and each assignment grants the bundle to a user, a group, or everyone. The shipped system policies refuse modification. Served by the v2 AuthorisationPolicyService: the policy CRUD verbs, ReplacePolicyAssignments, the standalone rule CRUD verbs, AttachPolicyRule/DetachPolicyRule, ListPolicyRules and ListRulePathCatalog.

AuthorisationPolicy​

AuthorisationPolicy is the full policy view: the row plus its rules and assignments (the v1 include=authorisation_rules,policy_assignments read).

FieldTypeMeaning
assignmentsarray of PolicyAssignmentThe identities the policy grants: user, group and everyone assignments.
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
descriptionstringFree-text description.
idstringThe record's identity.
namestringDisplay name.
rulesarray of AuthorisationRuleThe policy's linked rules.
systembooleanTrue for the shipped system policies, which refuse modification.
updated_attimestampWhen the record was last updated.

AuthorisationPolicySummary​

AuthorisationPolicySummary is one listed policy row.

FieldTypeMeaning
assignmentsarray of PolicyAssignmentThe policy's assignments, populated under AUTHORISATION_POLICY_VIEW_WITH_ASSIGNMENTS.
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
descriptionstringFree-text description.
idstringThe record's identity.
namestringDisplay name.
systembooleanTrue for the shipped system policies, which refuse modification.
updated_attimestampWhen the record was last updated.

AuthorisationPolicyView​

AuthorisationPolicyView selects how much of each listed policy resolves.

Values: AUTHORISATION_POLICY_VIEW_UNSPECIFIED, AUTHORISATION_POLICY_VIEW_SUMMARY, AUTHORISATION_POLICY_VIEW_WITH_ASSIGNMENTS.

AuthorisationRule​

AuthorisationRule is one authorisation rule row linked to the policy.

FieldTypeMeaning
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
deletablebooleanThe rule grants delete on matched paths.
executablebooleanThe rule grants execute on matched paths.
idstringThe record's identity.
namestringDisplay name.
pathstringThe rule's stored path (strict ^-anchored form).
policy_idsarray of stringThe policies this rule is linked to — populated on the standalone rule reads (ListAuthorisationRules/GetAuthorisationRule); empty in a policy's own nested rule view, where the linkage is the enclosing policy.
readablebooleanThe rule grants read on matched paths.
require_step_upbooleanrequire_step_up demands an elevated session on the rule's matched write-shaped actions (update/delete/execute) — the composition: the step-up verb floor, then matched rules' bits, then per-object flags; policy only ever ADDS requirements. Enforced under the packs:security-governance entitlement; preserved but inert when the pack lapses.
step_up_on_readbooleanstep_up_on_read opts the rule's reads into the demand too — blanket read step-up is a deliberate, per-rule choice.
updatablebooleanThe rule grants update on matched paths.
updated_attimestampWhen the record was last updated.

AuthorisationRuleInput​

AuthorisationRuleInput is one rule in a policy write's rule set (the v1 nested authorisation_rules entry): the rule is found-or-created by its (path, actions) identity and linked to the policy.

FieldTypeMeaning
deletablebooleanThe rule grants delete on matched paths.
executablebooleanThe rule grants execute on matched paths.
pathstringThe rule's path, stored in the strict ^-anchored form.
readablebooleanThe rule grants read on matched paths.
updatablebooleanThe rule grants update on matched paths.

AuthorisationRuleSet​

AuthorisationRuleSet wraps a policy write's full replacement rule set, so an update distinguishes "replace with this set" (present — an empty set clears every rule) from "leave the rules alone" (absent).

FieldTypeMeaning
rulesarray of AuthorisationRuleInputThe full replacement rule set; an empty set clears every rule.

PolicyAssignment​

PolicyAssignment is one policy assignment row: a user, an LDAP group (groupname), or everyone (user and group empty). A user assignment is per-identity: user_id names the exact users row it grants, with username/auth_provider carried for display — a same-named account of another provider holds no part of the grant.

FieldTypeMeaning
auth_providerstringThe assigned user's identity provider, carried for display on a user assignment.
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
groupnamestringThe group name on a group assignment; empty otherwise.
idstringThe record's identity.
updated_attimestampWhen the record was last updated.
user_idstringThe exact users row a user assignment grants; empty on group and everyone assignments.
usernamestringThe assigned user's username, carried for display.

PolicyAssignmentInput​

PolicyAssignmentInput is one assignment in the replacement set: a user (user_id, or username while exactly one account holds it — an ambiguous username is refused, since assignments are per-identity), a groupname, or everyone (all empty).

FieldTypeMeaning
groupnamestringA group assignment's group name.
user_idstringThe exact user to assign.
usernamestringThe user to assign by username — refused when more than one account holds it.

PolicyRule​

PolicyRule is one policy_rules join row linking a rule to a policy.

FieldTypeMeaning
authorisation_policy_idstringThe linked policy.
authorisation_rule_idstringThe linked rule.
created_attimestampWhen the record was created.
created_bystringUsername of the creating identity.
idstringThe record's identity.
updated_attimestampWhen the record was last updated.

RulePathCatalogEntry​

RulePathCatalogEntry is one platform (non-node) rule-path family.

FieldTypeMeaning
descriptionstringOne line a policy author reads: what a rule on this path actually does.
enforcementRulePathEnforcementWhether rules on this family are enforced on the decision path or advisory.
node_scope_suffixbooleanTrue when the family root takes an appended node-path scope suffix (e.g. /governance/change/projects/web scopes to that subtree).
owning_areastringThe owning area the family belongs to (e.g. Administration, Governance).
pathstringThe literal rule path, or a parameterised pattern with placeholders the author replaces (e.g. /admin/groups/, /workflows).

RulePathEnforcement​

RulePathEnforcement is the honest enforcement class of a catalog entry.

Values: RULE_PATH_ENFORCEMENT_UNSPECIFIED, RULE_PATH_ENFORCEMENT_ENFORCED, RULE_PATH_ENFORCEMENT_ADVISORY.

  • opschain docs governance-matrix — the rule-path families and what each one gates.
  • opschain docs governance — step-up composition and how the packs:security-governance entitlement enforces it.
  • opschain docs resources/group — the groups assignments may name.
  • opschain docs resources/user — the per-identity accounts user assignments grant.