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 lintera

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

secure-parameter-default

Rozwiązanie

Nie należy podawać zakodowanej wartości domyślnej 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() dla parametrów 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żesz rozwiązać ten problem, 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 linter, zobacz Use Bicep linter (Używanie lintera Bicep).