リンター ルール - セキュリティ保護されたパラメーターの既定値
このルールでは、セキュリティ保護されたパラメーターのハードコーディングされた既定値が検索されます。
リンター ルールのコード
ルール設定をカスタマイズするには、Bicep 構成ファイルで次の値を使用します。
secure-parameter-default
解決策
ハードコーディングされた既定値は、空の文字列であるか、newGuid() 関数を呼び出す式である場合を除き、Bicep ファイル内でセキュリティ保護されたパラメーターに指定しないでください。
パスワードのような機密性の高い値が含まれるパラメーターでは、@secure()
デコレーターを使用します。 パラメーターでセキュリティ保護されたデコレーターが使用されていると、そのパラメーターの値はログに記録されず、デプロイ履歴に格納されません。 このアクションにより、悪意のあるユーザーが機密値を検出できなくなります。
ただし、セキュリティ保護されたパラメーターに既定値を指定すると、テンプレートまたはデプロイ履歴にアクセスできるすべてのユーザーが、その値を検出できます。
次の例は、パラメーターにハードコーディングされた既定値が含まれるため、このテストに失敗します。
@secure()
param adminPassword string = 'HardcodedPassword'
既定値を削除することで解決できます。
@secure()
param adminPassword string
必要に応じて、クイック修正を使用して、セキュリティで保護されていない既定値を削除できます。
または、既定値に空の文字列を指定します。
@secure()
param adminPassword string = ''
または、newGuid()
を使用して既定値を生成します。
@secure()
param adminPassword string = newGuid()
次のステップ
リンターの詳細については、「Bicep リンターの使用方法」を参照してください。