-
Notifications
You must be signed in to change notification settings - Fork 720
[Core feature] authType=accesskey
has no means to provide the secret securely
#6394
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
Comments
Thank you for opening your first issue here! 🛠 |
To securely manage secrets like the storage access key in Flyte, you can leverage Kubernetes secrets instead of embedding them in Helm values or ConfigMaps. According to Flyte's documentation on secret management, you can create a Kubernetes secret and reference it in your Flyte deployment. This approach ensures that sensitive information is not exposed in plain text within configuration files. To implement this, create a Kubernetes secret with your storage access key and configure Flyte to use this secret. For example, you can create a secret using kubectl create secret generic storage-secrets --from-literal=access_key=<ACCESS_KEY> --from-literal=secret_key=<SECRET_KEY> -n flyte Then, reference this secret in your Flyte configuration, ensuring that the secret is mounted or injected into the necessary pods. This method aligns with how database passwords are securely managed using secrets. Would you like more detail on setting up and using Kubernetes secrets in Flyte? Sources: This is an AI-generated response and your feedback is appreciated! Please leave a 👍 if this is helpful and 👎 if it is not. Mention @RunLLM to ask follow-up questions. See runllm.com for more! |
This also partially applies to flyte/charts/flyte-binary/templates/config-secret.yaml Lines 31 to 36 in f2a1ad7
|
We have implemented this in our fork so I'll upstream this effort to improve things. |
Motivation: Why do you think this is important?
flyte-core: If you need to use
authType=accesskey
forstorage
, the only option is to pass the secret part of the access key in your Helm values (storage.s3.secretKey
) and to have it inlined into variousConfigMap
s.This stands in contrast to how the database password is handled with
common.databaseSecret
where you can have your password mounted from the specified secret to/etc/db/pass.txt
or similar.Goal: What should the final outcome look like, ideally?
Ideally the secret part of storage access keys should not be passed through Helm values or appear in a
ConfigMap
, it should be configurable via aSecret
.Describe alternatives you've considered
I tried to check if it is possible to specify
initContainers
for the various components offlyte-core
, but this is not the case. This could allow one to get a secret into the environment variables of an init container and then substitute values in the mounted config.Propose: Link/Inline OR Additional context
No response
Are you sure this issue hasn't been raised already?
Have you read the Code of Conduct?
The text was updated successfully, but these errors were encountered: