Udostępnij za pośrednictwem


Reguła lintera — ustawienie domyślne bezpiecznego parametru

Ta reguła znajduje trwale zakodowane wartości domyślne dla bezpiecznych parametrów.

Kod reguły Linter

Użyj następującej wartości w pliku konfiguracji Bicep, aby dostosować ustawienia reguły:

secure-parameter-default

Rozwiązanie

Nie udostępniaj trwale zakodowanej wartości domyślnej dla bezpiecznego parametru w pliku Bicep, chyba że jest to pusty ciąg lub wyrażenie wywołujące funkcję newGuid().

Dekorator jest używany @secure() na parametrach zawierających poufne wartości, takie jak hasła. Gdy parametr używa bezpiecznego dekoratora, wartość parametru nie jest rejestrowana ani przechowywana w historii wdrażania. Ta akcja uniemożliwia złośliwemu użytkownikowi odnajdywanie poufnej wartości.

Jednak po podaniu wartości domyślnej dla zabezpieczonego parametru ta wartość jest wykrywalna przez każdego, kto może uzyskać dostęp do szablonu lub historii wdrożenia.

Poniższy przykład nie powiedzie się w tym teście, ponieważ parametr ma wartość domyślną, która jest zakodowana w kodzie.

@secure()
param adminPassword string = 'HardcodedPassword'

Można go naprawić, usuwając wartość domyślną.

@secure()
param adminPassword string

Opcjonalnie możesz użyć szybkiej poprawki , aby usunąć niezabezpieczoną wartość domyślną:

Zrzut ekranu przedstawiający szybką poprawkę reguły linter zabezpieczonej wartości domyślnej.

Lub przez podanie pustego ciągu dla wartości domyślnej.

@secure()
param adminPassword string = ''

Możesz też użyć polecenia newGuid() , aby wygenerować wartość domyślną.

@secure()
param adminPassword string = newGuid()

Następne kroki

Aby uzyskać więcej informacji na temat lintera, zobacz Use Bicep linter (Używanie lintera Bicep).