Azure Policy üzembe helyezése delegált előfizetésekben nagy léptékben
Előfordulhat, hogy szolgáltatóként több ügyfélbérlőt is előkészített az Azure Lighthouse-hoz. Az Azure Lighthouse lehetővé teszi a szolgáltatók számára, hogy egyszerre több bérlőn is nagy léptékben végezhessenek műveleteket, ami hatékonyabbá teszi a felügyeleti feladatokat.
Ez a témakör azt ismerteti, hogyan helyezhet üzembe Azure Policy egy szabályzatdefiníciót és szabályzat-hozzárendelést több bérlőn PowerShell-parancsokkal. Ebben a példában a szabályzatdefiníció biztosítja, hogy a tárfiókok csak a HTTPS-forgalom engedélyezésével legyenek biztonságosak.
Tipp
Bár ebben a témakörben a szolgáltatókra és az ügyfelekre hivatkozunk, a több bérlőt kezelő vállalatok ugyanazokat a folyamatokat használhatják .
Az Azure Resource Graph használata az ügyfélbérlők közötti lekérdezéshez
Az Azure Resource Graph használatával lekérdezheti a felügyelt ügyfélbérlők összes előfizetését. Ebben a példában az ezekben az előfizetésekben található olyan tárfiókokat azonosítjuk, amelyek jelenleg nem igényelnek HTTPS-forgalmat.
$MspTenant = "insert your managing tenantId here"
$subs = Get-AzSubscription
$ManagedSubscriptions = Search-AzGraph -Query "ResourceContainers | where type == 'microsoft.resources/subscriptions' | where tenantId != '$($mspTenant)' | project name, subscriptionId, tenantId" -subscription $subs.subscriptionId
Search-AzGraph -Query "Resources | where type =~ 'Microsoft.Storage/storageAccounts' | project name, location, subscriptionId, tenantId, properties.supportsHttpsTrafficOnly" -subscription $ManagedSubscriptions.subscriptionId | convertto-json
Szabályzat üzembe helyezése több ügyfélbérlőn
Az alábbi példa bemutatja, hogyan helyezhet üzembe egy szabályzatdefiníciót és szabályzat-hozzárendelést egy Azure Resource Manager-sablonnal több ügyfélbérlő delegált előfizetései között. Ehhez a szabályzatdefinícióhoz minden tárfióknak HTTPS-forgalmat kell használnia. Megakadályozza a nem megfelelő új tárfiókok létrehozását. A beállítás nélküli meglévő tárfiókok nem megfelelőként vannak megjelölve.
Write-Output "In total, there are $($ManagedSubscriptions.Count) delegated customer subscriptions to be managed"
foreach ($ManagedSub in $ManagedSubscriptions)
{
Select-AzSubscription -SubscriptionId $ManagedSub.subscriptionId
New-AzSubscriptionDeployment -Name mgmt `
-Location eastus `
-TemplateUri "https://raw.githubusercontent.com/Azure/Azure-Lighthouse-samples/master/templates/policy-enforce-https-storage/enforceHttpsStorage.json" `
-AsJob
}
Megjegyzés
Bár a szabályzatokat több bérlőn is üzembe helyezheti, jelenleg nem tekintheti meg a nem megfelelő erőforrások megfelelőségi adatait ezekben a bérlőkben.
A szabályzat üzembe helyezésének ellenőrzése
Az Azure Resource Manager-sablon üzembe helyezése után ellenőrizze, hogy a szabályzatdefiníció sikeresen alkalmazva lett-e. Ehhez próbáljon meg létrehozni egy tárfiókot az EnableHttpsTrafficOnly beállítással, amely false (hamis) értékre van állítva az egyik delegált előfizetésben. A szabályzat-hozzárendelés miatt nem lehet létrehozni ezt a tárfiókot.
New-AzStorageAccount -ResourceGroupName (New-AzResourceGroup -name policy-test -Location eastus -Force).ResourceGroupName `
-Name (get-random) `
-Location eastus `
-EnableHttpsTrafficOnly $false `
-SkuName Standard_LRS `
-Verbose
Az erőforrások eltávolítása
Ha végzett, távolítsa el az üzembe helyezés által létrehozott szabályzatdefiníciót és hozzárendelést.
foreach ($ManagedSub in $ManagedSubscriptions)
{
select-azsubscription -subscriptionId $ManagedSub.subscriptionId
Remove-AzSubscriptionDeployment -Name mgmt -AsJob
$Assignment = Get-AzPolicyAssignment | where-object {$_.Name -like "enforce-https-storage-assignment"}
if ([string]::IsNullOrEmpty($Assignment))
{
Write-Output "Nothing to clean up - we're done"
}
else
{
Remove-AzPolicyAssignment -Name 'enforce-https-storage-assignment' -Scope "/subscriptions/$($ManagedSub.subscriptionId)" -Verbose
Write-Output "Deployment has been deleted - we're done"
}
}
Következő lépések
- Tudnivalók a Azure Policy.
- Tudnivalók a bérlők közötti felügyeleti szolgáltatásokról.
- Megtudhatja , hogyan helyezhet üzembe egy delegált előfizetésen belül szervizelhető szabályzatot .