Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här regeln hittar eventuell exponering av hemligheter i egenskap för inställningar för en anpassad skriptresurs.
Linterregelkod
Använd följande värde i Bicep-konfigurationsfilen för att anpassa regelinställningar:
protect-commandtoexecute-secrets
Lösning
För anpassade skriptresurser commandToExecute bör värdet placeras under protectedSettings egenskapsobjektet i stället för egenskapsobjektet settings om det innehåller hemliga data, till exempel ett lösenord. Till exempel kan hemliga data hittas i säkra parametrar, list* funktioner som listKeys eller i anpassade skriptargument.
Använd inte hemliga data i settings objektet eftersom det använder klartext. Mer information finns i Microsoft.Compute virtualMachines/extensions, Custom Script Extension for Windows och Use the Azure Custom Script Extension Version 2 with Linux virtual machines (Använda Azure Custom Script Extension Version 2 med virtuella Linux-datorer).
Följande exempel misslyckas eftersom commandToExecute anges under settings och använder en säker parameter.
param vmName string
param location string
param fileUris string
param storageAccountName string
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
name: storageAccountName
}
resource customScriptExtension 'Microsoft.HybridCompute/machines/extensions@2023-10-03-preview' = {
name: '${vmName}/CustomScriptExtension'
location: location
properties: {
publisher: 'Microsoft.Compute'
type: 'CustomScriptExtension'
autoUpgradeMinorVersion: true
settings: {
fileUris: split(fileUris, ' ')
commandToExecute: 'mycommand ${storageAccount.listKeys().keys[0].value}'
}
}
}
Du kan åtgärda det genom att flytta egenskapen commandToExecute till objektet protectedSettings .
param vmName string
param location string
param fileUris string
param storageAccountName string
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' existing = {
name: storageAccountName
}
resource customScriptExtension 'Microsoft.HybridCompute/machines/extensions@2023-10-03-preview' = {
name: '${vmName}/CustomScriptExtension'
location: location
properties: {
publisher: 'Microsoft.Compute'
type: 'CustomScriptExtension'
autoUpgradeMinorVersion: true
settings: {
fileUris: split(fileUris, ' ')
}
protectedSettings: {
commandToExecute: 'mycommand ${storageAccount.listKeys().keys[0].value}'
}
}
}
Nästa steg
Mer information om linter finns i Använda Bicep-linter.