Partilhar via


Regra Linter - o nome de usuário admin não deve ser literal

Esta regra localiza quando um nome de usuário admin é definido como um valor literal.

Código da regra de linha

Use o seguinte valor no arquivo de configuração do Bicep para personalizar as configurações da regra:

adminusername-should-not-be-literal

Solução

Não use um valor literal ou uma expressão que seja avaliada como um valor literal. Em vez disso, crie um parâmetro para o nome de usuário e atribua-o ao nome de usuário admin.

O exemplo a seguir falha neste teste porque o nome de usuário é um valor literal.

resource vm 'Microsoft.Compute/virtualMachines@2023-03-01' = {
  name: 'name'
  location: location
  properties: {
    osProfile: {
      adminUsername: 'adminUsername'
    }
  }
}

O próximo exemplo falha neste teste porque a expressão é avaliada como um valor literal quando o valor padrão é usado.

var defaultAdmin = 'administrator'
resource vm 'Microsoft.Compute/virtualMachines@2023-03-01' = {
  name: 'name'
  location: location
  properties: {
    osProfile: {
      adminUsername: defaultAdmin
    }
  }
}

Este exemplo passa neste teste.

@secure()
param adminUsername string
param location string
resource vm 'Microsoft.Compute/virtualMachines@2023-03-01' = {
  name: 'name'
  location: location
  properties: {
    osProfile: {
      adminUsername: adminUsername
    }
  }
}

Próximos passos

Para obter mais informações sobre o linter, consulte Usar binter linter.