Automatizujte přechod na placené SQL licencování ve velkém měřítku

Platí pro:Azure SQL DatabaseAzure SQL Managed InstanceSQL Server na virtuálních počítačích AzureSQL Server s podporou Azure Arc

Tento článek popisuje následující postupy:

  • Zkontrolujte více produktů SQL a převeďte je na licencování s průběžnými platbami pomocí jediného skriptu PowerShell.
  • Neustále vynucujte placené licence pro jeden typ zdroje pomocí Azure Policy.

Automatizace uvedená v tomto článku se vztahuje na SQL Server povolený Azure Arc, SQL Server na Azure Virtual Machines, Azure SQL Database a Azure SQL Managed Instance.

Změna licenční smlouvy nezmění typ licence nastavený pro vaše SQL zdroje. Postupy v tomto článku vám pomohou převést prostředky na průběžné platby, jakmile se na ně již nevztahují licence SQL se službou Software Assurance, předplatné licence SQL ani licence v rámci smlouvy Service Provider License Agreement (SPLA).

Předpoklady

  • Účet Azure s přístupem k tenantovi a předplatným, které obsahují prostředky SQL.
  • PowerShell 5 nebo novější s modulem Az PowerShell.
  • Role přispěvatele v každém předplatném, které upravujete. Pro alternativy s nejmenšími oprávněními zkontrolujte Oprávnění podle typu zdroje.
  • Pro plánovaný režim je vyžadováno oprávnění k vytváření přiřazení rolí v oboru cílového předplatného, nebo musí být požadované role předem přiřazeny spravované identitě účtu Automation.
  • Pravomoc měnit nastavení fakturace a potvrzovat licenční podmínky pro cílové zdroje.

Písmo používá Az.Accounts, Az.Sql, Az.SqlVirtualMachine, Az.ConnectedMachine, a .Az.ResourceGraph Když chybí požadovaný modul, skript před jeho instalací z galerie PowerShell vyzve aktuálního uživatele k potvrzení.

Skript můžete spustit v prostředí PowerShell v Azure Cloud Shell. Specifikujte -TenantId , kdy váš účet může přistupovat k více než jednomu tenantovi.

Vyberte metodu automatizace

Vyberte si mezi těmito možnostmi:

  • PowerShell pro přechody napříč zdroji na placené licence podle využití.
  • Azure Policy pro kontinuální vynucování principu pay-as-you-go pro jeden typ zdroje.

Následující tabulka poskytuje podrobnosti o každé metodě automatizace:

Scenario Doporučená metoda
Zkontrolujte nebo aplikujte změny typu pay-as-you-go napříč různými typy SQL zdrojů manage-payg-transition.ps1
Převeďte všechny podporované zdroje v rámci předplatného nebo nájemce na licencování typu pay-as-you-go manage-payg-transition.ps1
Spusťte přechod na průběžné platby v pravidelném intervalu manage-payg-transition.ps1 v plánovaném režimu
Průběžně vynucovat licencování typu pay-as-you-go pro jeden typ zdroje a odstraňujte odchylky Ukázka Azure Policy pro konkrétní prostředek
Změňte jeden zdroj ručně Článek o licencování specifický pro produkt

Zkontrolujte podporované zdroje a hodnoty licencí

Postupy v tomto článku nastavují -TargetLicenseType na PAYG. Skript tuto hodnotu převádí na hodnotu typu pay-as-you-go, kterou požaduje každý poskytovatel zdrojů. Zdrojové hodnoty ukazují běžné konfigurace licencí, které může přechod nahradit.

Resource Cílová hodnota průběžných plateb Běžné zdrojové hodnoty Podpořeno scénářem Ukázka Azure Policy
SQL Server aktivován pomocí Azure Arc PAYG Paid, LicenseOnly Ano Kompatibilita typů licencí SQL Server s podporou Arc
SQL Server na virtuálních počítačích Azure PAYG AHUB Ano Dodržování předpisů pro typ licence SQL Serveru na virtuálních počítačích Azure
Azure SQL Database a elastické fondy LicenseIncluded BasePrice Ano Soulad typu licence Azure SQL Database
Azure SQL Managed Instance a fondy instancí LicenseIncluded BasePrice, HybridFailoverRights Ano Soulad typu licence SQL Managed Instance

Ukázky politik mohou přepsat další zdrojové hodnoty, například DR pro SQL Server na Azure VM. Před nasazením přiřazení politiky si prostudujte vybraný vzorek.

Pochopte, jak PowerShell skript funguje

Použijte PowerShell skript k úpravě všech zdrojů v rámci skupiny zdrojů, všech zdrojů v rámci předplatného a všech zdrojů v rámci jednoho nebo více odběrů v rámci celého tenantu.

Skript je samostatný a funguje napříč podporovanými SQL zdroji. Když nastavíte -TargetLicenseType na výchozí PAYG, tato hodnota se převede na hodnotu pay-as-you-go, kterou vyžaduje každý typ zdroje, jak je uvedeno v Review supported resources and license values. Během jednoho spuštění se připojí k vybranému tenantu pouze jednou a tuto relaci použije i pro následující operace se zdroji. Zjišťování předplatných je omezeno na daného tenanta.

Když skript znovu použije existující Azure relaci, vyzve vás k potvrzení účtu a tenanta. Před pokračováním si tyto detaily prostudujte. Pro bezobslužná spuštění zadejte -Force, chcete-li přeskočit potvrzování účtu a výzvy k instalaci chybějících modulů. Bez -Force se skript zastaví, pokud potřebuje potvrzení v neinteraktivní relaci. Tento přepínač neuděluje oprávnění ani nenahrazuje autentizaci.

Skript znovu zkouší přechodné Azure a autentizační selhání s rostoucím zpožděním. Pokud se po opětovném pokusu nepodaří vyřešit vybrané odběry, zastaví se a nahlásí chybu místo toho, aby považoval rozsah za prázdný.

Ve výchozím nastavení zůstává vygenerovaná pracovní složka i po dokončení skriptu. Chcete-li to po spuštění odstranit, zadejte -cleanDownloads $true.

Skript vytiskne shrnutí podle typu zdroje a uvádí příčinu každého neúspěšného nebo přeskočeného zdroje. Když skript najde odpovídající zdroje, také vytvoří sestavu ModifiedResources_<timestamp>.csv se sloupci UpdateResult a UpdateError.

Následující parametry určují rozsah a provedení skriptu:

Parameter Akceptovaná hodnota nebo výchozí hodnota Purpose
-Target Arc, Azure, nebo Both (výchozí) Vybere prostředky SQL Serveru s podporou Azure Arc, prostředky Azure SQL včetně SQL Serveru na virtuálních počítačích Azure, nebo obě skupiny.
-RunMode Single (výchozí) nebo Scheduled Spustí přechod jednou nebo nakonfiguruje denní runbooky Azure Automation.
-TargetLicenseType PAYG Vybere model licence pay-as-you-go jako cílový licenční model pro postupy uvedené v tomto článku.
-targetSubscription ID předplatného; všechna dostupná předplatná v tenantu ve výchozím nastavení Omezuje přechod na jedno předplatné.
-targetResourceGroup Název skupiny zdrojů; všechny skupiny zdrojů ve výchozím nastavení Omezuje přechod na jednu skupinu zdrojů.
-TenantId Tenant ID; aktuální výchozí kontext Az PowerShellu Vybere tenant Microsoft Entra.
-ReportOnly Switch; ve výchozím nastavení vypnutý Vypíše vyhovující zdroje bez jejich změny.
-Force Switch; ve výchozím nastavení vypnutý Přeskočí instalaci chybějících modulů a výzvy k potvrzení účtu/tenanta. Vyžaduje se to u neobsluzených výprav, které vyžadují tato potvrzení.
-WaitForCompletion Switch; ve výchozím nastavení vypnutý Čeká, až se odevzdané změny dostanou do terminálního stavu, jakmile jsou podpořeny.
-UsePcoreLicense No (výchozí) nebo Yes Řídí licencování SQL Serveru podle fyzických jader s podporou Azure Arc.
-AutomationAccResourceGroupName Vyžadováno s -RunMode Scheduled Vybere skupinu zdrojů pro automatizační účet.
-AutomationAccountName aaccAzureArcSQLLicenseType ve výchozím nastavení Nastaví název účtu Automation.
-Location Vyžadováno s -RunMode Scheduled Vybere Azure region pro automatizační účet a skupinu zdrojů.
-cleanDownloads $false (výchozí) nebo $true Po dokončení skriptu odstraní vygenerovanou pracovní složku.

Výchozí chování při provádění závisí na typu zdroje:

Resource Výchozí chování S -WaitForCompletion
Azure SQL Database, elastické fondy, Azure SQL Managed Instance a fondy instancí Spustí asynchronní úlohu prostředí PowerShell s -AsJob a hlásí RequestSubmitted Čekání a zprávy Updated
SQL Server aktivován pomocí Azure Arc Odešle asynchronní aktualizaci rozšíření a nahlásí RequestSubmitted Dotazuje rozšíření a hlásí Succeeded, Failed, nebo TimedOut
SQL Server na virtuálních počítačích Azure Čekání a zprávy Updated Stejné chování

Zobrazit náhled přechodu na model průběžných plateb

Skript manage-payg-transition.ps1 poskytuje jeden vstupní bod pro Azure SQL a SQL Server, který je povolen pomocí Azure Arc Resources.

Pomocí PowerShell skriptu můžete nastavit jedno předplatné pro skenování. Pokud nespecifikujete předplatné, skript prohledá všechna odběry, ke kterým má vaše role přístup.

  1. Stáhněte si skript.

    $scriptUri = "https://raw.githubusercontent.com/microsoft/sql-server-samples/master/samples/manage/manage-payg-transition/manage-payg-transition.ps1"
    Invoke-WebRequest -Uri $scriptUri -OutFile ".\manage-payg-transition.ps1"
    
  2. Přihlaste se do tenantu, který obsahuje zdroje.

     Connect-AzAccount -TenantId "<tenant-id>"
    
  3. Spustit náhled jen pro čtení pro jedno předplatné. Specifikujte -TenantId i tehdy, když už máte Azure kontext, aby skript nepoužíval špatný tenant:

    .\manage-payg-transition.ps1 `
        -Target Both `
        -TenantId "<tenant-id>" `
        -targetSubscription "<subscription-id>" `
        -TargetLicenseType PAYG `
        -ReportOnly
    
  4. Pokud skript najde odpovídající zdroje, otevřete nejnovější ModifiedResources_<timestamp>.csv zprávu. Potvrďte, že by se měl každý uvedený zdroj změnit:

    $report = Get-ChildItem -Filter "ModifiedResources_*.csv" |
        Sort-Object LastWriteTime -Descending |
        Select-Object -First 1
    
    Import-Csv $report.FullName | Format-Table
    

Zdroje, které již používají placené licencování, se ve zprávě neobjevují. Pokud skript nenajde žádné odpovídající zdroje, nevytvoří CSV soubor. Pro omezení rozsahu uveďte -targetResourceGroup. Nastavte -Target na Azure, aby bylo možné zpracovávat prostředky Azure SQL, včetně SQL Serveru na virtuálních počítačích Azure. Nastavte ho tak, aby Arc zpracovával pouze SQL Server povolený pomocí Azure Arc resources.

Spusť jednorázový přechod s platbou podle použití pomocí PowerShellu

Přechod na platbu podle použití spusťte až poté, co potvrdíte cílový rozsah a schválíte všechny zdroje v náhledové zprávě.

  1. Odstraňte -ReportOnly, a přidejte -WaitForCompletion pro čekání na potvrzené výsledky, pokud je poskytovatel zdrojů podporuje:

    .\manage-payg-transition.ps1 `
        -Target Both `
        -TenantId "<tenant-id>" `
        -targetSubscription "<subscription-id>" `
        -TargetLicenseType PAYG `
        -WaitForCompletion
    
  2. Prohlédněte si vygenerovanou CSV zprávu. Prověřte každý Failed výsledek nebo TimedOut a potvrďte stav zdroje pro každou zadanou změnu.

Hodnota PAYG stanovuje model licence typu pay-as-you-go jako cílový licenční model.

Pokud vynecháte -WaitForCompletion, asynchronní změny mají UpdateResultRequestSubmitted. Tento výsledek nepotvrzuje, že změna typu licence byla dokončena. Aktualizace SQL Serveru ve virtuálním počítači Azure vždy čekají a po úspěšné aktualizaci hlásí Updated.

Naplánujte opakující se přechody typu pay-as-you-go pomocí PowerShellu

Plánovaný režim vytváří nebo aktualizuje jeden Azure Automation runbook pro každý vybraný cíl, propojí každý runbook s denním rozvrhem a okamžitě spustí jednorázovou úlohu. Zadejte skupinu prostředků pro účet Automation a oblast Azure. Výchozí název automatizačního účtu je aaccAzureArcSQLLicenseType. Plánovaný režim využívá spravovanou identitu automatizačního účtu.

  1. Naplánujte přechod pro Azure SQL a SQL Server povolený pomocí Azure Arc resources v jednom předplatném:

    .\manage-payg-transition.ps1 `
        -Target Both `
        -RunMode Scheduled `
        -TenantId "<tenant-id>" `
        -targetSubscription "<subscription-id>" `
        -TargetLicenseType PAYG `
        -AutomationAccResourceGroupName "<automation-resource-group>" `
        -AutomationAccountName "<automation-account>" `
        -Location "<azure-region>"
    
  2. V účtu Automation ověřte, že jsou runbooky publikované, propojené s denním rozvrhem a schopné spustit úkol s vybranými parametry.

Pokud cíl Azure zahrnuje fondy SQL Managed Instance, přiřaďte spravované identitě účtu Automation roli Contributor nebo vlastní roli s Microsoft.Sql/instancePools/read a Microsoft.Sql/instancePools/write. Plánované nastavení nepřiřazuje vestavěnou roli, která by tato oprávnění udělovala.

Vynucujte průběžné licencování pomocí Azure Policy

Použijte vzor Azure Policy specifickou pro zdroj k vynucení licencování typu pay-as-you-go a odstranění posuvných konfigurací. Každý vzorek obsahuje definici politiky, skript pro nasazení a skript pro nápravu.

Warning

Přiřazení politiky může změnit každý odpovídající zdroj ve svém rozsahu. Začněte s úzce zaměřeným testovacím předplatným a vyberte pouze aktuální typy licencí, které chcete nahradit.

Následující tabulka propojuje balíček politik a skript nasazení pro každý zdroj:

Resource Balíček politik Skript nasazení
SQL Server aktivován pomocí Azure Arc Kompatibilita typů licencí SQL Server s podporou Arc deployment.ps1
SQL Server na virtuálních počítačích Azure Dodržování předpisů pro typ licence SQL Serveru na virtuálních počítačích Azure deployment.ps1
Azure SQL Managed Instance Soulad typu licence SQL Managed Instance deployment.ps1
Azure SQL Database Soulad typu licence Azure SQL Database deployment.ps1

Použijte hodnoty a role pro vybraný typ zdroje:

Resource Cílová hodnota průběžných plateb Zdrojové hodnoty, které můžete přepsat Hlavní povinná role Důležité omezení
SQL Server aktivován pomocí Azure Arc PAYG Paid; Definice portálu také podporuje LicenseOnly Azure Extension for SQL Server Deployment Přiřazení použije jeden cíl pro všechny odpovídající hostitele a nerozlišuje edice. Rozsah smíšených pozůstalostí je rozdělen zvlášť.
SQL Server na virtuálních počítačích Azure PAYG AHUB, DR Přispěvatel pro virtuální počítač Cílová skupina musí splňovat podmínky licence Zvýhodněné hybridní využití Azure nebo pasivní vysoké dostupnosti či obnovy po havárii (HA/DR).
Azure SQL Managed Instance LicenseIncluded BasePrice, HybridFailoverRights SQL Managed Instance Contributor HybridFailoverRights nastaví licenseType na hybridSecondaryUsage a BasePrice na Passive.
Azure SQL Database LicenseIncluded BasePrice Přispěvatel databáze SQL Zásada vylučuje master a databáze Basic. Azure SQL Database podporuje změny typu licence pouze pro databáze vCore ve zřízeném modelu, proto z přiřazení vylučte nebo vyjměte ostatní databáze založené na databázových transakčních jednotkách (DTU) a bezserverové databáze.

Každý úkol také potřebuje přispěvatele pro čtenáře a politiku zdrojů. Nasazovací skripty udělují požadované role, když má přihlášená identita oprávnění k vytváření přiřazení rolí. Použijte -GrantMissingPermissions s remediačním skriptem pro kontrolu a přidání chybějících rolí.

SQL VM, SQL Managed Instance a SQL Database skripty pro nasazení vyzývají k potvrzení, když cílová hodnota vyžaduje licenční ověření. Používejte -SkipLicenseConfirmation pouze v automatizovaném potrubí, kde provozovatel již potvrdil způsobilost a přijímá odpovědnost za dodržování předpisů.

Pro SQL Server s podporou Arc zásada PAYG také nastavuje souhlas s opakovaným účtováním. Souhlas zůstává u rozšíření, pokud pozdější přiřazení změní typ licence tak, že už není PAYG.

Balíčky politik používají sdílený postup nasazení:

  1. Stáhněte si složky policy a scripts balíčku podle pokynů v souboru README.

  2. Přihlaste se k tenantu, který obsahuje rozsah přiřazení:

    Connect-AzAccount -TenantId "<tenant-id>"
    
  3. Ze stažené složky balíků nasadíte definici a přiřazení. Použijte cílovou hodnotu pro průběžné platby pro váš typ prostředku z předchozí tabulky. Následující příklad přiřazuje politiku v rozsahu předplatného:

    .\scripts\deployment.ps1 `
        -SubscriptionId "<subscription-id>" `
        -TargetLicenseType "<pay-as-you-go-value>"
    

    Pokud vynecháte -SubscriptionId, skript používá rozsah skupiny správců. Před spustením nasazení si zkontrolujte výchozí nastavení balíčku.

  4. Ověřte, že přiřazení politiky má systémově přiřazenou spravovanou identitu a požadované role v rozsahu přiřazení.

  5. Začněte sanaci stávajících nevyhovujících zdrojů:

    .\scripts\start-remediation.ps1 `
        -SubscriptionId "<subscription-id>" `
           -TargetLicenseType "<pay-as-you-go-value>" `
        -GrantMissingPermissions
    
  6. V Azure Policy si prohlédněte výsledky dodržování předpisů a úlohu nápravy přiřazení. Pak potvrďte typ licence na sanovaných zdrojích.

Ověřte přechod na princip platby podle použití

Zpráva CSV obsahuje pro každý vybraný zdroj položky UpdateResult a UpdateError. Společné výsledky interpretujte následovně:

Result Význam Další akce
ReportOnly Skript identifikoval kvalifikovaný zdroj v režimu pouze pro čtení a nepodal žádnou změnu. Před zahájením přechodu si ověřte, že zdroj by měl používat placené licence podle využití.
RequestSubmitted Azure přijal asynchronní požadavek. Počkejte, až operace se zdrojem dokončí, a pak ověřte stav zdroje.
Updated nebo Succeeded Skript zaznamenal úspěšný terminální výsledek. Potvrďte typ licence na zdroji.
Failed Služba aktualizaci odmítla nebo vrátila neúspěšný koncový stav. Zkontrolujte UpdateError, opravte chybu a znovu spusťte náhled.
TimedOut Rozšíření Arc nedosáhlo konečného stavu před dosažením limitu počtu kontrol. Zkontrolujte stav rozšíření. Aktualizace může být dokončena poté, co skript přestane čekat.
SkippedNotRunning SQL Server VM neběží, takže skript ho neaktualizoval. Spusť VM, když je to vhodné, a znovu spusťte přechod.

Pro potvrzení aktuálního typu licence a stavu provisioningu pro SQL Server povolený Azure Arc spusť následující dotaz v Azure Resource Graph:

Search-AzGraph -Query @"
resources
| where type =~ 'microsoft.hybridcompute/machines/extensions'
| where properties.type in~ ('WindowsAgent.SqlServer', 'LinuxAgent.SqlServer')
| project name = split(id, '/')[8],
          licenseType = properties.settings.LicenseType,
          state = properties.provisioningState
"@

Po dokončení odeslaných operací znovu spusťte stejný rozsah pomocí -ReportOnly:

.\manage-payg-transition.ps1 `
    -Target Both `
    -TenantId "<tenant-id>" `
    -targetSubscription "<subscription-id>" `
    -TargetLicenseType PAYG `
    -ReportOnly

Skript vylučuje prostředky, které už používají licencování s průběžnými platbami. Zcela synchronizovaný obor neobsahuje žádné prostředky k aktualizaci. Prozkoumejte jakýkoli zdroj, který se ještě objeví, než považujete přechod za dokončený.

Zkontrolujte omezení a opatření pro fakturaci

  • SQL Server na Azure VM musí běžet. Skript přeskočí zastavené nebo přerozdělené VM a nespustí je.
  • Skript vylučuje SQL Server na Azure VM, které používají DR tento typ licence, takže nepřepisuje nastavení licence pro pasivní repliku HA/DR.
  • Skript nezobrazuje možnost opakovaného souhlasu s fakturací u svého vloženého Arc handleru. Pro prostředky Arc spravované prostřednictvím CSP, které vyžadují souhlas s opakovaným účtováním, použijte zásadu dodržování předpisů pro typ licence serveru SQL s podporou Arc, která při použití nakonfiguruje souhlas, pokud se použije PAYG.
  • Výchozí asynchronní běh upřednostňuje škálování před okamžitým potvrzením. Použijte -WaitForCompletion , když potřebujete skript k sledování výsledků terminálu před jeho ukončením.
  • Aktualizace SQL Server na Azure VM vždy čekají na dokončení operace, bez ohledu na to, zda specifikujete -WaitForCompletion.

Řešení poruch automatizace

Použijte generovanou zprávu a stav operace Azure k identifikaci zdrojů, které nebyly aktualizovány.

  • Pokud je zpráva prázdná, potvrďte tenant, odběr a skupinu zdrojů. Prázdná zpráva se očekává, když všechny zdroje v rozsahu již používají placené licence.
  • Pokud je přeskočen zdroj podporující Arc, obnovte konektivitu pro agenta Azure Connected Machine, potvrďte, že stav provisioning pro rozšíření Azure pro SQL Server je , Succeededa poté znovu spusťte náhled.
  • Pokud je UpdateResultRequestSubmitted, nepovažujte požadavek za vyřízený. Zkontrolujte stav zdroje nebo znovu spusťte náhled po dokončení operace Azure.
  • Pokud selže operace Azure SQL nebo SQL Server na Azure VM, zkontrolujte nahlášenou chybu, potvrďte dostupnost požadovaných modulů Az PowerShell a ověřte, že váš účet je autorizován pro cílové předplatné.
  • Pokud se bezobslužné spuštění zastaví při instalaci nebo potvrzení účtu, ověřte tenant a účet a potom po schválení těchto akcí spusťte proces znovu pomocí -Force.
  • Pokud plánovaný režim selže, ověřte, že spravovaná identita automatizačního účtu obsahuje role uvedené ve zdrojovém vzorku.
  • Pokud náprava zásady vrátí PolicyAuthorizationFailed, ověřte, že identita přiřazení má v rozsahu přiřazení roli specifickou pro produkt, Čtenář a Přispěvatel zásad prostředků. Znovu spusťte skript nasazení nebo znovu spusťte skript nápravy pomocí -GrantMissingPermissions, jakmile přihlášená identita bude moct vytvářet přiřazení rolí.

Pro kompletní zdroj viz manage-payg-transition.ps1.

Oprávnění podle typu zdroje

Oprávnění pro skript PowerShell

Role přispěvatele je nadmnožinou oprávnění požadovaných skriptem v tomto článku a je nejjednodušší možností. Pro přístup s nejmenším oprávněním přiřaďte role požadované pro typy zdrojů v rozsahu:

Typ zdroje Role nebo požadovaná oprávnění
SQL Server na virtuálních počítačích Azure Přispěvatel pro virtuální počítač
Azure SQL Managed Instance SQL Managed Instance Contributor
Azure SQL Database Přispěvatel databáze SQL
Azure SQL Database – elastické fondy Přispěvatel SQL Serveru
Azure SQL Managed Instance pools Přispěvatel, nebo vlastní role s Microsoft.Sql/instancePools/read a Microsoft.Sql/instancePools/write
SQL Server aktivován pomocí Azure Arc Správce zdrojů pro připojené stroje Azure
Čtení a výčet předplatných a prostředků Čtenář, pokud jiná přidělená role neposkytuje požadovaná oprávnění ke čtení

Oprávnění pro Azure Policy

Identita, pod kterou běží deployment.ps1, potřebuje oprávnění k vytváření definic zásad ve vybrané skupině pro správu a k vytváření přiřazení zásad, úloh pro nápravu, spravovaných identit a přiřazení rolí v rámci rozsahu přiřazení. Pokud nemůže vytvářet přiřazení rolí, přiřaďte požadované role spravované identitě přiřazení politiky před zahájením nápravy a spusťte deployment.ps1 s -SkipManagedIdentityRoleAssignment.

Ve výchozím nastavení vytváří deployment.ps1 systémově přiřazenou spravovanou identitu pro přiřazení politiky a přiděluje tři role v rozsahu přiřazení. Role specifická pro produkt závisí na vybraném vzorku politiky:

Ukázka politiky Role specifická pro produkt
SQL Server aktivován pomocí Azure Arc Azure Extension for SQL Server Deployment
SQL Server na virtuálních počítačích Azure Přispěvatel pro virtuální počítač
Azure SQL Managed Instance SQL Managed Instance Contributor
Azure SQL Database Přispěvatel databáze SQL

Každá identita přiřazení zásady také vyžaduje Reader a Resource Policy Contributor. Skript nasazení přeskočí automatické přiřazení role pouze tehdy, když zadáte parametr -SkipManagedIdentityRoleAssignment.

Před zahájením sanace zkontrolujte start-remediation.ps1 identitu přiřazení politiky pro všechny tři požadované role. Pokud role chybí, scénář se zastaví. Role přiřaďte ručně, nebo znovu spusťte remediační skript z -GrantMissingPermissions identity, která může vytvářet přiřazení rolí v rozsahu přiřazení.