<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw" -->

---
title: How to Configure Secret Managers in Bruno v4 | daily.dev
description: Bruno v4 adds direct integration with HashiCorp Vault, AWS Secrets Manager, and Azure Key Vault, letting collections pull live credentials at runtime instead...
canonical: https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: How to Configure Secret Managers in Bruno v4 | daily.dev
og:description: Bruno v4 adds direct integration with HashiCorp Vault, AWS Secrets Manager, and Azure Key Vault, letting collections pull live credentials at runtime instead...
og:url: https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw
og:image: https://api.daily.dev/og/posts/Zh7nmapDW.png
og:image:alt: How to Configure Secret Managers in Bruno v4
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Configure Secret Managers in Bruno v4

**[Bruno Blog](https://daily.dev/sources/usebruno)** · [@devgancode](https://daily.dev/devgancode) · 7 min read · 0 upvotes · 0 comments

## Summary

Bruno v4 adds direct integration with HashiCorp Vault, AWS Secrets Manager, and Azure Key Vault, letting collections pull live credentials at runtime instead of storing them in files. The guide walks through configuring each provider in the app and CLI, and calls out several breaking changes: secret configuration moved from secrets.json to environment files under a new externalSecrets block, configuration now happens via the Environment UI rather than Collection Settings, the old {{$secrets.name.keyname}} syntax is deprecated in favor of {{name.keyname}}, and the CLI now uses --secrets-env-file instead of --env-var. A one-click migration tool for the syntax change is planned for v4.2.0, and old syntax removal is at least six months out.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.usebruno.com/secret-manager-configuration-in-bruno-v4>

## Questions this post answers

### What breaking changes were introduced in Bruno v4 for secret manager configuration?

Secret manager configuration moved out of secrets.json into environment files under a new externalSecrets block, and is now configured from the Environment UI instead of Collection Settings. Opening a collection with an existing secrets.json auto-migrates it, but migration fails with no fallback if the file is read-only, requiring manual re-entry. The CLI does not auto-migrate at all.

_Track breaking changes like this before upgrading a Bruno-based API workflow on daily.dev._

### How do I reference a secret from AWS Secrets Manager or Azure Key Vault in a Bruno request?

Use the new double-curly syntax {{name.keyname}}, where name is the alias given when attaching the secret to an environment and keyname matches the JSON key or secret name in the vault. For example, {{apiCredentials.api_key}} for AWS or {{paymentSecrets.stripe-key}} for Azure. The older {{$secrets.name.keyname}} syntax still resolves but is deprecated.

_Developers wiring secret managers into API clients can follow syntax changes like this on daily.dev._

### How do I pass secrets to the Bruno CLI now that --env-var is deprecated for credentials?

Credentials are now passed using --secrets-env-file <path> instead of --env-var. Export the configured secret manager account as a .env file from Preferences → Secrets Manager → Export as .env, then run bru run collection/ --env Production --secrets-env-file ./secrets.env. The CLI also now supports AWS Secrets Manager and Azure Key Vault in addition to HashiCorp Vault.

_Keep CLI workflows current by following API tooling changes like this on daily.dev._

## Similar posts on daily.dev

- [How to Use Google Cloud Secret Manager in Bruno](https://daily.dev/posts/how-to-use-google-cloud-secret-manager-in-bruno-aixjoqkpx) · Bruno Blog · 0 upvotes · 0 comments
- [How to Share Bruno Collections: Git, Export, and Import](https://daily.dev/posts/how-to-share-bruno-collections-git-export-and-import-qz4ne3qtg) · Bruno Blog · 0 upvotes · 0 comments
- [BoxLang AWS, Azure, and Google Secrets Manager Module Released](https://daily.dev/posts/boxlang-aws-azure-and-google-secrets-manager-module-released-kzsbol6gn) · Foojay.io · 0 upvotes · 0 comments
- [Stop Putting Secrets in .env Files](https://daily.dev/posts/stop-putting-secrets-in-env-files-yml3clr0r) · Lobsters · 2 upvotes · 0 comments
- [Cloudflare Workers: secrets and environments](https://daily.dev/posts/cloudflare-workers-secrets-and-environments-zlie2kho7) · Flavio Copes · 0 upvotes · 0 comments

---

Tags: [#aws](https://daily.dev/tags/aws), [#azure](https://daily.dev/tags/azure), [#hashicorp](https://daily.dev/tags/hashicorp), [#secrets-management](https://daily.dev/tags/secrets-management)

[View this post on daily.dev](https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"How to Configure Secret Managers in Bruno v4","url":"https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw"},"datePublished":"2026-08-23T07:21:31.040Z","dateModified":"2026-08-24T04:00:23.688Z","description":"Bruno v4 adds direct integration with HashiCorp Vault, AWS Secrets Manager, and Azure Key Vault, letting collections pull live credentials at runtime instead...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/7e540cc8cfefa11ac07bd1a8ee635c4c?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/7e540cc8cfefa11ac07bd1a8ee635c4c?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Bruno Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Person","name":"Ganesh Patil","url":"https://daily.dev/devgancode","image":"https://media.daily.dev/image/upload/s--YZDsshgS--/f_auto/v1723695126/avatars/avatar_DKBm9qlNzn7jbRNc8qWlD","interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"EndorseAction"},"userInteractionCount":60}},"commentCount":0,"discussionUrl":"https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"aws,azure,hashicorp,secrets-management","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Bruno Blog","item":"https://daily.dev/sources/usebruno"},{"@type":"ListItem","position":3,"name":"How to Configure Secret Managers in Bruno v4"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/how-to-configure-secret-managers-in-bruno-v4-zh7nmapdw#faq","mainEntity":[{"@type":"Question","name":"What breaking changes were introduced in Bruno v4 for secret manager configuration?","acceptedAnswer":{"@type":"Answer","text":"Secret manager configuration moved out of secrets.json into environment files under a new externalSecrets block, and is now configured from the Environment UI instead of Collection Settings. Opening a collection with an existing secrets.json auto-migrates it, but migration fails with no fallback if the file is read-only, requiring manual re-entry. The CLI does not auto-migrate at all. Track breaking changes like this before upgrading a Bruno-based API workflow on daily.dev."}},{"@type":"Question","name":"How do I reference a secret from AWS Secrets Manager or Azure Key Vault in a Bruno request?","acceptedAnswer":{"@type":"Answer","text":"Use the new double-curly syntax {{name.keyname}}, where name is the alias given when attaching the secret to an environment and keyname matches the JSON key or secret name in the vault. For example, {{apiCredentials.api_key}} for AWS or {{paymentSecrets.stripe-key}} for Azure. The older {{$secrets.name.keyname}} syntax still resolves but is deprecated. Developers wiring secret managers into API clients can follow syntax changes like this on daily.dev."}},{"@type":"Question","name":"How do I pass secrets to the Bruno CLI now that --env-var is deprecated for credentials?","acceptedAnswer":{"@type":"Answer","text":"Credentials are now passed using --secrets-env-file <path> instead of --env-var. Export the configured secret manager account as a .env file from Preferences → Secrets Manager → Export as .env, then run bru run collection/ --env Production --secrets-env-file ./secrets.env. The CLI also now supports AWS Secrets Manager and Azure Key Vault in addition to HashiCorp Vault. Keep CLI workflows current by following API tooling changes like this on daily.dev."}}]}
```

