Action Policies
Action Policies
An action policy is a governance rule: it says that a particular kind of operation —— right now, deleting a volume, editing a consistency group's snapshot schedule, or changing an action policy itself —— can't happen immediately when someone requests it. Instead, the request is held as a pending action until enough administrators have reviewed and approved it.
This is useful anywhere you want a second (or third) set of eyes before something disruptive happens —— for example, requiring two admins to sign off before a volume can be deleted, so a single mistaken or malicious delete can't take out production data on its own.
Action policies themselves are configured here; the review workflow that plays out once a policy is triggered —— pending actions —— is covered in Pending Actions.
How enforcement works
An action policy is defined by two things: an entity type (what kind of thing it governs) and an operation type (what kind of change to that thing it governs). Only specific combinations are supported:
| Entity type | Governs |
|---|---|
| Volume | Deleting a volume |
| Snapshot scheduler | Editing a consistency group's recurring snapshot schedule |
| Action Policy | Creating, editing, or deleting an action policy |
You can only have one action policy per entity type/operation type combination.
Once a policy exists for a combination, any user who triggers that operation —— for example, a ReadWrite user running applications volumes delete on a governed volume —— no longer performs it directly. StorONE instead creates a pending action and leaves the underlying operation un-applied until the policy's approval requirements are met. If a governed volume delete is approved and your system has a recycle bin configured, the volume is moved to the recycle bin rather than being deleted outright —— see Recycle Bin.
Creating, editing, or deleting action policies —— and approving or declining pending actions —— requires the Admin role in your organization. Any user can still see and cancel the pending actions they personally triggered; see Pending Actions.
Creating an action policy
Using the web interface
- Open Administration > Action Policies.
- Click Create.
- Fill in:
- Entity Type
—— the kind of operation to govern (see the table above). - Operation Type
—— the operation on that entity type to govern. The choices offered depend on the entity type you picked (for example, Volume only offers Delete). - Authorized Reviewers
—— the admin usernames allowed to approve or decline pending actions created by this policy. Must include at least as many usernames as Minimum Required Reviewers. - Minimum Required Reviewers
—— how many of the authorized reviewers must approve before the action is carried out. Minimum of 2.
- Entity Type
- Confirm to create the policy.
Using the CLI
action_policies create --entityType=<name> --operationType=<name> --authorizedReviewers=<name...> --minimumRequiredReviewers=<numbers>
| Option | Description |
|---|---|
--entityType=<name> |
The entity type this action policy applies to (Volume, Snapshot scheduler, or Action Policy). |
--operationType=<name> |
The operation type this action policy applies to. Must be an operation type enforced for the chosen entity type. |
--authorizedReviewers=<name...> |
Usernames of the admins authorized to review this policy's pending actions. Must include at least --minimumRequiredReviewers admins. |
--minimumRequiredReviewers=<numbers> |
The minimum number of admin approvals required (at least 2). |
Examples
Require two of three specific admins to approve any volume deletion:
action_policies create --entityType Volume --operationType Delete --authorizedReviewers alice,bob,carol --minimumRequiredReviewers 2
Require both admins to approve any change to a consistency group's snapshot schedule:
action_policies create --entityType "Snapshot scheduler" --operationType Edit --authorizedReviewers alice,bob --minimumRequiredReviewers 2
Editing an action policy
You can change who the authorized reviewers are and how many approvals are required. The entity type and operation type an existing policy governs can't be changed —— delete the policy and create a new one instead.
Using the web interface
- Open Administration > Action Policies.
- Select the policy and click Edit.
- Update Authorized Reviewers and/or Minimum Required Reviewers.
- Confirm the change.
Using the CLI
action_policies edit <name> --authorizedReviewers=<name...> --minimumRequiredReviewers=<numbers>
| Option | Description |
|---|---|
<name> |
The name of the action policy to edit Volume Delete (see Listing action policies below). |
--authorizedReviewers=<name...> |
Usernames of the admins authorized to review this policy's pending actions. Must include at least --minimumRequiredReviewers admins. |
--minimumRequiredReviewers=<numbers> |
The minimum number of admin approvals required (at least 2). |
Example —— add a third reviewer and require any two of the three to approve:
action_policies edit "Volume Delete" --authorizedReviewers alice,bob,carol --minimumRequiredReviewers 2
Listing action policies
Using the web interface
Open Administration > Action Policies. The list shows every configured policy, its required reviewer count, and its authorized reviewers.
Using the CLI
action_policies list [<name>] [--entityType=<name>] [--operationType=<name>]
| Option | Description |
|---|---|
<name> |
Filter action policies by name (<EntityType> <OperationType>, e.g. Volume Delete). |
--entityType=<name> |
Filter by entity type. |
--operationType=<name> |
Filter by operation type. |
Examples
List every configured action policy:
action_policies list
List only policies governing volume deletion:
action_policies list --entityType Volume --operationType Delete
Deleting an action policy
You can't delete an action policy while it has a pending action associated with it —— resolve (approve/decline, then let it complete or get cancelled) or delete that pending action first. See Pending Actions.
Using the web interface
- Open Administration > Action Policies.
- Select the policy and click Delete.
- Confirm the deletion.
Using the CLI
action_policies delete <name>
| Option | Description |
|---|---|
<name> |
The name of the action policy to delete (<EntityType> <OperationType>, e.g. Volume Delete). |
Example
action_policies delete "Snapshot scheduler Edit"
Next: Pending Actions —— reviewing, approving, declining, and cancelling the actions an action policy holds for review.