Enterprise Management Commands
Commands related to Admin Console and Enterprise Management functions
Commands
Keeper Command Reference
Whether using the interactive shell, CLI or JSON config file, Keeper supports the following commands, each command supports additional parameters and options.
To get help on a particular command, run:
help <command>
Enterprise Management Commands
Command | Explanation |
| Display enterprise information |
| Manage enterprise users |
| Manage enterprise roles and policies |
| Manage enterprise teams |
| Manage enterprise nodes |
Populate user and team vaults with predetermined records | |
| Download & decrypt enterprise data |
Approve queued teams and users provisioned by SCIM or Active Directory Bridge | |
Approve SSO Cloud devices that are pending from end-users | |
Create a new user and vault, and add a record to the current vault with that user's credentials | |
Transfer an account to another user | |
Manage SSO Cloud Automator for Device Approvals | |
Manage SCIM endpoints | |
Manage Audit Alerts |
enterprise-info command
Command: enterprise-info
or ei
Detail: Display information about your enterprise in a tree structure
Parameters:
Text to search for. Can apply to users, teams, and roles
Switches:
-n
, --nodes display nodes
--node
<NODE> show tree structure from a specified node
-u
, --users display user list
-t
, --teams display team list
-r
, --roles display role list
-v
, --verbose show ids with output
--format
<{table, csv, json}> format to show output
table - show information in a table layout
csv - output information in CSV format
json - output information in JSON format
--output
<OUTPUT FILE> a file to write the output to
--columns
<COLUMNS> columns to include in the output. Given as comma separated list. Available columns depends on type of data being viewed
Users
name
status
transfer_status
node
team_count
teams
role_count
roles
alias
2FA status
Teams
restricts
node
user_count
users
queued_user_count
queued_users
Roles
is_visible_below
is_new_user
is_admin
node
user_count
users
Nodes
parent_node
user_count
team_count
teams
role_count
roles
provisioning
Examples:
Display the enterprise name and node structure
Search the enterprise for users named "John Doe"
Output a list of teams in the enterprise to a CSV file
Display a list of roles, and only show if they are an admin role and how many users are in the role
See the node tree structure starting from the Node named "Keeper Security" Give this the root node to see the entire organization's node tree
enterprise-user command
Command: enterprise-user
or eu
Detail: Manage an enterprise user
Parameters:
User's UID or email address.
Note: you can use the following command to see a list of users in the enterprise:
ei --users
Switches:
--expire
expire the user's master password
--extend
extend vault transfer consent for 7 days. Supports the following pseudo users: @all
--lock
lock the user's account
--unlock
unlock the user's account. Supports the following pseudo users: @all
--disable-2fa
disable 2fa for the user
--add
invite the given email address to create a vault in the enterprise (only works with email as parameter)
--invite
send an invite to the given email address. Can be sent to previously invited users
--delete
delete the user from the enterprise. Be careful as this will also delete all of their records, both owned and shared to others.
--name
<NAME> set a name to be used as the user's display name
--node
<NODE NAME OR UID> add the user to a node with the specified name or UID. To view a list of your nodes, use enterprise-info --nodes
--add-role
<ROLE NAME OR UID> add the user to a role with the specified name or UID. To view a list of roles, use enterprise-info --roles
. Supports the following pseudo users: @all
--remove-role
<ROLE NAME OR UID> remove the user from the role with the specified name or UID
--add-team
<TEAM NAME OR UID> add the user to the team with the specified name or UID. To view a list of teams, use enterprise-info --teams
--remove-team
<TEAM NAME OR UID> remove the user from the team with the specified name or UID. To view a list of teams, use enterprise-info --teams
--add-alias
<EMAIL> Add an alias, in the form of an email address, to a user. The alias added will become the "primary" email for the user. Applying the command to an existing alias will set it as primary. Note that this command is only permitted on reserved domains.
--delete-alias
<EMAIL> delete an email alias for a user
-f
, --force do not prompt for confirmation
-v
, --verbose debug output which includes IDs and other data
Examples:
Show details of user "John.Doe@gmail.com"
For the user with the given UID, add them to the Chicago node and the "Chicago Engineering" team
Send an invite to "Jane.Doe@gmail.com" to open a vault in the enterprise
Lock the account with the given UID
Add an alias for a user who changed their name and set as primary
Add all enterprise users to the "Employee" role
enterprise-role command
Command: enterprise-role
or er
Detail: Manage an enterprise role or enforcement policy
Note: you can use the following command to see a list of roles in the enterprise:
ei --roles
Usage: er <ROLE>
Parameters:
<ROLE> Name or UID of role(s). Separate with space to use multiple
Switches:
--add
add a new role to the enterprise
--delete
delete the role
--add-user
<USER NAME OR UID> add a user to the role. Use with --add
--remove-user
<USER NAME OR UID> remove a user from the role
--visible-below
<{on,off}> make a role visible or invisible to roles beneath it
--new-user
<{on,off}> make new users assigned to this role
--node
<NODE NAME OR UID> the node to add the role to
--name
<NAME> name the role
--add-admin
<NODE> set node to be administered by the specified role(s)
--remove-admin
<NODE> unset node administered by the specified role(s)
--cascade
<{on,off}> use with --add-admin
to extend admin-privileges for the specified role(s) to child nodes as well (if 'on')
--enforcement <POLICY>:<VALUE>, --enforcement <POLICY>:$FILE=<PATH TO FILE WITH VALUE>
set the enforcement policy for the given role (using either the literal policy value -- e.g., "True", "e", 10 -- or a reference to a file containing that value). See the list of available enforcement policies in the 2nd tab of the table below.
--copy
make a duplicate role with no users
--clone
make a duplicate role with the same users as the original
--add-team
, -at <TEAM NAME> add a team to the given role
--add-privilege
, -ap <PRIVILEGE NAME> add an admin privilege to the role
--remove-privilege
, -rp <PRIVILEGE NAME> remove an admin privilege to the role
-v
, --verbose show ids with output, including all available enforcement policies
-f
, --force
do not prompt for confirmation (non-interactive mode)
Examples:
Show details about the "Keeper Administrator" role including all enforcements
Show details about the role with the given UID and the "Engineer Team Lead" role
Add a new role named "Onboarding" and make new users automatically assigned to this role
Make user John Dow admin of the role with the given UID and all child roles
Rename the "PM" role to "Product Manager"
Add the three nodes with given UIDs to the "Chicago" node
Create a copy of the role in the "Chicago" node
Changing Role Enforcements
Use the --enforcement
switch to edit enforcement policies on the given role. Pass a policy key and corresponding value to the switch in order to change the enforcement.
Alternatively, set a role enforcement policy to the value specified in an external file.
Example restricting the "Engineering" role to access import records.
enterprise-team command
Command: enterprise-team
or et
Detail: Manage enterprise teams
Parameters:
Team name or id
Note: you can use the following command to see a list of teams in the enterprise:
ei --teams
Switches:
--add
add a new team to the enterprise
--delete
delete the team
--add-user
<USER NAME OR UID> add a user to the team
--remove-user
<USER NAME OR UID> remove a user from the team
--node
<NODE NAME OR UID> the node to add the team to
--name
<NAME> name the team
--approve
approve a queued team. Queued teams are typically created by SCIM requests which still need encryption keys to be created. Therefore they remain in a queued state until the admin logs into the Admin Console or this command is executed.
--restrict-edit
<{on,off}> decide if users in this team can edit records
--restrict-share
<{on,off}> decide if users in this team can share records
--restrict-view
<{on,off}> decide if users in this team can view record passwords
--hide-shared-folder
, -hsf <{on,off}> flag to determine if users in this team can see shared folders
--add-role, -ar <ROLE NAME> add a role to the given team
-v, --verbose show ids with output
Examples:
Show details of "Chicago Engineering" team
Show details for "Chicago Engineering" and "Legal" teams
Add a new team named "Chicago Product" in the "Chicago" node, and restrict users in the team from editing records
Change the name of the team with the given UID to "El Dorado Hills Engineering"
enterprise-node command
Command: enterprise-node
or en
Detail: Manage enterprise nodes
Parameters:
Node name or UID
Note: you can use the following command to see a list of nodes in the enterprise:
ei --nodes
Switches:
--add
add a new node to the enterprise
--delete
delete the node. Note this won't be allowed until all objects from the node are deleted.
--parent
<NODE NAME OR UID> make given node the parent of this node
--name
<NAME> set node's display name
--wipe-out
delete all nodes, roles, users, and teams under the node. Does not delete the node itself. Be careful with this command.
--toggle-isolated
make node visible or invisible to people in other nodes
--invite-email
<FILE_NAME> Sets invite email template from file. Saves current template if file does not exist. dash (-) use stdout. See Custom Emails section below.
--logo-file
<FILE_NAME> Sets company / node logo using local image file (max size: 500 kB, min dimensions: 10x10, max dimensions: 320x320)
Examples:
Show details for the "Chicago" node
For the three nodes: "Chicago", "El Dorado Hills" and node with the given UID, change the parent node to node "NA"
Add a new node named "Cork" under the "EMEA" node
Delete all nodes, roles, users, and teams from under the "APAC" node
Make the "Chicago" node invisible (if currently visible) or visible (if currently invisible) to people in other nodes
Customize the appearance of invite emails and vault UI by using the "chicago_logo.jpg" file in the current user's $HOME directory as the logo image for the "Chicago" node.
Custom Emails
The --invite-email
switch allows you to set the custom email template per node.
Similar to how email templates can be customized on the web admin console, custom email templates on the CLI supports customization of the following four attributes:
Subject
Message Heading
Message Body
Download Button Text
Custom email templates can be defined in a .txt
file in the following format:
Custom Emails can also be formatted using markdown syntax, for more information please refer to this page.
Custom Email Use Case
Suppose there are company branches in Chicago and Tokyo with its respective nodes Chicago
and Tokyo
. Ideally, you want the invitation emails to be in its native language:
Invitation emails sent to the Chicago Branch should be in its native language English
Invitation emails sent to the Tokyo Branch should be in its native language Japanese
The --invite-email
switch makes this possible by enabling you to set the desired email template per node.
First, I define the custom email templates for both of my branches: Chicago
and Tokyo
Next, I set the appropriate email template for each node:
On windows, file paths can be specified either in quotations or double backslash. Either of the following file paths are valid:
"C:\users\file.txt"
or c:\\users\\file.txt
When sending invitation emails, users will receive the following emails based on their branch location:
enterprise-push command
Command: enterprise-push
Detail: Populate a vault with a set of default records
Parameters:
File name of file with template records. File must be JSON format.
Switches:
--syntax-help
show example file format and template parameters
--team
<TEAM NAME OR UID> team to assign records to
--email
<USER EMAIL OR UID> user to assign records to
Examples:
Send records templated in the "office-codes.json" file to every user in the "Chicago Office" team
Send records templated in the "default.json" file to user "Jane.Doe@gmail.com"
See the syntax help
File Format
The "enterprise-push" command uses Keeper JSON record import format.
Example JSON file:
Supported template parameters:
An easy way to find the proper JSON structure is to export some data from your Keeper vault in JSON format. Then, modify the file as required for creating an import file.
To export JSON data for creating a template:
Create an empty folder for storing templates. e.g. "Templates"
Create records in that folder
export
the folder as JSON using the below command
Optional: edit the JSON file to delete the following properties: "uid", "schema", "folders" not used by
enterprise-push
command
The template JSON file should be either array of records or an object that contains a property "records" containing an array of records.
enterprise-down command
Command: enterprise-down
or ed
Detail: Download & decrypt enterprise data locally.
When there is an active instance of Commander running and a change is made on the admin console or another instance of commander, the enterprise-down command can be used to download & decrypt the latest enterprise data locally.
Example:
Suppose a new user is added on the Admin Console while an active commander session is running, executing the following command on the running commander session will download and decrypt the latest changes locally:
team-approve command
Command: team-approve
Detail: Enable or disable automatic team approval or user approval to teams
When using a provisioning method such as Keeper Bridge or SCIM, new teams and users that have not yet activated their vault are queued for approval. Use this command to enable or disable automatic approval of provisioned teams or users.
Switches:
--team
approve teams
--email
approve team users
--restrict-edit
<{on, off}> restrict or allow editing records in approved teams
--restrict-share
<{on, off}> restrict or allow sharing records in approved teams
--restrict-view
<{on, off}>restrict or allow viewing record passwords in approved teams
Examples:
Sync down any pending Enterprise Team approvals
Automatically approve queued provisioned teams
Automatically approve queued provisioned users
Automatically approve queued provisioned teams and don't allow users in those teams to edit records
device-approve command
Command: device-approve
Detail: Approve cloud SSO devices
Parameters:
User's email or device ID to approve or blank to see a list of pending devices
Switches:
-r
, --reload load current list of pending approvals
-a
, --approve approve the device for the given user email or device id
-d
, --deny deny the device for the given user email or device id
--trusted-ip
approve devices from a trusted ip address
--format
<{table, csv, json}> format to show output in
--output
<FILE NAME> file to send output to (must use json or csv format)
Examples:
Show list of pending device approvals
Approve user "John.Doe@gmail.com"
Refresh list of pending device approvals
Write list of pending device approvals to a file in csv format
create-user command:
Command: create-user
Detail
Create a new account and vault for the given email address and create a record for the new user's credentials in the current Keeper vault.
To invite new users to an enterprise see the enterprise-user command
Parameters:
User's email address
Switches:
--name <Name>
user's name
--node <NODE>
name or ID of node to add user to
--record <RECORD UID>
UID of record that holds password for the new account
--folder <FOLDER NAME OR UID>
folder to store created user credentials in
Examples:
Create a new user account and vault for John.Doe@gmail.com
Send an invitation to John Doe to join Keeper, name the new user "John Doe" and add him to the "Chicago" node
Onboarding with create-user Command
When the create-user command is used to create a new user in the Keeper account, a record is created in the current logged in account with the new user's username and temporary password. Once the new record is created, it can be shared with the new user with a one-time share URL.
The new user will follow this url to receive their temporary credentials and perform the first login.
transfer-user command:
Command: transfer-user
Detail: Lock account, then transfer a vault from one user to another.
Parameter:
Email or user ID of the vault to be transferred. More than one can be provided, separated by spaces.
Switches:
--target-user <USER EMAIL>
email address of user account to transfer the vault(s) to
--force, -f
do not prompt for confirmation
Account Transfer must be enabled for the account or role the account is in.
The contents of the transferred vault are placed in a folder in the recipient's vault.
Example:
Transfer the vault of keeperuser1@keepersecurity.com to recipient@keepersecurity.com.
To perform a bulk transfer of user accounts, use the command:
transfer-user @filename
This will look for the file named filename that contains a FROM and TO mapping. For example:
automator command:
Command: automator
Detail: Configures SSO Cloud device automators.
An Automator is a program running at a customer site that can perform some Keeper administrative actions such as performing device approvals or team approvals. More information about the Keeper Automator service is found at this link.
Only the root-level Keeper Administrator role can manage the Automator configuration
When the automator
command is executed without parameters it displays the list of available automators as well as a command help.
Examples:
Create automator with name "Cloud SSO Device Approval".
Edit automator to set the Webhook URL. The Webhook URL is provided by the Automator application.
Skills (Team Approvals, Team-User Approvals, Device Approvals) can be set with the "skill" argument. For example:
Initialize the automator instance using "setup", "init" and "enable" commands. The backend verifies that the Automator is configured and ready to process requests.
For more information about the Keeper Automator for SSO device approvals, see the Automator Service documentation.
scim command
Command: scim
Detail: Configures SCIM endpoints
When scim
command is executed without parameters it displays the list of available SCIM endpoints as well as a command help.
Examples:
Create SCIM endpoint for node SCIM Node
Edit SCIM endpoint configuration. Editing SCIM endpoint generates a new provisioning token
Delete SCIM endpoint
Push group and user data to SCIM endpoint
Switches
--source
Source of SCIM data. Available values: google, ad
--record
Record UID with SCIM configuration
Configuring SCIM source for push
audit-alert command
Command: audit-alert
Detail: Manages Audit Alerts
When audit-alert
is executed without parameters it displays the list of available alerts as well as a command help
To get help on command run
list
options
view
options
history
options
delete
options
add
options
edit
options
reset-counts
options
recipient
options
recipient enable,
disable. or delete
options
recipient add or edit
options
Last updated