Workbench policies

Control and approve workbench tool calls with Rego guardrails

Workbench policies evaluate each matching tool call made by a workbench agent. They extend Plural RBAC and tool permissions with authorization rules that understand the current actor, the requested tool, and its arguments.

Workbench policies use the plrl.wb.admission Rego package.

Info:

A policy cannot make an unavailable tool accessible or grant permissions the actor does not already have. It adds guardrails to the existing workbench authorization model.

Supported input

Field
Description
input.tool_nameName of the tool being called
input.toolArguments supplied to the tool, represented as an object
input.actorCurrent user, including identity, service-account status, roles, and groups

The input.actor object contains:

Field
Type
Description
idstringUser ID
namestringUser display name
emailstringUser email address
service_accountbooleanWhether the actor is a service account
roles.adminbooleanWhether the actor is a Plural administrator
groupsstring arrayNames of the groups the actor belongs to

The shape of input.tool depends on the tool. For example, a Kubernetes operation can include a namespace, while a logging tool can include an index and query. Select a past evaluation in the policy simulator to inspect the real input for a tool before writing rules against it.

Decisions

A workbench policy can produce: