Bicep には、 readEnvironmentVariable()
という関数が用意されています。この関数を使用すると、環境変数から値を取得できます。 また、環境変数が存在しない場合は、既定値を柔軟に設定することもできます。 この関数は、 .bicepparam
ファイルでのみ使用できます。
getSecret
getSecret(subscriptionId, resourceGroupName, keyVaultName, secretName, secretVersion)
この関数は、 Azure Key Vault からシークレットを返します。 この関数を使用して、Bicep ファイルのセキュリティで保護された文字列パラメーターにシークレットを渡します。
Note
.bicep
ファイル内から keyVaultName.getSecret(secretName) 関数を使用することもできます。
using './main.bicep'
param secureUserName = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretUserName')
param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword')
文字列補間を含むこの関数を使用すると、エラーが発生します。
namespace 修飾子 (az
) を使用できますが、default Azure 名前空間から関数を使用できるため、省略可能です。
パラメーター
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
subscriptionId | はい | string | キー コンテナー リソースを持つサブスクリプションの ID |
resourceGroupName | はい | string | キー コンテナー リソースを持つリソース グループの名前 |
KeyVaultName | はい | string | キー コンテナーの名前 |
secretName | はい | string | キー コンテナーに格納されているシークレットの名前 |
secretVersion | いいえ | string | キー コンテナーに格納されているシークレットのバージョン |
戻り値
シークレットの値。
例
次の.bicepparam
ファイルには、<secretName> シークレットの最新の値を持つsecurePassword
パラメーターがあります。
using './main.bicep'
param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword')
次の.bicepparam
ファイルには、<secretName> シークレットの値を持つsecurePassword
パラメーターがありますが、特定の <secretValue に固定されています>
using './main.bicep'
param securePassword = getSecret('exampleSubscription', 'exampleResourceGroup', 'exampleKeyVault', 'exampleSecretPassword', 'exampleSecretVersion')
readEnvironmentVariable
readEnvironmentVariable(variableName, [defaultValue])
この関数は、環境変数の値を返すか、環境変数が存在しない場合は既定値を設定します。 変数の読み込みはコンパイル中に発生し、実行時には発生しません。
名前空間: sys。
パラメーター
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
variableName | はい | string | 変数の名前。 |
defaultValue | いいえ | string | 環境変数が存在しない場合に使用される既定の文字列値。 |
戻り値
戻り値は、環境変数の文字列値または既定値です。
解説
次のコマンドは、実行される PowerShell プロセスに対してのみ環境変数を設定します。 Visual Studio Code から BCP338 を取得します。
$env:testEnvironmentVariable = "Hello World!"
ユーザー レベルで環境変数を設定するには、次のコマンドを実行します。
[System.Environment]::SetEnvironmentVariable('testEnvironmentVariable','Hello World!', 'User')
マシン レベルで環境変数を設定するには、次のコマンドを実行します。
[System.Environment]::SetEnvironmentVariable('testEnvironmentVariable','Hello World!', 'Machine')
詳細については、「 Environment.SetEnvironmentVariable メソッドを参照してください。
例
次の例は、環境変数の値を取得する方法を示しています。
use './main.bicep'
param adminPassword = readEnvironmentVariable('admin_password')
param boolfromEnvironmentVariables = bool(readEnvironmentVariable('boolVariableName','false'))
次のステップ
Bicep パラメーター ファイルの詳細については、「 Bicep デプロイ用のパラメーター ファイルの作成を参照してください。