Skip to content

Latest commit

 

History

History
286 lines (200 loc) · 7.83 KB

File metadata and controls

286 lines (200 loc) · 7.83 KB

user

Manage IICS users.

Synopsis

iics user <subcommand> [flags]

Subcommands

Subcommand Description
list List users
get Get a single user
create Create a user
update Update a user
delete Delete a user
change-password Change a user password
reset-password Reset a user password using the security answer

user list

Flags

Flag Type Default Description
--limit int 200 Max results
--skip int 0 Results to skip

All global flags apply.

Output columns

Column Description
id User ID
userName Username / login name
email Email address
state Account state (Active/Inactive)
updateTime Last modification time

Examples

iics user list

iics user list --output json

# Find users by name using JSON + jq
iics user list --output json | jq '.[] | select(.userName | test("john"))'
iics user list

iics user list --output json

# Find users by name using PowerShell
$users = iics user list --output json | ConvertFrom-Json
$users | Where-Object { $_.userName -match "john" }

user get

Flags

Flag Type Required Description
--id string yes User ID

All global flags apply.

Examples

iics user get --id <user-id>

iics user get --id <user-id> --output json
iics user get --id <user-id>

iics user get --id <user-id> --output json

user create

Create a user from a JSON definition file.

Flags

Flag Type Required Description
--from-file string yes JSON file with user definition

All global flags apply.

JSON definition example

{
  "userName": "jane.smith@company.com",
  "firstName": "Jane",
  "lastName": "Smith",
  "title": "Data Engineer",
  "phone": "+1-555-000-0001",
  "timezone": "America/New_York",
  "roles": [
    { "id": "<role-id>", "name": "Designer" }
  ],
  "groups": [
    { "id": "<group-id>", "userGroupName": "Data Engineering" }
  ]
}

Examples

iics user create --from-file new-user.json
iics user create --from-file new-user.json

user update

NOTE: This command is currently not supported and will fail at runtime.

The IICS REST API does not provide a working endpoint for updating user scalar properties (name, email, title, timezone, etc.):

  • The V3 API (PUT /public/core/v3/users/{id}) returns HTTP 405 - only DELETE is allowed on that path.
  • The V2 API (POST /api/v2/user/{id}) uses XML and returns HTTP 400 "Internal error" in testing, with no public documentation confirming the request format.

Group and role assignment via the V3 addGroups/removeGroups/addRoles/removeRoles endpoints may work, but scalar property update does not. This command will be re-enabled once a working API endpoint is confirmed.

To update a user's group or role membership in the meantime, use the IICS Administrator UI.

Flags

Flag Short Type Required Description
--id string User ID
--username string User name (exact match)
--from-file string JSON, YAML, or CSV file with user fields
--interactive bool Launch interactive update wizard

All global flags apply.

Examples

iics user update --username user@example.com --from-file updated-user.json
iics user update --username user@example.com --from-file updated-user.json

user delete

Delete a user. Prompts for confirmation unless --yes is given.

Flags

Flag Short Type Required Description
--id string yes User ID
--yes -y bool Skip confirmation prompt

All global flags apply.

Examples

iics user delete --id <user-id>

# Non-interactive
iics user delete --id <user-id> --yes
iics user delete --id <user-id>

# Non-interactive
iics user delete --id <user-id> --yes

user change-password

Change a user password. To change your own password, provide --old-password. An administrator can change another user's password by providing --id instead.

Security note: Passwords passed as flags appear in shell history. For automated scripts, consider reading the value from a variable or a secrets manager and passing it via shell substitution rather than typing it directly.

Flags

Flag Type Required Description
--new-password string yes New password
--old-password string conditional Current password (required when changing own password)
--id string conditional User ID (required when admin changes another user)

At least one of --old-password or --id must be provided.

All global flags apply.

Examples

# Change your own password
iics user change-password --old-password <current> --new-password <new>

# Admin changes another user's password
iics user change-password --id <user-id> --new-password <new>
# Change your own password
iics user change-password --old-password <current> --new-password <new>

# Admin changes another user's password
iics user change-password --id <user-id> --new-password <new>

user reset-password

Reset a user password using the user's security question answer. Use this when the password has expired or been forgotten.

Security note: Passwords and security answers passed as flags appear in shell history. See the note in change-password above.

Flags

Flag Type Required Description
--id string yes User ID
--security-answer string yes Answer to the user's security question
--new-password string yes New password

All global flags apply.

Examples

iics user reset-password --id <user-id> --security-answer <answer> --new-password <new>
iics user reset-password --id <user-id> --security-answer <answer> --new-password <new>

See also

  • usergroup - manage user groups
  • role - manage roles assignable to users
  • privilege - list available privileges