Skip to content

Update Admin Action MFA enforcment#37136

Merged
Joerger merged 3 commits intomasterfrom
joerger/refactor-admin-mfa-requirement
Jan 24, 2024
Merged

Update Admin Action MFA enforcment#37136
Joerger merged 3 commits intomasterfrom
joerger/refactor-admin-mfa-requirement

Conversation

@Joerger
Copy link
Copy Markdown
Contributor

@Joerger Joerger commented Jan 24, 2024

Relax Admin Action MFA enforcement to only apply to clusters with second_factor: webauthn, where we can be 100% positive that all potential users have a WebAuthn key registered. This avoids issues where WebAuthn is configured, but some users only have otp devices registered, which is in some cases a default setup.

Additionally, this PR adds an escape hatch to disable admin action MFA - TELEPORT_UNSTABLE_DISABLE_MFA_ADMIN_ACTIONS. This may be used by users who have existing integrations not yet making use of Machine ID, or in cases where an uncommon/untested flow is broken by the admin action MFA enforcement. This flag will likely be removed at a later date once Admin Action MFA enforcement is in a more stable position.

Changelog: MFA is enforced for admin actions on clusters where WebAuthn is required. This applies to adding users, adding trusted devices, reviewing access requests, among many others. You can set TELEPORT_UNSTABLE_DISABLE_MFA_ADMIN_ACTIONS=yes environment variable on Teleport auth to temporarily disable MFA enforcement for admin actions. The environment variable will be removed in Teleport 16.

@rosstimothy
Copy link
Copy Markdown
Contributor

Looks like there might be a few tests that need their second_factor changed to webauthn

@Joerger Joerger added this pull request to the merge queue Jan 24, 2024
Merged via the queue into master with commit 8d933d0 Jan 24, 2024
@Joerger Joerger deleted the joerger/refactor-admin-mfa-requirement branch January 24, 2024 20:39
@public-teleport-github-review-bot
Copy link
Copy Markdown

@Joerger See the table below for backport results.

Branch Result
branch/v15 Failed

github-merge-queue Bot pushed a commit that referenced this pull request Jan 24, 2024
* Allow webauthnResponse to be passed into API requests; Prompt for MFA before creating a user in the WebUI.

* Skip MFA check if webauthn is not configured.

* Add getWebauthnResponseForAdminAction helper function.

* Remove unused admin action name.

* Fix lint.

* Check for specific error.

* Address comments.

* Relax admin action mfa enforcement expectation, in line with #37136.
Joerger added a commit that referenced this pull request Jan 24, 2024
* Allow webauthnResponse to be passed into API requests; Prompt for MFA before creating a user in the WebUI.

* Skip MFA check if webauthn is not configured.

* Add getWebauthnResponseForAdminAction helper function.

* Remove unused admin action name.

* Fix lint.

* Check for specific error.

* Address comments.

* Relax admin action mfa enforcement expectation, in line with #37136.
github-merge-queue Bot pushed a commit that referenced this pull request Jan 24, 2024
* Allow webauthnResponse to be passed into API requests; Prompt for MFA before creating a user in the WebUI.

* Skip MFA check if webauthn is not configured.

* Add getWebauthnResponseForAdminAction helper function.

* Remove unused admin action name.

* Fix lint.

* Check for specific error.

* Address comments.

* Relax admin action mfa enforcement expectation, in line with #37136.
Joerger added a commit that referenced this pull request Jan 25, 2024
* Only enforce admin MFA when webauthn is required.

* Add TELEPORT_UNSTABLE_DISABLE_MFA_ADMIN_ACTIONS env flag for an emergency escape hatch.

* Fix TestAdminActionMFA unit tests.
github-merge-queue Bot pushed a commit that referenced this pull request Jan 25, 2024
* Only enforce admin MFA when webauthn is required.

* Add TELEPORT_UNSTABLE_DISABLE_MFA_ADMIN_ACTIONS env flag for an emergency escape hatch.

* Fix TestAdminActionMFA unit tests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants