Managing rotation settings on individual and bulk records using Keeper Commander
Important: The legacy
rotate(plugin‑based) andpam rotation setcommands are deprecated. Usepam rotation editto configure rotation schedules andpam action rotateto trigger an on‑demand rotation through a Keeper Gateway.
Target records are in place – all PAM Machine, PAM User and other privileged records you plan to rotate live in shared folders inside your Keeper Vault.
A Keeper Gateway is installed and online – see Step 1 below.
At least one PAM Configuration exists and points to the gateway – see Step 2.
You are signed in to Keeper Commander with an administrator or rotation‑manager role.
Commander’s pam gateway sub‑commands manage the Gateway service.
Task
Command
List existing gateways
pam gateway list
Create a new gateway and generate a one‑time token
pam gateway new --name "<Gateway_Name>" --application "<KSM_Application_UID>"
Generate the GATEWAY_CONFIG blob for Docker installs
pam gateway new -n "<Gateway_Name>" -a "<App_UID>" --config-init b64
Tip: Retrieve the UID for an existing gateway at any time with
pam gateway list --verbose.
pam config new (or pam config edit) assembles the rules that tie the gateway to rotation, discovery, tunnelling and connections.
pam config new --title "Prod Rotation" \
--gateway "<Gateway_UID>" \
--shared-folder "<Shared_Folder_UID>" \
--rotation on \
--schedule "0 2 * * *"--gateway binds the configuration to the Keeper Gateway you created in Step 1.
--rotation on enables the rotation feature for any records attached to this configuration.
--schedule sets a default CRON schedule that records can inherit (you can still override per record with pam rotation edit).
Use pam config list to obtain the configuration’s UID for later commands.
Command
What it actually does
rotate
Deprecated: legacy plugin‑based rotation run directly from Commander.
pam action rotate
Runs an immediate rotation job through the Keeper Gateway.
pam rotation edit
Configures rotation settings (schedule, resource, complexity) on one or many records. (Does not rotate immediately.)
pam rotation editpam rotation edit adjusts the KeeperPAM rotation metadata stored on a record.
Option
Purpose
--record / -r
Target an individual record by UID, name, or pattern.
--folder / -fd
Target every record in a folder (bulk update).
--force / -f
Skip confirmation prompts.
--config / -c
UID or path of the PAM Configuration to link.
--iam-aad-config / -iac
Alternative to --resource for IAM / Azure AD users.
--resource / -rs
UID or path of the resource record used to perform the change.
--schedulejson / -sj
Supply a JSON scheduler object.
--schedulecron / -sc
Supply a CRON‑formatted schedule string.
--on-demand / -od
Mark rotation as on‑demand (no schedule).
--schedule-config / -sf
Inherit schedule from the linked PAM Configuration.
--complexity / -x
Password complexity spec (length,upper,lower,digits,symbols[,symbol_set]).
--admin-user / -a
UID/path of a PAM User to act as admin for rotation.
--enable / -e
Enable rotation on the targeted record(s).
--disable / -d
Disable rotation on the targeted record(s).
--schedule-only / -so
Update only the schedule on the targeted record(s). Leaves config, resource, complexity untouched. .
Full help: pam rotation edit --help
Replace angle‑bracket placeholders with real UIDs or paths.
1 – Daily rotation on a single machine (CRON)
pam rotation edit --record "<Machine_UID>" \
--config "<PAM_Config_UID>" \
--resource "<Machine_UID>" \
--schedulecron "0 2 * * *" \
--enable2 – Weekly rotation using JSON
pam rotation edit --record "<Machine_UID>" \
--config "<PAM_Config_UID>" \
--resource "<Machine_UID>" \
-sj '{"type":"WEEKLY","weekday":"SATURDAY","time":"22:00","tz":"America/New_York"}' \
--enable3 – Bulk‑enable rotation for every record in a folder (monthly)
pam rotation edit --folder "/Shared/Prod" \
--config "<PAM_Config_UID>" \
--resource "<Gateway_Proxy_User_UID>" \
--schedulecron "0 3 1 * *" \
--enable --force4 – Change schedule only
pam rotation edit --folder "/Shared/Prod" \
--schedulecron "0 1 * * *" \
--schedule-only --forceTip: Combine
-sowith--enableor--disableto quickly activate or pause existing schedules without touching other parameters.
5 – On‑demand rotation (no schedule)
pam rotation edit --record "<Machine_UID>" --on-demand --enable6 – Set password complexity
pam rotation edit --record "<PAM_User_UID>" \
--complexity 20,1,4,2,2,.=+- \
--enableRun a rotation right now (ignoring any schedule):
pam action rotate --record "<Machine_UID>"Commander sends the job to the Keeper Gateway, which executes the correct plugin or native driver for the resource.
pam action gateway-info --gateway <Gateway_UID> – check gateway health and version.
pam rotation list – verify which resources have rotation enabled.
pam action job-info --gateway <Gateway_UID> – view historical rotation job logs.
pam rotation script – manage post‑rotation scripts.
To run a large number of commands in a batch mode, see Keeper's Batch Mode command.