Zapisywanie inspekcji na koncie magazynu za siecią wirtualną i zaporą
Dotyczy: Azure SQL Database Azure Synapse Analytics
Inspekcja usług Azure SQL Database i Azure Synapse Analytics obsługuje zapisywanie zdarzeń bazy danych na koncie usługi Azure Storage za siecią wirtualną i zaporą.
W tym artykule opisano dwa sposoby konfigurowania usługi Azure SQL Database i konta usługi Azure Storage dla tej opcji. Pierwszy używa witryny Azure Portal, a drugi używa interfejsu REST.
Tło
Azure Virtual Network (VNet) to podstawowy blok konstrukcyjny dla sieci prywatnej na platformie Azure. Sieć wirtualna umożliwia korzystanie z wielu typów zasobów platformy Azure, takich jak maszyny wirtualne platformy Azure, bezpieczne komunikowanie się ze sobą, internetem i sieciami lokalnymi. Sieć wirtualna jest podobna do tradycyjnej sieci we własnym centrum danych, ale oferuje dodatkowe korzyści z infrastruktury platformy Azure, takie jak skalowanie, dostępność i izolacja.
Aby dowiedzieć się więcej na temat pojęć związanych z siecią wirtualną, najlepszych rozwiązań i wiele innych, zobacz Co to jest usługa Azure Virtual Network.
Aby dowiedzieć się więcej na temat tworzenia sieci wirtualnej, zobacz Szybki start: tworzenie sieci wirtualnej przy użyciu witryny Azure Portal.
Wymagania wstępne
W przypadku inspekcji zapisu na koncie magazynu za siecią wirtualną lub zaporą wymagane są następujące wymagania wstępne:
- Konto magazynu ogólnego przeznaczenia w wersji 2. Jeśli masz konto magazynu ogólnego przeznaczenia w wersji 1 lub blob, przeprowadź uaktualnienie do konta magazynu ogólnego przeznaczenia w wersji 2. Aby uzyskać więcej informacji, zobacz Typy kont magazynu.
- Magazyn w warstwie Premium z funkcją BlockBlobStorage jest obsługiwany
- Konto magazynu musi znajdować się w tej samej dzierżawie i w tej samej lokalizacji co serwer logiczny SQL (można go mieć w różnych subskrypcjach).
- Konto usługi Azure Storage wymaga polecenia
Allow trusted Microsoft services to access this storage account
. Ustaw tę opcję w zaporach konta magazynu i sieciach wirtualnych. - Musisz mieć
Microsoft.Authorization/roleAssignments/write
uprawnienia do wybranego konta magazynu. Aby uzyskać więcej informacji, zobacz Role wbudowane platformy Azure.
Uwaga
Jeśli inspekcja konta magazynu jest już włączona na serwerze/bazie danych, a jeśli docelowe konto magazynu zostanie przeniesione za zaporą, utracimy dostęp do zapisu na koncie magazynu i dzienniki inspekcji przestaną być do niego zapisywane. Aby wykonać inspekcję, musimy ponownie zapisać ustawienia inspekcji z portalu.
Konfigurowanie w witrynie Azure Portal
Połącz się z witryną Azure Portal przy użyciu subskrypcji. Przejdź do grupy zasobów i serwera.
Kliknij pozycję Inspekcja pod nagłówkiem Zabezpieczenia. Wybierz pozycję Włączone.
Wybierz pozycję Magazyn. Wybierz konto magazynu, na którym zostaną zapisane dzienniki. Konto magazynu musi być zgodne z wymaganiami wymienionymi w temacie Wymagania wstępne.
Otwieranie szczegółów magazynu
Uwaga
Jeśli wybrane konto magazynu znajduje się za siecią wirtualną, zostanie wyświetlony następujący komunikat:
You have selected a storage account that is behind a firewall or in a virtual network. Using this storage requires to enable 'Allow trusted Microsoft services to access this storage account' on the storage account and creates a server managed identity with 'storage blob data contributor' RBAC.
Jeśli ten komunikat nie jest widoczny, konto magazynu nie znajduje się za siecią wirtualną.
Wybierz liczbę dni okresu przechowywania. Następnie kliknij przycisk OK. Dzienniki starsze niż okres przechowywania są usuwane.
Wybierz pozycję Zapisz w ustawieniach inspekcji.
Pomyślnie skonfigurowano inspekcję zapisu na koncie magazynu za siecią wirtualną lub zaporą.
Konfigurowanie za pomocą poleceń REST
Alternatywą dla korzystania z witryny Azure Portal jest użycie poleceń REST w celu skonfigurowania inspekcji w celu zapisywania zdarzeń bazy danych na koncie magazynu za siecią wirtualną i zaporą.
Przykładowe skrypty w tej sekcji wymagają zaktualizowania skryptu przed ich uruchomieniem. Zastąp następujące wartości w skryptach:
Przykładowa wartość | Przykładowy opis |
---|---|
<subscriptionId> |
Identyfikator subskrypcji Azure |
<resource group> |
Grupa zasobów |
<logical SQL Server> |
Nazwa serwera |
<administrator login> |
Konto administratora |
<complex password> |
Złożone hasło dla konta administratora |
Aby skonfigurować inspekcję SQL w celu zapisywania zdarzeń na koncie magazynu za siecią wirtualną lub zaporą:
Zarejestruj serwer przy użyciu identyfikatora Entra firmy Microsoft (dawniej Azure Active Directory). Użyj programu PowerShell lub interfejsu API REST.
Program PowerShell
Connect-AzAccount Select-AzSubscription -SubscriptionId <subscriptionId> Set-AzSqlServer -ResourceGroupName <your resource group> -ServerName <azure server name> -AssignIdentity
Przykładowe żądanie
PUT https://management.azure.com/subscriptions/<subscription ID>/resourceGroups/<resource group>/providers/Microsoft.Sql/servers/<azure server name>?api-version=2015-05-01-preview
Treść żądania
{ "identity": { "type": "SystemAssigned", }, "properties": { "fullyQualifiedDomainName": "<azure server name>.database.windows.net", "administratorLogin": "<administrator login>", "administratorLoginPassword": "<complex password>", "version": "12.0", "state": "Ready" } }
Przypisz rolę Współautor danych obiektu blob usługi Storage do serwera hostujące bazę danych zarejestrowaną w usłudze Microsoft Entra ID w poprzednim kroku.
Aby uzyskać szczegółowe instrukcje, zobacz Przypisywanie ról platformy Azure przy użyciu witryny Azure Portal.
Uwaga
W tym kroku mogą wykonać tylko członkowie z uprawnieniami właściciela. W przypadku różnych ról wbudowanych platformy Azure zapoznaj się z wbudowanymi rolami platformy Azure.
Skonfiguruj zasady inspekcji obiektów blob serwera bez określania klucza storageAccountAccessKey:
Przykładowe żądanie
PUT https://management.azure.com/subscriptions/<subscription ID>/resourceGroups/<resource group>/providers/Microsoft.Sql/servers/<azure server name>/auditingSettings/default?api-version=2017-03-01-preview
Treść żądania
{ "properties": { "state": "Enabled", "storageEndpoint": "https://<storage account>.blob.core.windows.net" } }
Korzystanie z programu Azure PowerShell
- Tworzenie lub aktualizowanie zasad inspekcji bazy danych (Set-AzSqlDatabaseAudit)
- Tworzenie lub aktualizowanie zasad inspekcji serwera (Set-AzSqlServerAudit)
Korzystanie z szablonu usługi Azure Resource Manager
Inspekcję można skonfigurować w celu zapisywania zdarzeń bazy danych na koncie magazynu za siecią wirtualną i zaporą przy użyciu szablonu usługi Azure Resource Manager , jak pokazano w poniższym przykładzie:
Ważne
Aby użyć konta magazynu za siecią wirtualną i zaporą, należy ustawić parametr isStorageBehindVnet na true
Uwaga
Połączony przykład znajduje się w zewnętrznym repozytorium publicznym i jest udostępniany jako "bez gwarancji" i nie jest obsługiwany w ramach żadnego programu/usługi pomocy technicznej firmy Microsoft.