Okta Identity as a Service (IDaaS) Security Technical Implementation Guide
Pick two releases to diff their requirements.
Open a previous version of this STIG.
- RMF Control
- AC-11
- Severity
- M
- CCI
- CCI-000057
- Version
- OKTA-APP-000020
- Vuln IDs
-
- V-273186
- Rule IDs
-
- SV-273186r1098825_rule
Checks: C-77277r1098823_chk
From the Admin Console: 1. Select Security >> Global Session Policy. 2. In the Default Policy, verify a rule is configured at Priority 1 that is not named "Default Rule". 3. Click the edit icon next to the Priority 1 rule. 4. Verify the "Maximum Okta global session idle time" is set to 15 minutes. If "Maximum Okta global session idle time" is not set to 15 minutes, this is a finding.
Fix: F-77182r1098824_fix
From the Admin Console: 1. Go to Security >> Global Session Policy. 2. Select the Default Policy. 3. In the Rules table, make these updates: - Click "Add rule". - Set "Maximum Okta global session idle time" to 15 minutes.
- RMF Control
- AC-11
- Severity
- M
- CCI
- CCI-000057
- Version
- OKTA-APP-000025
- Vuln IDs
-
- V-273187
- Rule IDs
-
- SV-273187r1098828_rule
Checks: C-77278r1098826_chk
From the Admin Console: 1. Select Applications >> Applications >> Okta Admin Console. 2. In the Sign On tab, under "Okta Admin Console session", verify the "Maximum app session idle time" is set to 15 minutes. If the "Maximum app session idle time" is not set to 15 minutes, this is a finding.
Fix: F-77183r1098827_fix
From the Admin Console: 1. Select Applications >> Applications >> Okta Admin Console. 2. In the Sign On tab, under "Okta Admin Console session", set the "Maximum app session idle time" to 15 minutes.
- RMF Control
- AC-2
- Severity
- M
- CCI
- CCI-000017
- Version
- OKTA-APP-000090
- Vuln IDs
-
- V-273188
- Rule IDs
-
- SV-273188r1098831_rule
Checks: C-77279r1098829_chk
If Okta Services rely on external directory services for user sourcing, this is not applicable, and the connected directory services must perform this function. Go to Workflows >> Automations and verify that an Automation has been created to disable accounts after 35 days of inactivity. If the Okta configuration does not automatically disable accounts after a 35-day period of account inactivity, this is a finding.
Fix: F-77184r1098830_fix
From the Admin Console: 1. Go to Workflow >> Automations and select "Add Automation". 2. Create a name for the Automation (e.g., "User Inactivity"). 3. Click "Add Condition" and select "User Inactivity in Okta". 4. In the duration field, enter 35 days and click "Save". 5 Click the edit button next to "Select Schedule". 6. Configure the "Schedule" field for "Run Daily" and set the "Time" field to an organizationally defined time to run this automation. Click "Save". 7. Click the edit button next to "Select group membership". 8. In the "Applies to" field, select the group "Everyone" by typing it into the field. Click "Save". 9. Click "Add Action" and select "Change User lifecycle state in Okta". 10. In the "Change user state to" field, select "Suspended" and click "Save". 11. Click the "Inactive" button near the top of the section screen and select "Activate".
- RMF Control
- AC-7
- Severity
- M
- CCI
- CCI-000044
- Version
- OKTA-APP-000170
- Vuln IDs
-
- V-273189
- Rule IDs
-
- SV-273189r1098834_rule
Checks: C-77280r1098832_chk
If Okta Services rely on external directory services for user sourcing, this check is not applicable, and the connected directory services must perform this function. From the Admin Console: 1. Go to Security >> Authenticators. 2. Click the "Actions" button next to "Password" and select "Edit". 3. For each Password Policy, verify the "Lock Out" section has the following values: - "Lock out after 3 unsuccessful attempts" is checked. - The value is set to "3". If Okta Services are not configured to automatically lock user accounts after three consecutive invalid login attempts, this is a finding.
Fix: F-77185r1098833_fix
From the Admin Console: 1. Go to Security >> Authenticators. 2. Click the "Actions" button next to "Password" and select "Edit". 3. For each Password Policy, ensure the "Lock Out" section has the following values: - "Lock out after 3 unsuccessful attempts" is checked. - The value is set to "3".
- RMF Control
- AC-7
- Severity
- M
- CCI
- CCI-000044
- Version
- OKTA-APP-000180
- Vuln IDs
-
- V-273190
- Rule IDs
-
- SV-273190r1099763_rule
Checks: C-77281r1098835_chk
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Dashboard" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "Possession factor constraints are" section, verify the "Phishing resistant" box is checked. This will ensure that only phishing-resistant factors are used to access the Okta Dashboard. If in the "Possession factor constraints are" section the "Phishing resistant" box is not checked, this is a finding.
Fix: F-77186r1098836_fix
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Dashboard" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "Possession factor constraints are" section, ensure the "Phishing resistant" box is checked.
- RMF Control
- AC-7
- Severity
- M
- CCI
- CCI-000044
- Version
- OKTA-APP-000190
- Vuln IDs
-
- V-273191
- Rule IDs
-
- SV-273191r1099764_rule
Checks: C-77282r1098838_chk
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Admin Console" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "Possession factor constraints are" section, verify the "Phishing resistant" box is checked. This will ensure that only phishing-resistant factors are used to access the Okta Dashboard. If in the "Possession factor constraints are" section the "Phishing resistant" box is not checked, this is a finding.
Fix: F-77187r1098839_fix
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Admin Console" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "Possession factor constraints are" section, ensure the "Phishing resistant" box is checked.
- RMF Control
- AC-8
- Severity
- M
- CCI
- CCI-000048
- Version
- OKTA-APP-000200
- Vuln IDs
-
- V-273192
- Rule IDs
-
- SV-273192r1098843_rule
Checks: C-77283r1098841_chk
Attempt to log in to the Okta tenant and verify the DOD-approved warning banner is in place. If the required warning banner is not present and complete, this is a finding.
Fix: F-77188r1098842_fix
Follow the supplemental instructions in the "Okta DOD Warning Banner Configuration Guide" provided with this STIG package.
- RMF Control
- IA-2
- Severity
- H
- CCI
- CCI-000765
- Version
- OKTA-APP-000560
- Vuln IDs
-
- V-273193
- Rule IDs
-
- SV-273193r1098846_rule
Checks: C-77284r1098844_chk
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Admin Console" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "User must authenticate with" field, verify that either "Password/IdP + Another factor" or "Any 2 factor types" is selected. If either of these settings is incorrect, this is a finding.
Fix: F-77189r1098845_fix
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Admin Console" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "User must authenticate with" field, select either "Password/IdP + Another factor" or "Any 2 factor types".
- RMF Control
- IA-2
- Severity
- H
- CCI
- CCI-000766
- Version
- OKTA-APP-000570
- Vuln IDs
-
- V-273194
- Rule IDs
-
- SV-273194r1098849_rule
Checks: C-77285r1098847_chk
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Dashboard" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "User must authenticate with" field, verify that either "Password/IdP + Another factor" or "Any 2 factor types" is selected. If either of these settings is incorrect, this is a finding.
Fix: F-77190r1098848_fix
From the Admin Console: 1. Go to Security >> Authentication Policies. 2. Click the "Okta Dashboard" policy. 3. Click the "Actions" button next to the top rule and select "Edit". 4. In the "User must authenticate with" field, select either "Password/IdP + Another factor" or "Any 2 factor types".
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000650
- Vuln IDs
-
- V-273195
- Rule IDs
-
- SV-273195r1098852_rule
Checks: C-77286r1098850_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify the "Minimum Length" field is set to at least "15" characters. If any policy is not set to at least "15", this is a finding.
Fix: F-77191r1098851_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set the "Minimum Length" field to at least "15" characters.
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000670
- Vuln IDs
-
- V-273196
- Rule IDs
-
- SV-273196r1098855_rule
Checks: C-77287r1098853_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Upper case letter" is checked. For each policy, if "Upper case letter" is not checked, this is a finding.
Fix: F-77192r1098854_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Upper case letter" to checked.
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000680
- Vuln IDs
-
- V-273197
- Rule IDs
-
- SV-273197r1098858_rule
Checks: C-77288r1098856_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Lower case letter" is checked. For each policy, if "Lower case letter" is not checked, this is a finding.
Fix: F-77193r1098857_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Lower case letter" to checked.
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000690
- Vuln IDs
-
- V-273198
- Rule IDs
-
- SV-273198r1098861_rule
Checks: C-77289r1098859_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Number (0-9)" is checked. For each policy, if "Number (0-9)" is not checked, this is a finding.
Fix: F-77194r1098860_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Number (0-9)" to checked.
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000700
- Vuln IDs
-
- V-273199
- Rule IDs
-
- SV-273199r1098864_rule
Checks: C-77290r1098862_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Symbol (e.g., !@#$%^&*)" is checked. For each policy, if "Symbol (e.g., !@#$%^&*)" is not checked, this is a finding.
Fix: F-77195r1098863_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Symbol (e.g., !@#$%^&*)" to checked.
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000740
- Vuln IDs
-
- V-273200
- Rule IDs
-
- SV-273200r1098867_rule
Checks: C-77291r1098865_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Minimum password age is XX hours" is set to at least "24". For each policy, if "Minimum password age is XX hours" is not set to at least "24", this is a finding.
Fix: F-77196r1098866_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Minimum password age is XX hours" to at least "24".
- RMF Control
- Severity
- M
- CCI
- CCI-004066
- Version
- OKTA-APP-000745
- Vuln IDs
-
- V-273201
- Rule IDs
-
- SV-273201r1098870_rule
Checks: C-77292r1098868_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy, verify "Password expires after XX days" is set to "60". For each policy, if "Password expires after XX days" is not set to "60", this is a finding.
Fix: F-77197r1098869_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Password expires after XX days" to "60".
- RMF Control
- AU-4
- Severity
- H
- CCI
- CCI-001851
- Version
- OKTA-APP-001430
- Vuln IDs
-
- V-273202
- Rule IDs
-
- SV-273202r1099766_rule
Checks: C-77293r1099765_chk
From the Admin Console: 1. Go to Reports >> Log Streaming. 2. Verify that a Log Stream connection is configured and active. Alternately, interview the information system security manager (ISSM) and verify that an external Security Information and Event Management (SIEM) system is pulling Okta logs via an Application Programming Interface (API). If either of these is not configured, this is a finding.
Fix: F-77198r1098872_fix
From the Admin Console: 1. Go to Reports >> Log Streaming. 2. Select either "AWS EventBridge" or "Splunk Cloud" and click "Next". 3. Complete the necessary fields and click "Save". If Log Streaming is not an option because the SIEM required is not an option, customers can use the Okta Log API to export system logs in real time.
- RMF Control
- IA-11
- Severity
- M
- CCI
- CCI-002038
- Version
- OKTA-APP-001665
- Vuln IDs
-
- V-273203
- Rule IDs
-
- SV-273203r1099958_rule
Checks: C-77294r1099958_chk
From the Admin Console: 1. Select Security >> Global Session Policy. 2. In the Default Policy, verify a rule is configured at Priority 1 that is not named "Default Rule". 3. Click the "Edit" icon next to the Priority 1 rule. 4. Verify "Maximum Okta global session lifetime" is set to 18 hours. If the above is not set, this is a finding.
Fix: F-77199r1098875_fix
From the Admin Console: 1. Go to Security >> Global Session Policy. 2. Select the Default Policy. 3. In the Rules table, make these updates: - Click "Add rule". - Set "Maximum Okta global session lifetime" to 18 hours.
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-001953
- Version
- OKTA-APP-001670
- Vuln IDs
-
- V-273204
- Rule IDs
-
- SV-273204r1098879_rule
Checks: C-77295r1098877_chk
From the Admin Console: 1. Go to Security >> Authenticators. 2. Verify that "Smart Card Authenticator" is listed and has "Status" listed as "Active". If "Smart Card Authenticator" is not listed or is not listed as "Active", this is a finding.
Fix: F-77200r1098878_fix
From the Admin Console: 1. Go to Security >> Authenticators. 2. In the "Setup" tab, click "Add authenticator". 3. Select the configured Smart Card Identity Provider and finish configuration.
- RMF Control
- IA-3
- Severity
- M
- CCI
- CCI-001967
- Version
- OKTA-APP-001700
- Vuln IDs
-
- V-273205
- Rule IDs
-
- SV-273205r1098882_rule
Checks: C-77296r1098880_chk
From the Admin Console: 1. Go to Security >> Authenticators. 2. From the "Setup" tab, select "Edit Okta Verify". 3. Review the "FIPS Compliance" field. If FIPS-compliant authentication is not enabled, this is a finding.
Fix: F-77201r1098881_fix
From the Admin Console: 1. Go to Security >> Authenticators. 2. From the "Setup" tab, select "Edit Okta Verify". 3. In the "FIPS Compliance" field, choose whether users enrolling in Okta Verify can use FIPS-compliant devices only or any device. 4. Click "Save" after making any changes.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-002007
- Version
- OKTA-APP-001710
- Vuln IDs
-
- V-273206
- Rule IDs
-
- SV-273206r1098885_rule
Checks: C-77297r1098883_chk
From the Admin Console: 1. Select Security >> Global Session Policy. 2. In the Default Policy, verify a rule is configured at Priority 1 that is not named "Default Rule". 3. Click the "Edit" icon next to the Priority 1 rule. 4. Verify "Okta global session cookies persist across browser sessions" is set to "Disabled". If the above it not set, this is a finding.
Fix: F-77202r1098884_fix
From the Admin Console: 1. Go to Security >> Global Session Policy. 2. Select the Default Policy. 3. In the "Rules" table, make these updates: - Click "Add rule". - Set "Okta global session cookies persist across browser sessions" to Disable.
- RMF Control
- SC-23
- Severity
- M
- CCI
- CCI-002470
- Version
- OKTA-APP-001920
- Vuln IDs
-
- V-273207
- Rule IDs
-
- SV-273207r1098888_rule
Checks: C-77298r1098886_chk
From the Admin Console: 1. Select Security >> Identity Providers (IdPs). 2. Review the list of IdPs with "Type" as "Smart Card". If the IdP is not listed as "Active", this is a finding. 3. Select Actions >> Configure. 4. Under "Certificate chain", verify the certificate is from a DOD-approved CA. If the certificate is not from a DOD-approved CA, this is a finding.
Fix: F-77203r1098887_fix
From the Admin Console: 1. Go to Security >> Identity Providers. 2. Click "Add identity provider." 3. Click "Smart Card IdP". Click "Next". 4. Enter the name of the identity provider. 5. Build a certificate chain: - Click "Browse" to open a file explorer. Select the certificate file to add and click "Open". - To add another certificate, click "Add Another" and repeat step 1. - Click "Build certificate chain". On success, the chain and its certificates are shown. If the build failed, correct any issues and try again. - Click "Reset certificate chain" if replacing the current chain with a new one. 6. In "IdP username", select the "idpuser.subjectAltNameUpn" attribute. This is the attribute that stores the Electronic Data Interchange Personnel Identifier (EDIPI) on the CAC. 7. In the "Match Against" field, select the Okta Profile Attribute in which the EDIPI is to be stored.
- RMF Control
- Severity
- M
- CCI
- CCI-004058
- Version
- OKTA-APP-002980
- Vuln IDs
-
- V-273208
- Rule IDs
-
- SV-273208r1099769_rule
Checks: C-77299r1099767_chk
From the Admin Console: 1. Navigate to Security >> Authenticators. 2. Click the "Actions" button next to the Password authenticator and select "Edit". 3. Under the "Password Settings" section, verify the "Common Password Check" box is checked. If "Common Password Check" is not selected, this is a finding.
Fix: F-77204r1099768_fix
From the Admin Console: 1. Navigate to Security >> Authenticators. 2. Click the "Actions" button next to the Password authenticator and select "Edit". 3. Under the "Password Settings" section, check the "Common Password Check" box.
- RMF Control
- Severity
- M
- CCI
- CCI-004061
- Version
- OKTA-APP-003010
- Vuln IDs
-
- V-273209
- Rule IDs
-
- SV-273209r1098894_rule
Checks: C-77300r1098892_chk
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password row" and select "Edit". 3. For each listed policy, verify "Enforce password history for last XX passwords" is set to "5". If any policy is not set to at least "5", this is a finding.
Fix: F-77205r1098893_fix
From the Admin Console: 1. Select Security >> Authenticators. 2. Click the "Actions" button next to the "Password" row and select "Edit". 3. For each listed policy: - Click "Edit". - Set "Enforce password history for last XX passwords" to "5".