Securely Manage Your Secrets with HyperExecute
Testing your webapp or applications often involves using the sensitive data like passwords, API keys, and other credentials. Storing these secrets data directly in your code can be risky and exposing it can lead to potential security breaches.
HyperExecute provides a secure and user-friendly solution for managing your secrets during testing. This documentation will guide you through utilizing HyperExecute's Secret Management Vault to keep your sensitive information safe and secure.
These Secrets are stored as key:value
pair where these values are not visible or accessible to anyone but can only be updated with a new value.
Create a New Secret
Follow the steps mentioned to seamlessly add new secrets to HyperExecute and ensure their safe storage:
Step 1: Navigate to the Secrets Section in the top right corner of the HyperExecute dashboard.
Step 2: Click on the Add a Secret button to create a New Secret.
Step 3: Provide a descriptive Key Name and then enter your secret Value. This could be a password, API key, or any other credential.
Step 4: Click on Add Secret button and your secret will be stored safely within HyperExecute's system.
Update Your Existing Secrets
Follow the steps mentioned to update your secrets values to HyperExecute and ensure their safe storage:
Step 1: Navigate to the Secrets Section in the top right corner of the HyperExecute dashboard.
Step 2: Click on the ... and then Edit button of the secret you want to update.
Step 3: Enter updated value of the secret.
Step 4: Click on Edit Secret Value to complete the editing.
Delete the Secrets
Follow the steps mentioned to delete your secrets values from the HyperExecute:
Step 1: Navigate to the Secrets Section in the top right corner of the HyperExecute dashboard.
Step 2: Click on the ... and then Delete button of the secret you want to delete.
Step 3: Click on Confirm Deletion button to delete your secret.
Using Secrets in YAML
During HyperExecute test execution, you might need to access sensitive information like environment variables or access tokens. This section guides you on how to securely integrate these secrets into your YAML file.
Consider these secret key names: secretKey1
and secretKey2
.
version: 0.1
env:
MyKey1: ${{.secrets.secretKey1}}
vars:
MyKey2: ${{.secrets.secretKey2}}
Path: /java/files*.feature
runson: win
testDiscovery:
type: raw
mode: dynamic
args:
featureFilePath: ${Path}
testRunnerCommand: npm run --username abc --password ${{.secrets.SecretKey2}}
- The
env
andvars
sections within your YAML file are used to define variables. - The syntax
{{.secrets.secretKey1}}
allows you to access the corresponding secret value stored securely in HyperExecute.
In the above sample YAML file:
- MyKey1 in the env section uses
secretKey1
. - MyKey2 in the vars section uses
secretKey2
. - testRunnerCommand utilizes
secretKey2
for the password.
- By using secrets within your YAML file, you avoid embedding sensitive information directly in your code, enhancing security.
- HyperExecute securely retrieves these secrets from its storage i.e. HashiCorp Vault at runtime, ensuring they are not exposed during code sharing or storage.