Implement environment-based FIPS mode configuration - #4470
Draft
straistaru wants to merge 1 commit into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The service can already run in FIPS mode: it checks that OpenSSL is ready for FIPS and drops the two connectors that need NTLM (network drive and SharePoint Server). But that code lives in
service_cli.py, which the agent does not use. The agent starts the service throughconnectors/agent/, and nothing there knows about FIPS.We need it on elastic-agent for the new
elastic-agent-service-fipsimage.What this changes
connectors/fips.py: newapply_fips_mode(config). Sets the mode, checks OpenSSL, drops the connectors that cannot run under FIPS. Bothservice_cli.pyandconnectors/agent/service_manager.pycall it, so the rule lives in one place.ELASTICSEARCH_CONNECTORS_FIPS_MODE, because there is no config file on Agent and Agent does not report FIPS mode.trueandfalseare accepted. A typo liketurestops the service instead of quietly turning FIPS mode off. Unset still means off.FIPS mode is enabledorFIPS mode is disabled.MultiServicehid the error and it exited 0. This applies to any error that kills the service, not just FIPS.Nothing changes when FIPS mode is off. All 31 connectors stay available.
Checklists
Pre-Review Checklist
config.yml.example)v7.13.2,v7.14.0,v8.0.0)Changes Requiring Extra Attention
Related Pull Requests
Release Note