Delen via


Geheimen beveiligen in Azure PowerShell

Wanneer u Azure-resources beheert met Azure PowerShell, bevat de uitvoer van opdrachten mogelijk gevoelige informatie die u moet beveiligen. Azure PowerShell kan bijvoorbeeld wachtwoorden, tokens of sleutels weergeven in de uitvoer wanneer u ze maakt. Sommige opdrachten kunnen ook de uitvoer opslaan in logboekbestanden. Dit scenario is vaak het geval bij het werken met GitHub Actions of Azure DevOps.

Inzicht in het risico

Het is essentieel om geheimen en gevoelige informatie te beveiligen. Wanneer ze verkeerd worden verwerkt, kunnen ze toegankelijk worden voor onbevoegde gebruikers. Gebruikersfouten, zoals onjuist geconfigureerde scripts of het invoeren van geheimen in tekst zonder opmaak als waarden voor parameters, kunnen gevoelige details beschikbaar maken in logboeken, opdrachtgeschiedenis of versiebeheersystemen.

Waarschuwingsbericht

Azure PowerShell geeft standaard een waarschuwingsbericht weer vanaf versie 12.0.0 om gevoelige informatie te beveiligen wanneer er een potentieel geheim wordt geïdentificeerd in de uitvoer van een opdracht.

Het waarschuwingsbericht uitschakelen

In het volgende voorbeeld wordt de Update-AzConfig cmdlet gebruikt om het waarschuwingsbericht uit te schakelen.

Update-AzConfig -DisplaySecretsWarning $false

U kunt ook de omgevingsvariabele $Env:AZURE_CLIENTS_SHOW_SECRETS_WARNING gebruiken om het waarschuwingsbericht uit te schakelen.

Set-Item -Path Env:\AZURE_CLIENTS_SHOW_SECRETS_WARNING -Value $false

Overgang van strings naar SecureStrings

Voor beveiligingsdoeleinden is het standaarduitvoertype van de Get-AzAccessToken-cmdlet gepland om te veranderen van een tekst zonder opmaak String in SecureString. Als u zich wilt voorbereiden op deze update, gebruikt u de parameter AsSecureString voordat de breukverandering plaatsvindt.

Deze wijziging is bedoeld om onbedoelde blootstelling van gevoelige tokens in platte tekst te voorkomen. Werk uw scripts bij voor een soepele overgang om de parameter AsSecureString te gebruiken, zoals wordt weergegeven in het volgende voorbeeld:

$token = Get-AzAccessToken -AsSecureString