Simptomi
Instanca SQL Server može prestati reagirati ako pokrenete sigurnosno kopiranje ili vraćanje baze podataka radi Azure Storage ili ako koristite upravljanje proširenim ključevima (EKM) uz Azure Sef za ključeve (AKV) pomoću vjerodajnica na razini poslužitelja sa upravljanim identitetima. Iako ova operacija nije podržana za SQL Server 2022, trenutna T-SQL sintaksa to omogućuje.
Rješenje
Taj je problem riješen u sljedećem kumulativnom ažuriranju za SQL Server na virtualnim računalima (VM) Azure:
Kumulativno ažuriranje 17 za SQL Server 2022
U SQL Server 2022 CU17 i novijim verzijama, Microsoft Entra upravlja provjerom autentičnosti identiteta s SQL Server na Azure Windows samo VM-ovima podržava vjerodajnicu na razini poslužitelja za sigurnosne kopije baze podataka i operacije vraćanja na Azure Storage i za EKM s AKV-om.
Da biste omogućili podršku za upravljani identitet za sigurnosne kopije ili operacije vraćanja baze podataka za SQL Server na virtualnim računalima sa sustavom Azure Windows, potrebno je poduzeti sljedeće korake:
- Dodijelite primarni upravljani identitet za SQL Server na virtualnim računalima sa sustavom Azure Windows.
- Stvorite ili koristite Azure Storage sa spremnikom blobova.
- Dodijelite uloge kontrole pristupa na temelju uloga (RBAC) za primarni upravljani identitet za pristup spremištu servisa Azure Storage.
- Pokrenite naredbu
CREATE CREDENTIALT-SQL s uvjetomWITH IDENTITY = 'Managed Identity'pomoću URL-a spremišta Azure Storage kao naziva vjerodajnice. - Pokrenite naredbu
BACKUP DATABASET-SQL iliRESTORE DATABASEupotrijebite URL spremišta Azure Storage.
-- Create credential with managed identity and credential name set to
-- URL= https://<storageaccountname>.blob.core.windows.net/<container>
CREATE CREDENTIAL [https://<storageaccountname>.blob.core.windows.net/<container>]
WITH IDENTITY = 'Managed Identity'
-- Backup the database mydb to URL
BACKUP DATABASE mydb
TO URL = 'https://<storageaccount>.blob.core.windows.net/<container>/mydb.bak'
-- Restore the database mydb1 from URL
RESTORE DATABASE mydb1
FROM URL ='https://<storageaccount>.blob.core.windows.net/<container>/mydb.bak'
Dodatne informacije potražite u članku Sigurnosno kopiranje i vraćanje URL-a pomoću upravljanih identiteta.
Da biste omogućili podršku za upravljani identitet za EKM s AKV-om za SQL Server na virtualnim računalima sa sustavom Azure Windows, potrebno je poduzeti sljedeće korake:
- Dodijelite primarni upravljani identitet za SQL Server na virtualnim računalima sa sustavom Azure Windows.
- Stvorite ili koristite sef za ključeve.
- Dodijelite uloge kontrole pristupa na temelju uloga (RBAC) za primarni upravljani identitet za pristup AKV-u.
- Preuzmite najnoviji SQL Server Connector za Microsoft Azure Sef za ključeve (1.0.5.0 (studeni 2024.) ili novije verzije). Za podršku upravljanog identiteta potrebna je najnovija verzija poveznika SQL Server Connector.
- Pokrenite naredbu
CREATE CREDENTIALT-SQL s uvjetomWITH IDENTITY = 'Managed Identity'koristeći AKV stazu kao naziv vjerodajnice.
-- Create credential with managed identity and the credential name for the AKV called 'contoso'
-- with the AKV path = 'contoso.vault.azure.net'
CREATE CREDENTIAL [contoso.vault.azure.net]
WITH IDENTITY = 'Managed Identity'
FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM_Prov
- Pokrenite ostatak T-SQL instalacije EKM-a uz AKV.
Dodatne informacije potražite u članku Podrška za upravljane identitete za prošireno upravljanje ključevima pomoću Azure Sef za ključeve.
Napomena
- Prati zastavicu 4675, koja je po zadanom onemogućena, omogućuje otklanjanje poteškoća s vjerodajnicama na razini poslužitelja i može se koristiti za potvrđivanje primarnog upravljanog identiteta dodijeljenog instanci sustava SQL Server.
- Podrška za upravljane identitete ne uvodi nikakvu T-SQL sintaksu ni promjene prikaza sustava jer ta funkcija već postoji za Azure SQL Managed Instance.
- Upravljani identiteti nisu podržani za vjerodajnice na razini poslužitelja u lokalnom sustavu SQL Server. Kada se slučajno upotrijebi sa sigurnosnim kopiranjem ili vraćanjem u pohranu Azure Storage ili EKM s AKV-om, prikazuje vam se poruka o pogrešci "Primarni upravljani identitet nije postavljen za poslužitelj..." te se upućuju na javnu dokumentaciju.
O kumulativnim ažuriranjima za SQL Server
Svako novo kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sigurnosne popravke koji su bili u prethodnoj međuverziji. Preporučujemo da instalirate najnoviju međuverziju za svoju verziju sustava SQL Server:
Najnovije kumulativno ažuriranje za SQL Server 2022
Status
Microsoft je potvrdio da je to problem u Microsoftovim proizvodima koji su navedeni u odjeljku „Odnosi se na“.
Reference
- Konfiguriranje upravljanih identiteta na virtualnim računalima (VM) na platformi Azure
- Omogućivanje provjere autentičnosti servisa Microsoft Entra za SQL Server na virtualnim računalima Azure
- CREATE CREDENTIAL (Transact-SQL)
- Sigurnosno kopiranje i vraćanje URL-a pomoću upravljanih identiteta
- Podrška za upravljane identitete za prošireno upravljanje ključevima uz Azure Sef za ključeve
- DBCC TRACEON – praćenje zastavica (Transact-SQL)