Skip to content
Docs Try Aspire

aspire secret command

aspire secret - Manage AppHost user secrets.

Aspire CLI
aspire secret [command] [options]

The aspire secret command manages user secrets for an Aspire AppHost project. User secrets provide a safe way to store sensitive configuration values—such as passwords, API keys, and connection strings—outside of your project files during local development.

Aspire uses user secrets to persist values that resources need across restarts, such as auto-generated passwords for database containers. When you add a persistent resource that requires a password, Aspire automatically initializes user secrets for the AppHost and saves the generated password. On subsequent runs, the saved password is reused so that the resource retains its state.

The Aspire CLI uses the following logic, in order, to determine which AppHost project to process:

  • The --project option.

    This option specifies the path to a project to process.

  • The .aspire/settings.json config file.

    If the config file path exists in the current directory, it’s used. If not, the CLI walks up the directory structure looking for the config file. If it finds a config file, it reads the appHostPath setting value as the project to process.

  • Searches the current directory and subdirectories.

    Starting in the current directory, the CLI gathers all AppHost projects from that directory and below. If a single project is discovered, it’s automatically selected. If multiple projects are discovered, they’re printed to the terminal for the user to manually select one of the projects.

    Once a project is selected, either automatically or manually, the path to the project is stored in the .aspire/settings.json config file.

The following options are available:

  • --apphost

    The path to the Aspire AppHost project file. Alias: --project.

  • -?, -h, --help

    Prints help and usage documentation for the available commands and options.

  • -d, --debug

    Enable debug logging to the console, which prints detailed information about what Aspire CLI is doing when a command is run.

  • --wait-for-debugger

    Wait for a debugger to attach before running a command.

The following commands are available:

CommandFunction
aspire secret set <key> <value>Set a secret value.
aspire secret get <key>Get a secret value.
aspire secret listList all secrets.
aspire secret delete <key>Delete a secret.
aspire secret pathShow the secrets file path.
  • Set a secret value for the current AppHost:

    Aspire CLI
    aspire secret set Parameters:postgres-password MySecretPassword123
  • List all secrets for a specific AppHost:

    Aspire CLI
    aspire secret list --project ./src/MyApp.AppHost/MyApp.AppHost.csproj
  • Get the value of a specific secret:

    Aspire CLI
    aspire secret get Parameters:postgres-password
  • Show the path to the secrets file:

    Aspire CLI
    aspire secret path