Udostępnij za pośrednictwem


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

AzureSqlDatabaseModel

AuditActionGroups[]

String[]

Guid

Nullable<T>[[System.UInt32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

DatabaseAuditModel

Dane wyjściowe

Boolean