共用方式為


Bicep 參數檔案的 Bicep 函式

Bicep 會提供名為 readEnvironmentVariable() 的函數,可用於擷取環境變數的值。 如果環境變數不存在,它也提供設定預設值的彈性。 此函式只能在檔案中使用 .bicepparam

getSecret

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

此函式會從 Azure 金鑰保存庫 傳回秘密。 使用此函式將秘密傳遞至 Bicep 檔案的安全字串參數。

注意

您也可以從 .bicep 檔案內使用 keyVaultName.getSecret(secretName) 函數。

using './main.bicep'

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

如果您使用此函式搭配字串插補,您會收到錯誤。

可以使用命名空間限定符az) ,但這是選擇性的,因為函式可從預設 Azure 命名空間取得。

參數

參數 必要 類型​ 描述
subscriptionId Yes 字串 具有金鑰保存庫資源的訂用帳戶標識碼
resourceGroupName Yes 字串 具有金鑰保存庫資源的資源群組名稱
keyVaultName Yes 字串 金鑰保存庫的名稱
secretName Yes 字串 金鑰保存庫中儲存的秘密名稱
secretVersion No 字串 金鑰保存庫中儲存的秘密版本

傳回值

祕密值。

範例

下列檔案具有securePassword具有 secretName> 秘密最新值<的參數:.bicepparam

using './main.bicep'

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

下列檔案具有具有 secretName 秘密值<的參數,但已釘選到特定的< secretValue:.bicepparamsecurePassword>>

using './main.bicep'

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

readEnvironmentVariable

readEnvironmentVariable(variableName, [defaultValue])

如果環境變數不存在,此函式會傳回環境變數的值,或設定預設值。 變數載入會在編譯期間發生,而不是在運行時間進行。

命名空間:sys (部分機器翻譯)。

參數

參數 必要 類型​ 描述
variableName Yes string 變數的名稱。
defaultValue No 字串 如果環境變數不存在,要使用的預設字串值。

傳回值

傳回值是環境變數或預設值的字串值。

備註

下列命令只會針對其執行所在的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 部署的參數檔案。