Linter 규칙 - 보안 매개 변수 기본값

이 규칙은 보안 매개 변수의 하드 코드된 기본값을 찾습니다.

Linter 규칙 코드

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

secure-parameter-default

솔루션

빈 문자열이거나 newGuid() 함수를 호출하는 식이 아니라면 Bicep 파일에서 보안 매개 변수의 하드 코드된 기본값을 제공하지 마세요.

암호와 같은 중요한 값을 포함하는 매개 변수에는 @secure() 데코레이터를 사용합니다. 매개 변수가 보안 데코레이터를 사용하는 경우 매개 변수 값이 로그되지 않거나 배포 기록에 저장되지 않습니다. 이 작업을 수행하면 악의적인 사용자가 중요한 값을 검색하지 못합니다.

하지만 보안 매개 변수의 기본값을 제공하는 경우 해당 값은 템플릿이나 배포 기록에 액세스할 수 있는 모든 사용자가 검색할 수 있습니다.

다음 예제에서는 매개 변수에 하드 코드된 기본값이 있기 때문에 이 테스트에 실패합니다.

@secure()
param adminPassword string = 'HardcodedPassword'

기본값을 제거하여 해결할 수 있습니다.

@secure()
param adminPassword string

필요에 따라 빠른 수정을 사용하여 안전하지 않은 기본값을 제거할 수 있습니다.

보안 기본값 Linter 규칙 빠른 수정의 스크린샷.

또는 기본값으로 빈 문자열을 제공합니다.

@secure()
param adminPassword string = ''

또는 newGuid()를 사용하여 기본값을 생성합니다.

@secure()
param adminPassword string = newGuid()

다음 단계

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