Skip to content

Configuration Profiles

David French edited this page Dec 7, 2020 · 6 revisions

Requesting an Okta developer account (optional)

If you don't have an Okta organization that you can execute tests in using Dorothy, you can request a free Okta developer account here.

What are Configuration Profiles?

Configuration profiles contain information to connect to an Okta organization, such as the URL and are stored as a JSON file. Dorothy uses a configuration profile per Okta organization.

When Dorothy starts up, it will check the ~/dorothy/config/ directory for existing configuration profiles. You'll be presented with the option of loading an existing configuration profile (if any are found) or creating a new one.

(.venv) $ python -m dorothy

██████   ██████  ██████   ██████  ████████ ██   ██ ██    ██
██   ██ ██    ██ ██   ██ ██    ██    ██    ██   ██  ██  ██
██   ██ ██    ██ ██████  ██    ██    ██    ███████   ████
██   ██ ██    ██ ██   ██ ██    ██    ██    ██   ██    ██
██████   ██████  ██   ██  ██████     ██    ██   ██    ██

A tool to test security monitoring and detection for Okta environments

Created by David French (@threatpunter) at Elastic

Caution: Dorothy can change the configuration of your Okta environment
Consider using Dorothy in a test environment to avoid any risk of impacting your production environment

[*] Logs will be written to /Users/threatpunter/dorothy/logs/dorothy.log
[*] 1 configuration profiles found in directory /Users/threatpunter/dorothy/config
+---+---------------------------------+------------------------------------+
| # |           Description           |                URL                 |
+---+---------------------------------+------------------------------------+
| 1 |           My Company            | https://my-company.okta.com/api/v1 |
+---+---------------------------------+------------------------------------+
[*] Do you want to load an existing configuration profile? Answer no to create a new one [Y/n]:

Creating a Configuration Profile

When Dorothy starts up, follow the prompts to create a new configuration profile.

You'll be prompted to enter the information below.

  • Description - A description to help you identify the configuration profile
  • URL - The URL of the target Okta organization
    • Enter the URL that users use to sign in. Dorothy will append /api/v1 to the URL that you entered to make requests to the various API endpoints
  • API Token - The API token that you want to use to make requests to the Okta organization
    • Storing the API token in the configuration profile is optional
    • An Okta API token is linked to an Okta user account that has one or more Okta administrator roles assigned
[*] Do you want to load an existing configuration profile? Answer no to create a new one [Y/n]: n
[*] Creating a new configuration profile
[*] Enter description for target Okta environment: My Company
[*] Enter URL for target Okta environment. E.g. https://my-company.okta.com: https://my-company.okta.com
[*] Enter your Okta API token to execute actions. The input for this value is hidden:
[*] Do you want to store the API token in the local config file? [Y/n]:

Managing Configuration Profiles

Use Dorothy's manage-config menu to manage (create, delete, or load) configuration profiles.

dorothy > manage-config
dorothy > manage-config > help

manage-config
=============
Manage Dorothy's configuration profiles

Module Commands
===============
create-new-profile  delete-profile  load-profile  show-current