Regra do Linter – predefinição de parâmetro seguro

Esta regra encontra valores predefinidos hard-coded para parâmetros seguros.

Código de regra do Linter

Utilize o seguinte valor no ficheiro de configuração do Bicep para personalizar as definições de regras:

secure-parameter-default

Solução

Não forneça um valor predefinido hard-coded para um parâmetro seguro no ficheiro Bicep, a menos que seja uma cadeia vazia ou uma expressão que chame a função newGuid( ).

Utilize o @secure() decorador em parâmetros que contêm valores confidenciais, como palavras-passe. Quando um parâmetro utiliza um decorador seguro, o valor do parâmetro não é registado ou armazenado no histórico de implementações. Esta ação impede um utilizador malicioso de detetar o valor confidencial.

No entanto, quando fornece um valor predefinido para um parâmetro protegido, esse valor é detetável por qualquer pessoa que possa aceder ao modelo ou ao histórico de implementações.

O exemplo seguinte falha neste teste porque o parâmetro tem um valor predefinido codificado.

@secure()
param adminPassword string = 'HardcodedPassword'

Pode corrigi-lo ao remover o valor predefinido.

@secure()
param adminPassword string

Opcionalmente, pode utilizar a Correção Rápida para remover o valor predefinido inseguro:

A captura de ecrã da correção rápida da regra de linter de valor predefinido protegido.

Em alternativa, ao fornecer uma cadeia vazia para o valor predefinido.

@secure()
param adminPassword string = ''

Em alternativa, utilize newGuid() para gerar o valor predefinido.

@secure()
param adminPassword string = newGuid()

Passos seguintes

Para obter mais informações sobre o linter, veja Utilizar o linter Bicep.