An Okta command line interface for scripting and quickly performing routine tasks
Project description
Okta-CLI
NOW WITH HOMEBREW TAP ON A MAC - SEE "INSTALLATION" BELOW :))
This is a python-based CLI tool for Okta. It is not made or maintained by or in any way affiliated with anyone working at Okta. It is mainly driven by the personal needs of its author, although the feature set is becoming quite complete now.
It basically is a CLI wrapper around the Okta REST API.
NOTE: This is not the same as Okta's own okta
CLI interface.
The latter is apparently used for setting up the source for development projects.
Requirements
- A Mac or Linux machine, it might work on Windows (untested)
- Python 3.7+, for the change log see CHANGES.rst.
- unfortunately Python 3.11 is not yet supported due to a dependency.
Installation
Mac & homebrew
brew tap flypenguin/okta-cli
brew install okta-cli
All others
- create a python virtualenv:
mkvirtualenv okta-cli
pip install okta-cli
- start using it:
okta-cli config new
Quickstart
Every more complex function should have help texts available: okta-cli users add -h
, or maybe okta-cli users update -h
or maybe okta-cli apps add -h
... those are probably the most interesting ones.
$ pip install okta-cli # install :)
$ okta-cli config new \ # create a new okta profile
-n my-profile -\
-u https://my.okta.url \
-t API_TOKEN
$ okta-cli users list \ # search users with a query
-f 'profile.email eq "my@email.com"'
$ okta-cli features list # list okta server-side features
$ okta-cli features enable "Recent Activity" # enable an Okta feature
$ okta cli users groups adduser \ # add a user to a group
-g app1_rollout \
-u fred.flintstone@flintstones.com
$ okta-cli apps adduser \ # assign an app to a user
-a my_app_name -u 0109121 \
-f profile.employeeId
$ okta-cli users update id012345678 \ # update a field of a user record
--set profile.email=my@other.email.com
$ okta-cli users bulk-update update-list.xlsx # CSV is okay as well :)
$ okta-cli version # print version and exit
$ okta-cli users get my-login -vvvvv # see http debug output
Configuration
Running config new
(see above) will store a JSON configuration file in the directory determined by the appdirs
module.
References
This project uses a few nice other projects:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for okta_cli-18.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a4dfb9e1338c5dd806338fd1542bb2f310321f164e5501cda4c4fba6bc88f07 |
|
MD5 | 9e925ea8de28e0cdd3b1cb0e68472039 |
|
BLAKE2b-256 | dace401b0b46eff3240f952fb6ab84d9397895fb95652be86c942582f0130508 |