-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix #5344 Add the ability to provide and use a CA file for mysql servers with require_secure_transport=on
#5418
Draft
GABRIELNGBTUC
wants to merge
14
commits into
louislam:master
Choose a base branch
from
GABRIELNGBTUC:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from 11 commits
Commits
Show all changes
14 commits
Select commit
Hold shift + click to select a range
d2b48a6
Add support for user provided CA certificate to establish secure conn…
GABRIELNGBTUC 98ba019
Fix always true if condition
GABRIELNGBTUC 69896a7
Rename the UPTIME_KUMA_DB_SSL_CERT environment variable to a more exp…
GABRIELNGBTUC 0943e5d
Remove unused config
GABRIELNGBTUC bef4479
Add CA file upload to the maria db ui
GABRIELNGBTUC e73c87c
Add support for a user provided CA file to connect to maria/mysql
GABRIELNGBTUC 647ca7c
Rename the translation variable for the maria db CA file and add more…
GABRIELNGBTUC a688239
Fix typo
GABRIELNGBTUC 8b1556b
Fix another typo
GABRIELNGBTUC ee6e130
Remove unused variable
GABRIELNGBTUC 3069339
Remove linter comments automatically added by editor
GABRIELNGBTUC 9151d99
Make id kebab-cased
GABRIELNGBTUC aeffe6d
Add check to prevent user-provided `dbConfig.caFilePath`.
GABRIELNGBTUC 69c779b
Remove leftover logging from debugging
GABRIELNGBTUC File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.
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.
Check failure
Code scanning / CodeQL
Uncontrolled data used in path expression High
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An alternate approach shall be , using a generic CA bundle : Eg: Mozilla. Then provide an env variable to override it, either as a path or the ca bundle content itself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My first attempt at implementing this was to manage this entirely through environment variables but then I read from the contibuting.md the following:
And
I believe this is something that should be configured through environment variables but if we want to respect the whishes of the maintainer, the user upload has to be there with all the complications it implies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Again just opinion :)
If we look at various feature requests for external Db, I believe it was not implemented early to keep the simplicity you quoted. A user base who may use a dedicated DB would be certainly having the knowledge and willingness to get it done, by reading docs and Configure As Code , even if there are efforts involved.
In that context, if we add a UI element, theoretically it is cluttering AND/OR complicating the experience of the user base who needs just out of the box experience.
On the other hand, if we do it via configuration those who need it can implement in a CAC fashion, hopefully it is efficient for those user base.
In a nutshell , if we do it via config, we may able to stretch the functionality without affecting the core slogan of simplicity.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@louislam Would it be possible to have your input on this as I do agree with @vsmanu proposal.
Changes are minimal and simpler with an environment variable only configuration but this would only be possible if
Quote: Settings should be configurable in the frontend.
is not an hard requirement.