Set-AzSqlDatabaseAudit
Zmienia ustawienia inspekcji dla usługi Azure SQL Database.
Składnia
Set-AzSqlDatabaseAudit
[-AuditActionGroup <AuditActionGroups[]>]
[-AuditAction <String[]>]
[-PredicateExpression <String>]
[-BlobStorageTargetState <String>]
[-StorageAccountResourceId <String>]
[-StorageKeyType <String>]
[-RetentionInDays <UInt32>]
[-EventHubTargetState <String>]
[-EventHubName <String>]
[-EventHubAuthorizationRuleResourceId <String>]
[-LogAnalyticsTargetState <String>]
[-WorkspaceResourceId <String>]
[-PassThru]
[-UseIdentity <String>]
[-ResourceGroupName] <String>
[-ServerName] <String>
[-DatabaseName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-AzSqlDatabaseAudit
[-AuditActionGroup <AuditActionGroups[]>]
[-AuditAction <String[]>]
[-PredicateExpression <String>]
[-BlobStorageTargetState <String>]
[-StorageAccountResourceId <String>]
[-StorageKeyType <String>]
[-RetentionInDays <UInt32>]
[-EventHubTargetState <String>]
[-EventHubName <String>]
[-EventHubAuthorizationRuleResourceId <String>]
[-LogAnalyticsTargetState <String>]
[-WorkspaceResourceId <String>]
[-PassThru]
[-UseIdentity <String>]
-DatabaseObject <AzureSqlDatabaseModel>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie cmdlet Set-AzSqlDatabaseAudit zmienia ustawienia inspekcji usługi Azure SQL Database. Aby użyć polecenia cmdlet, użyj parametrów ResourceGroupName, ServerNamei DatabaseName parametrów, aby zidentyfikować bazę danych. Gdy magazyn obiektów blob jest miejscem docelowym dzienników inspekcji, określ parametr StorageAccountResourceId w celu określenia konta magazynu dla dzienników inspekcji i parametru StorageKeyType w celu zdefiniowania kluczy magazynu. W przypadku korzystania z magazynu obiektów blob jako miejsca docelowego można również zdefiniować przechowywanie dzienników inspekcji, ustawiając wartość parametru RetentionInDays w celu zdefiniowania okresu dla dzienników inspekcji.
Przykłady
Przykład 1. Włączanie zasad inspekcji magazynu obiektów blob w usłudze Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage"
Przykład 2. Wyłączanie zasad inspekcji magazynu obiektów blob w usłudze Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -BlobStorageTargetState Disabled
Przykład 3. Włączanie zasad inspekcji magazynu obiektów blob usługi Azure SQL Database z filtrowaniem przy użyciu predykatu T-SQL
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -PredicateExpression "schema_name <> 'sys''" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage"
Przykład 4. Usuwanie filtrowania z zasad inspekcji usługi Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -PredicateExpression ""
Przykład 5. Włączanie zasad inspekcji centrum zdarzeń usługi Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -EventHubTargetState Enabled -EventHubName "EventHubName" -EventHubAuthorizationRuleResourceId "EventHubAuthorizationRuleResourceId"
Przykład 6. Wyłączanie zasad inspekcji centrum zdarzeń usługi Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -EventHubTargetState Disabled
Przykład 7. Włączanie zasad inspekcji usługi Log Analytics w usłudze Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -LogAnalyticsTargetState Enabled -WorkspaceResourceId "/subscriptions/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2"
Przykład 8. Wyłączanie zasad inspekcji usługi Log Analytics w usłudze Azure SQL Database
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -LogAnalyticsTargetState Disabled
Przykład 9. Wyłączanie za pośrednictwem potoku zasad inspekcji analizy dzienników usługi Azure SQL Database
Get-AzSqlDatabase -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" | Set-AzSqlDatabaseAudit -LogAnalyticsTargetState Disabled
Przykład 10: Wyłączanie wysyłania rekordów inspekcji usługi Azure SQL Database do magazynu obiektów blob i włączanie wysyłania ich do analizy dzienników.
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -LogAnalyticsTargetState Enabled -WorkspaceResourceId "/subscriptions/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" -BlobStorageTargetState Disabled
Przykład 11: Włączanie wysyłania rekordów inspekcji usługi Azure SQL Database do magazynu obiektów blob, centrum zdarzeń i analizy dzienników.
Set-AzSqlDatabaseAudit -ResourceGroupName "ResourceGroup01" -ServerName "Server01" -DatabaseName "Database01" -BlobStorageTargetState Enabled -StorageAccountResourceId "/subscriptions/7fe3301d-31d3-4668-af5e-211a890ba6e3/resourceGroups/resourcegroup01/providers/Microsoft.Storage/storageAccounts/mystorage" -EventHubTargetState Enabled -EventHubName "EventHubName" -EventHubAuthorizationRuleResourceId "EventHubAuthorizationRuleResourceId" -LogAnalyticsTargetState Enabled -WorkspaceResourceId "/subscriptions/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2"
Parametry
-AuditAction
Zestaw akcji inspekcji.
Obsługiwane akcje inspekcji to:
WYBRAĆ
AKTUALIZACJA
WSTAWIAĆ
USUNĄĆ
WYKONAĆ
OTRZYMAĆ
ODWOŁANIA
Ogólny formularz służący do definiowania akcji do inspekcji to: [action] ON [object] BY [principal] Uwaga: [object] w powyższym formacie może odwoływać się do obiektu, takiego jak tabela, widok lub procedura składowana albo cała baza danych lub schemat. W tych ostatnich przypadkach używane są odpowiednio formularze DATABASE::[dbname] i SCHEMA::[schemaname].
Na przykład:
Wybierz pozycję dbo.myTable według publicznej
WYBIERZ pozycję DATABASE::myDatabase według publicznej bazy danych
WYBIERZ w schemacie::mySchema według opinii publicznej
Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-AuditActionGroup
Zalecany zestaw grup akcji do użycia jest następującą kombinacją — spowoduje to inspekcję wszystkich zapytań i procedur składowanych wykonywanych względem bazy danych, a także pomyślnych i zakończonych niepowodzeniem logowań:
"BATCH_COMPLETED_GROUP",
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP"
Ta powyżej kombinacja jest również zestawem skonfigurowanym domyślnie. Grupy te obejmują wszystkie instrukcje SQL i procedury składowane wykonywane względem bazy danych i nie powinny być używane w połączeniu z innymi grupami, ponieważ spowoduje to zduplikowanie dzienników inspekcji.
Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups.
Typ: | AuditActionGroups[] |
Dopuszczalne wartości: | BATCH_STARTED_GROUP, BATCH_COMPLETED_GROUP, APPLICATION_ROLE_CHANGE_PASSWORD_GROUP, BACKUP_RESTORE_GROUP, DATABASE_LOGOUT_GROUP, DATABASE_OBJECT_CHANGE_GROUP, DATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP, DATABASE_OBJECT_PERMISSION_CHANGE_GROUP, DATABASE_OPERATION_GROUP, DATABASE_PERMISSION_CHANGE_GROUP, DATABASE_PRINCIPAL_CHANGE_GROUP, DATABASE_PRINCIPAL_IMPERSONATION_GROUP, DATABASE_ROLE_MEMBER_CHANGE_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP, SCHEMA_OBJECT_ACCESS_GROUP, SCHEMA_OBJECT_CHANGE_GROUP, SCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP, SCHEMA_OBJECT_PERMISSION_CHANGE_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, USER_CHANGE_PASSWORD_GROUP, LEDGER_OPERATION_GROUP, DBCC_GROUP, DATABASE_OWNERSHIP_CHANGE_GROUP, DATABASE_CHANGE_GROUP |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-BlobStorageTargetState
Wskazuje, czy magazyn obiektów blob jest miejscem docelowym rekordów inspekcji.
Typ: | String |
Dopuszczalne wartości: | Enabled, Disabled |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DatabaseName
Nazwa bazy danych SQL.
Typ: | String |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DatabaseObject
Obiekt bazy danych do zarządzania zasadami inspekcji.
Typ: | AzureSqlDatabaseModel |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-DefaultProfile
Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.
Typ: | IAzureContextContainer |
Aliasy: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-EventHubAuthorizationRuleResourceId
Identyfikator zasobu reguły autoryzacji centrum zdarzeń
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-EventHubName
Nazwa centrum zdarzeń. Jeśli żadna z nich nie zostanie określona podczas podawania identyfikatora EventHubAuthorizationRuleResourceId, zostanie wybrane domyślne centrum zdarzeń.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-EventHubTargetState
Wskazuje, czy centrum zdarzeń jest miejscem docelowym rekordów inspekcji.
Typ: | String |
Dopuszczalne wartości: | Enabled, Disabled |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-LogAnalyticsTargetState
Wskazuje, czy usługa Log Analytics jest miejscem docelowym rekordów inspekcji.
Typ: | String |
Dopuszczalne wartości: | Enabled, Disabled |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PassThru
Określa, czy dane wyjściowe zasad inspekcji na końcu wykonywania polecenia cmdlet
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PredicateExpression
Predykat języka T-SQL (klauzula WHERE) używany do filtrowania dzienników inspekcji.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ResourceGroupName
Nazwa grupy zasobów.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RetentionInDays
Liczba dni przechowywania dzienników inspekcji. Dotyczy tylko konta magazynu jako miejsca docelowego.
Typ: | Nullable<T>[UInt32] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ServerName
Nazwa serwera SQL.
Typ: | String |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-StorageAccountResourceId
Identyfikator zasobu konta magazynu
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-StorageKeyType
Określa, które klucze dostępu do magazynu mają być używane.
Typ: | String |
Dopuszczalne wartości: | Primary, Secondary |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-UseIdentity
Wskazuje, czy należy używać tożsamości zarządzanej, czy nie. Jest to wymagane, gdy chcesz użyć tożsamości zarządzanej, gdy magazyn docelowy nie znajduje się za zaporą.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WorkspaceResourceId
Identyfikator obszaru roboczego (identyfikator zasobu obszaru roboczego usługi Log Analytics) dla obszaru roboczego usługi Log Analytics, do którego chcesz wysłać dzienniki inspekcji. Przykład: /subscriptions/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1e1e1/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
String[]
Nullable<T>[[System.UInt32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]