Local file (for Development)
Detailed information on the local file secret store component
This Dapr secret store component reads plain text JSON from a given file and does not use authentication.
Setup JSON file to hold the secrets
Create a JSON file (i.e.
secrets.json
) with the following contents:{
"redisPassword": "your redis passphrase"
}
Save this file to your
./components
directory or a secure location in your filesystem
Configure Dapr component
Create a Dapr component file (ex. localSecretStore.yaml
) with following content:
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: local-secret-store
namespace: default
spec:
type: secretstores.local.file
version: v1
metadata:
- name: secretsFile
value: [path to the JSON file]
- name: nestedSeparator
value: ":"
The nestedSeparator
parameter is optional (default value is ‘:’). It is used by the store when flattening the json hierarchy to a map.
Example
Given the following json:
{
"redisPassword": "your redis password",
"connectionStrings": {
"sql": "your sql connection string",
"mysql": "your mysql connection string"
}
}
The store will load the file and create a map with the following key value pairs:
flattened key | value |
---|---|
“redis” | “your redis password” |
“connectionStrings:sql” | “your sql connection string” |
“connectionStrings:mysql” | “your mysql connection string” |
Use the flattened key (connectionStrings:sql
) to access the secret.
Related links
- Secrets building block
- How-To: Retreive a secret
- How-To: Reference secrets in Dapr components
- Secrets API reference
Last modified February 16, 2021: Merge pull request #1235 from dapr/update-v0.11 (b4e9fbb)