Linter 規則 - 安全參數預設值
此規則會尋找安全參數的硬式編碼預設值。
Linter 規則程式碼
使用 Bicep 設定檔中的下列值來自訂規則設定:
secure-parameter-default
解決方案
Bicep 檔案中的安全參數請勿使用硬式編碼預設值,除非該值為空字串或呼叫 newGuid() 函式的運算式。
含敏感值 (如密碼) 的參數可使用 @secure()
裝飾項目。 當參數使用安全的裝飾項目時,參數值便不會記錄或儲存於部署歷程記錄。 此動作可防止惡意使用者發現敏感值。
然而,當安全參數使用預設值時,可存取範本或部署歷程記錄的任何人皆可發現該值。
下列範例會導致此測試失敗,因為參數具有硬式編碼的預設值。
@secure()
param adminPassword string = 'HardcodedPassword'
您可移除預設值,以修正此問題。
@secure()
param adminPassword string
(選擇性) 您可以使用快速修正移除不安全的預設值:
您也可使用空字串作為預設值。
@secure()
param adminPassword string = ''
或者使用 newGuid()
產生預設值。
@secure()
param adminPassword string = newGuid()
下一步
如需 Linter 的詳細資訊,請參閱使用 Bicep Linter。