Freigeben über


Linterregel: Administratorbenutzername darf kein Literal sein

Diese Regel ermittelt, ob ein Administratorbenutzername auf einen Literalwert festgelegt ist.

Linter-Regelcode

Verwenden Sie den folgenden Wert in der Bicep-Konfigurationsdatei, um die Regeleinstellungen anzupassen:

adminusername-should-not-be-literal

Lösung

Verwenden Sie weder einen Literalwert noch einen Ausdruck, der zu einem Literalwert ausgewertet wird. Erstellen Sie stattdessen einen Parameter für den Benutzernamen, und weisen Sie ihn dem Administratorbenutzernamen zu.

Das folgende Beispiel besteht diesen Test nicht, weil der Benutzername ein Literalwert ist.

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

Das nächste Beispiel besteht diesen Test nicht, weil der Ausdruck zu einem Literalwert ausgewertet wird, wenn der Standardwert verwendet wird.

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

Dieses Beispiel besteht den Test.

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

Nächste Schritte

Weitere Informationen über den Linter finden Sie unter Verwendung des Bicep-Linters.