Udostępnij za pośrednictwem


Funkcje Bicep dla plików parametrów Bicep

Bicep udostępnia funkcję o nazwie readEnvironmentVariable() , która umożliwia pobieranie wartości ze zmiennych środowiskowych. Zapewnia również elastyczność ustawiania wartości domyślnej, jeśli zmienna środowiskowa nie istnieje. Tej funkcji można używać tylko w .bicepparam plikach.

getSecret

getSecret(subscriptionId, resourceGroupName, keyVaultName, secretName, secretVersion)

Ta funkcja zwraca wpis tajny z usługi Azure Key Vault. Użyj tej funkcji, aby przekazać wpis tajny do bezpiecznego parametru ciągu pliku Bicep.

Uwaga

Możesz również użyć funkcji keyVaultName.getSecret(secretName) z pliku .bicep .

using './main.bicep'

param secureUserName = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretUserName')
param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword')

Jeśli używasz tej funkcji z interpolacją ciągów, wystąpi błąd.

Można użyć kwalifikatora przestrzeni nazw (az), ale jest to opcjonalne, ponieważ funkcja jest dostępna z domyślnej przestrzeni nazw platformy Azure.

Parametry

Parametr Wymagania Type Opis
subscriptionId Tak string Identyfikator subskrypcji, która ma zasób magazynu kluczy
resourceGroupName Tak string Nazwa grupy zasobów, która ma zasób magazynu kluczy
keyVaultName Tak string Nazwa magazynu kluczy
secretName Tak string Nazwa wpisu tajnego przechowywanego w magazynie kluczy
secretVersion Nie. string Wersja wpisu tajnego przechowywanego w magazynie kluczy

Wartość zwracana

Wartość wpisu tajnego.

Przykład

.bicepparam Poniższy plik zawiera parametr, który ma najnowszą securePassword wartość wpisu tajnego <secretName>:

using './main.bicep'

param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword')

.bicepparam Poniższy plik zawiera parametr, który ma securePassword wartość wpisu tajnego <secretName>, ale jest przypięty do określonej< wartości secretValue:>

using './main.bicep'

param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword', 'exampleSecretVersion')

readEnvironmentVariable

readEnvironmentVariable(variableName, [defaultValue])

Ta funkcja zwraca wartość zmiennej środowiskowej lub ustawia wartość domyślną, jeśli zmienna środowiskowa nie istnieje. Ładowanie zmiennych odbywa się podczas kompilacji, a nie w czasie wykonywania.

Przestrzeń nazw: sys.

Parametry

Parametr Wymagania Type Opis
nazwa_zmiennej Tak string Nazwa zmiennej.
defaultValue Nie. string Wartość ciągu domyślnego, która ma być używana, jeśli zmienna środowiskowa nie istnieje.

Wartość zwracana

Wartość zwracana jest wartością ciągu zmiennej środowiskowej lub wartością domyślną.

Uwagi

Następujące polecenie ustawia zmienną środowiskową tylko dla procesu programu PowerShell, w którym jest wykonywany. Otrzymasz narzędzie BCP338 z programu Visual Studio Code:

$env:testEnvironmentVariable = "Hello World!"

Aby ustawić zmienną środowiskową na poziomie użytkownika, uruchom następujące polecenie:

[System.Environment]::SetEnvironmentVariable('testEnvironmentVariable','Hello World!', 'User')

Aby ustawić zmienną środowiskową na poziomie maszyny, uruchom następujące polecenie:

[System.Environment]::SetEnvironmentVariable('testEnvironmentVariable','Hello World!', 'Machine')

Aby uzyskać więcej informacji, zobacz Environment.SetEnvironmentVariable Method (Metoda Environment.SetEnvironmentVariable).

Przykłady

W poniższych przykładach pokazano, jak pobrać wartości zmiennych środowiskowych:

use './main.bicep'

param adminPassword = readEnvironmentVariable('admin_password')
param boolfromEnvironmentVariables = bool(readEnvironmentVariable('boolVariableName','false'))

Następne kroki

Aby uzyskać więcej informacji na temat plików parametrów Bicep, zobacz Create parameters files for Bicep deployment (Tworzenie plików parametrów dla wdrożenia Bicep).