You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As you can see, path is "aws/data/creds/aws-eks" instead of "aws/creds/aws-eks"
This leads to permission denied error:
Also: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: afe1173f-14a2-474d-a400-50e539b60623
com.datapipe.jenkins.vault.exception.VaultPluginException: Access denied to Vault path 'aws/creds/aws-eks'
at PluginClassLoader for hashicorp-vault-plugin//com.datapipe.jenkins.vault.VaultAccessor.responseHasErrors(VaultAccessor.java:273)
at PluginClassLoader for hashicorp-vault-plugin//com.datapipe.jenkins.vault.VaultAccessor.retrieveVaultSecrets(VaultAccessor.java:212)
at PluginClassLoader for hashicorp-vault-plugin//com.datapipe.jenkins.vault.VaultBindingStep$Execution.doStart(VaultBindingStep.java:115)
at PluginClassLoader for workflow-step-api//org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Finished: FAILURE
This leads me to believe that this plugin is only developed for the K/V engine, but that is not specified anywhere in the documentation. This plugin needs to either be renamed or be coded to handle different types of secrets individually. There are many secrets that one can retrieve from vault, and most do not have to have /data/ interjected into the path.
Anything else?
No response
Are you interested in contributing a fix?
I don't write Java and I couldn't find where the class was actually transforming the path, but it is doing so and shouldn't in the case of a non K/V2 secrets engine. Perhaps the logic could just be changed slightly to first check at secret_mount/data/secret_path, then if it doesn't find it there, try the original path specified. This would make it work for all the other secrets engines.
The text was updated successfully, but these errors were encountered:
Jenkins and plugins versions report
Environment
What Operating System are you using (both controller, and any agents involved in the problem)?
Ubuntu 24.04 LTS on WSL2
Reproduction steps
Expected Results
withVault authenticates, then retrieves the credentials and sets the env vars for use with the next stage (in my case, a terraform init and apply.
Actual Results
As you can see, path is "aws/data/creds/aws-eks" instead of "aws/creds/aws-eks"
This leads to permission denied error:
This leads me to believe that this plugin is only developed for the K/V engine, but that is not specified anywhere in the documentation. This plugin needs to either be renamed or be coded to handle different types of secrets individually. There are many secrets that one can retrieve from vault, and most do not have to have /data/ interjected into the path.
Anything else?
No response
Are you interested in contributing a fix?
I don't write Java and I couldn't find where the class was actually transforming the path, but it is doing so and shouldn't in the case of a non K/V2 secrets engine. Perhaps the logic could just be changed slightly to first check at secret_mount/data/secret_path, then if it doesn't find it there, try the original path specified. This would make it work for all the other secrets engines.
The text was updated successfully, but these errors were encountered: