Database Blob Auditing Policies - Create Or Update
Vytvoří nebo aktualizuje zásady auditování objektů blob databáze.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/auditingSettings/default?api-version=2021-11-01
Parametry identifikátoru URI
Name | V | Vyžadováno | Typ | Description |
---|---|---|---|---|
blob
|
path | True |
Název zásady auditování objektů blob. |
|
database
|
path | True |
string |
Název databáze. |
resource
|
path | True |
string |
Název skupiny prostředků, která prostředek obsahuje. Tuto hodnotu můžete získat z rozhraní API Resource Manager Azure nebo z portálu. |
server
|
path | True |
string |
Název serveru. |
subscription
|
path | True |
string |
ID předplatného, které identifikuje předplatné Azure. |
api-version
|
query | True |
string |
Verze rozhraní API, která se má použít pro požadavek. |
Text požadavku
Name | Vyžadováno | Typ | Description |
---|---|---|---|
properties.state | True |
Určuje stav auditu. Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled. |
|
properties.auditActionsAndGroups |
string[] |
Určuje Actions-Groups a akce, které se mají auditovat. Doporučená sada skupin akcí, které se mají použít, je následující kombinace – tím se auditují všechny dotazy a uložené procedury spuštěné v databázi a také úspěšná a neúspěšná přihlášení: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP. Tato výše uvedená kombinace je také sada, která se ve výchozím nastavení konfiguruje při povolování auditování z Azure Portal. Podporované skupiny akcí, které se mají auditovat, jsou (poznámka: Zvolte jenom konkrétní skupiny, které pokrývají vaše potřeby auditování. Použití nepotřebných skupin může vést k velmi velkému množství záznamů auditu: 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 BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP Jedná se o skupiny, které pokrývají všechny příkazy SQL a uložené procedury spuštěné v databázi a neměly by se používat v kombinaci s jinými skupinami, protože výsledkem budou duplicitní protokoly auditu. Další informace najdete v tématu Skupiny akcí auditování na úrovni databáze. Pro zásady auditování databáze je také možné zadat konkrétní akce (všimněte si, že akce nelze zadat pro zásady auditování serveru). Podporované akce pro audit jsou: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCE. Obecný formulář pro definování akce, která se má auditovat, je: {action} ON {object} BY {principal} Všimněte si, že ve výše uvedeném formátu může odkazovat na objekt, jako je tabulka, zobrazení nebo uložená procedura, nebo celá databáze nebo schéma. V těchto případech se používají formuláře DATABASE::{db_name} a SCHEMA::{schema_name} v uvedeném pořadí. Příklad: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Další informace najdete v tématu Akce auditu na úrovni databáze. |
|
properties.isAzureMonitorTargetEnabled |
boolean |
Určuje, jestli se události auditu odesílají do služby Azure Monitor. Pokud chcete odesílat události do Služby Azure Monitor, zadejte State jako Enabled a IsAzureMonitorTargetEnabled jako true. Při použití rozhraní REST API ke konfiguraci auditování by se měla v databázi vytvořit také nastavení diagnostiky s kategorií diagnostických protokolů SQLSecurityAuditEvents. Všimněte si, že pro audit na úrovni serveru byste měli použít hlavní databázi jako {databaseName}. Formát identifikátoru URI nastavení diagnostiky: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview Další informace najdete v tématu Nastavení diagnostiky rozhraní REST API nebo Nastavení diagnostiky v PowerShellu. |
|
properties.isManagedIdentityInUse |
boolean |
Určuje, jestli se pro přístup k úložišti objektů blob používá spravovaná identita. |
|
properties.isStorageSecondaryKeyInUse |
boolean |
Určuje, jestli je hodnota storageAccountAccessKey sekundárním klíčem úložiště. |
|
properties.queueDelayMs |
integer |
Určuje dobu v milisekundách, která může uplynout před vynuceným zpracováním akcí auditu. Výchozí minimální hodnota je 1000 (1 sekunda). Maximum je 2 147 483 647. |
|
properties.retentionDays |
integer |
Určuje počet dnů, které se mají uchovávat v protokolech auditu v účtu úložiště. |
|
properties.storageAccountAccessKey |
string |
Určuje klíč identifikátoru účtu úložiště auditování. Pokud je stav Povoleno a je zadaný parametr storageEndpoint, nezadáte-li klíč storageAccountAccessKey, použije se pro přístup k úložišti spravovaná identita přiřazená systémem SQL Serveru. Předpoklady pro použití ověřování spravované identity:
|
|
properties.storageAccountSubscriptionId |
string |
Určuje ID předplatného úložiště objektů blob. |
|
properties.storageEndpoint |
string |
Určuje koncový bod úložiště objektů blob (např. https://MyAccount.blob.core.windows.net). Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled. |
Odpovědi
Name | Typ | Description |
---|---|---|
200 OK |
Zásady auditování objektů blob databáze se úspěšně nastavily. |
|
201 Created |
Zásady auditování objektů blob databáze se úspěšně vytvořily. |
|
Other Status Codes |
Chybové odpovědi: ***
|
Příklady
Create or update a database's azure monitor auditing policy with minimal parameters
Ukázkový požadavek
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true
}
}
Ukázková odpověď
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true,
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
]
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"isAzureMonitorTargetEnabled": true,
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
]
}
}
Create or update a database's blob auditing policy with all parameters
Ukázkový požadavek
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
Ukázková odpověď
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"DATABASE_LOGOUT_GROUP",
"DATABASE_ROLE_MEMBER_CHANGE_GROUP",
"UPDATE on database::TestDatabaseName by public"
],
"isAzureMonitorTargetEnabled": true
}
}
Create or update a database's blob auditing policy with minimal parameters
Ukázkový požadavek
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb/auditingSettings/default?api-version=2021-11-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net"
}
}
Ukázková odpověď
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"isAzureMonitorTargetEnabled": false
}
}
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/databases/testdb",
"name": "default",
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"kind": "V12",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"isAzureMonitorTargetEnabled": false
}
}
Definice
Name | Description |
---|---|
blob |
Název zásady auditování objektů blob. |
Blob |
Určuje stav auditu. Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled. |
Database |
Zásady auditování objektů blob databáze. |
blobAuditingPolicyName
Název zásady auditování objektů blob.
Name | Typ | Description |
---|---|---|
default |
string |
BlobAuditingPolicyState
Určuje stav auditu. Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled.
Name | Typ | Description |
---|---|---|
Disabled |
string |
|
Enabled |
string |
DatabaseBlobAuditingPolicy
Zásady auditování objektů blob databáze.
Name | Typ | Description |
---|---|---|
id |
string |
ID prostředku. |
kind |
string |
Druh prostředku. |
name |
string |
Název prostředku. |
properties.auditActionsAndGroups |
string[] |
Určuje Actions-Groups a akce, které se mají auditovat. Doporučená sada skupin akcí, které se mají použít, je následující kombinace – tím se auditují všechny dotazy a uložené procedury spuštěné v databázi a také úspěšná a neúspěšná přihlášení: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP FAILED_DATABASE_AUTHENTICATION_GROUP. Tato výše uvedená kombinace je také sada, která se ve výchozím nastavení konfiguruje při povolování auditování z Azure Portal. Podporované skupiny akcí, které se mají auditovat, jsou (poznámka: Zvolte jenom konkrétní skupiny, které pokrývají vaše potřeby auditování. Použití nepotřebných skupin může vést k velmi velkému množství záznamů auditu: 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 BATCH_STARTED_GROUP BATCH_COMPLETED_GROUP DBCC_GROUP DATABASE_OWNERSHIP_CHANGE_GROUP DATABASE_CHANGE_GROUP LEDGER_OPERATION_GROUP Jedná se o skupiny, které pokrývají všechny příkazy SQL a uložené procedury spuštěné v databázi a neměly by se používat v kombinaci s jinými skupinami, protože výsledkem budou duplicitní protokoly auditu. Další informace najdete v tématu Skupiny akcí auditování na úrovni databáze. Pro zásady auditování databáze je také možné zadat konkrétní akce (všimněte si, že akce nelze zadat pro zásady auditování serveru). Podporované akce pro audit jsou: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCE. Obecný formulář pro definování akce, která se má auditovat, je: {action} ON {object} BY {principal} Všimněte si, že ve výše uvedeném formátu může odkazovat na objekt, jako je tabulka, zobrazení nebo uložená procedura, nebo celá databáze nebo schéma. V těchto případech se používají formuláře DATABASE::{db_name} a SCHEMA::{schema_name} v uvedeném pořadí. Příklad: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Další informace najdete v tématu Akce auditu na úrovni databáze. |
properties.isAzureMonitorTargetEnabled |
boolean |
Určuje, jestli se události auditu odesílají do služby Azure Monitor. Pokud chcete odesílat události do Služby Azure Monitor, zadejte State jako Enabled a IsAzureMonitorTargetEnabled jako true. Při použití rozhraní REST API ke konfiguraci auditování by se měla v databázi vytvořit také nastavení diagnostiky s kategorií diagnostických protokolů SQLSecurityAuditEvents. Všimněte si, že pro audit na úrovni serveru byste měli použít hlavní databázi jako {databaseName}. Formát identifikátoru URI nastavení diagnostiky: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview Další informace najdete v tématu Nastavení diagnostiky rozhraní REST API nebo Nastavení diagnostiky v PowerShellu. |
properties.isManagedIdentityInUse |
boolean |
Určuje, jestli se pro přístup k úložišti objektů blob používá spravovaná identita. |
properties.isStorageSecondaryKeyInUse |
boolean |
Určuje, jestli je hodnota storageAccountAccessKey sekundárním klíčem úložiště. |
properties.queueDelayMs |
integer |
Určuje dobu v milisekundách, která může uplynout před vynuceným zpracováním akcí auditu. Výchozí minimální hodnota je 1000 (1 sekunda). Maximum je 2 147 483 647. |
properties.retentionDays |
integer |
Určuje počet dnů, které se mají uchovávat v protokolech auditu v účtu úložiště. |
properties.state |
Určuje stav auditu. Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled. |
|
properties.storageAccountAccessKey |
string |
Určuje klíč identifikátoru účtu úložiště auditování. Pokud je stav Povoleno a je zadaný parametr storageEndpoint, nezadáte-li klíč storageAccountAccessKey, použije se pro přístup k úložišti spravovaná identita přiřazená systémem SQL Serveru. Předpoklady pro použití ověřování spravované identity:
|
properties.storageAccountSubscriptionId |
string |
Určuje ID předplatného úložiště objektů blob. |
properties.storageEndpoint |
string |
Určuje koncový bod úložiště objektů blob (např. https://MyAccount.blob.core.windows.net). Pokud je stav Povoleno, vyžaduje se storageEndpoint nebo isAzureMonitorTargetEnabled. |
type |
string |
Typ prostředku. |