Linter 규칙 - 관리자 사용자 이름은 리터럴이 되어서는 안 됩니다.

이 규칙은 관리 사용자 이름이 리터럴 값으로 설정된 경우를 찾습니다.

Linter 규칙 코드

Bicep 구성 파일의 다음 값을 사용하여 규칙 설정을 사용자 지정합니다.

adminusername-should-not-be-literal

솔루션

리터럴 값 또는 리터럴 값으로 평가되는 식을 사용하지 마세요. 대신 사용자 이름에 대한 매개 변수를 만들고 관리 사용자 이름에 할당합니다.

다음 예제에서는 사용자 이름이 리터럴 값이기 때문에 이 테스트에 실패합니다.

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

다음 예제에서는 기본값을 사용할 때 식이 리터럴 값으로 평가되기 때문에 이 테스트에 실패합니다.

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

이 예제에서는 해당 테스트를 통과합니다.

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

다음 단계

Linter에 관한 자세한 내용은 Bicep Linter 사용을 참조하세요.