Extended Server Blob Auditing Policies - Create Or Update
Hiermee maakt of werkt u het controlebeleid van een uitgebreide server voor de blob bij.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/default?api-version=2023-08-01
URI-parameters
| Name | In | Vereist | Type | Description |
|---|---|---|---|---|
|
blob
|
path | True |
De naam van het controlebeleid voor blobs. |
|
|
resource
|
path | True |
string |
De naam van de resourcegroep die de resource bevat. U kunt deze waarde verkrijgen via de Azure Resource Manager-API of de portal. |
|
server
|
path | True |
string |
De naam van de server. |
|
subscription
|
path | True |
string |
De abonnements-id waarmee een Azure-abonnement wordt geïdentificeerd. |
|
api-version
|
query | True |
string |
De API-versie die moet worden gebruikt voor de aanvraag. |
Aanvraagbody
| Name | Vereist | Type | Description |
|---|---|---|---|
| properties.state | True |
Hiermee geeft u de status van de controle. Als de status Is ingeschakeld, zijn storageEndpoint of isAzureMonitorTargetEnabled vereist. |
|
| properties.auditActionsAndGroups |
string[] |
Hiermee geeft u de Actions-Groups en acties die moeten worden gecontroleerd. De aanbevolen set actiegroepen die moeten worden gebruikt, is de volgende combinatie: hiermee worden alle query's en opgeslagen procedures gecontroleerd die worden uitgevoerd op de database, evenals geslaagde en mislukte aanmeldingen: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Deze bovenstaande combinatie is ook de set die standaard is geconfigureerd bij het inschakelen van controle vanuit Azure Portal. De ondersteunde actiegroepen die moeten worden gecontroleerd, zijn (opmerking: kies alleen specifieke groepen die betrekking hebben op uw controlebehoeften. Het gebruik van onnodige groepen kan leiden tot zeer grote hoeveelheden controlerecords): 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 Dit zijn groepen die betrekking hebben op alle SQL-instructies en opgeslagen procedures die worden uitgevoerd op de database, en mogen niet worden gebruikt in combinatie met andere groepen, omdat dit leidt tot dubbele auditlogboeken. Zie Database-Level Actiegroepen controlerenvoor meer informatie. Voor databasecontrolebeleid kunnen ook specifieke acties worden opgegeven (houd er rekening mee dat acties niet kunnen worden opgegeven voor servercontrolebeleid). De ondersteunde acties die moeten worden gecontroleerd zijn: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES Het algemene formulier voor het definiëren van een te controleren actie is: {action} ON {object} BY {principal} Houd er rekening mee dat <object> in de bovenstaande indeling kan verwijzen naar een object zoals een tabel, weergave of opgeslagen procedure, of een hele database of schema. In de laatste gevallen worden de formulieren DATABASE::{db_name} en SCHEMA::{schema_name} respectievelijk gebruikt. Bijvoorbeeld: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Zie Database-Level Controleacties voor meer informatie |
|
| properties.isAzureMonitorTargetEnabled |
boolean |
Hiermee geeft u op of controlegebeurtenissen naar Azure Monitor worden verzonden. Als u de gebeurtenissen naar Azure Monitor wilt verzenden, geeft u 'State' op als Ingeschakeld en 'IsAzureMonitorTargetEnabled' als waar. Wanneer u REST API gebruikt om controle te configureren, moeten diagnostische instellingen met de categorie diagnostische logboeken van SQLSecurityAuditEvents in de database ook worden gemaakt. Houd er rekening mee dat u voor controle op serverniveau de hoofddatabase moet gebruiken als {databaseName}. URI-indeling voor diagnostische instellingen: PUT- Zie voor meer informatie REST API voor diagnostische instellingen of Diagnostische instellingen PowerShell |
|
| properties.isDevopsAuditEnabled |
boolean |
Hiermee geeft u de status van devops-audit. Als de status is ingeschakeld, worden devops-logboeken verzonden naar Azure Monitor. Als u de gebeurtenissen naar Azure Monitor wilt verzenden, geeft u 'Status' op als Ingeschakeld, 'IsAzureMonitorTargetEnabled' als true en 'IsDevopsAuditEnabled' als true Wanneer u REST API gebruikt om controle te configureren, moeten diagnostische instellingen met de categorie Diagnostische logboeken devOpsOperationsAudit in de hoofddatabase ook worden gemaakt. URI-indeling voor diagnostische instellingen: PUT- Zie voor meer informatie REST API voor diagnostische instellingen of Diagnostische instellingen PowerShell |
|
| properties.isManagedIdentityInUse |
boolean |
Hiermee geeft u op of Beheerde identiteit wordt gebruikt voor toegang tot blobopslag |
|
| properties.isStorageSecondaryKeyInUse |
boolean |
Hiermee geeft u op of de waarde storageAccountAccessKey de secundaire sleutel van de opslag is. |
|
| properties.predicateExpression |
string |
Hiermee geeft u de voorwaarde van where-component bij het maken van een controle. |
|
| properties.queueDelayMs |
integer (int32) |
Hiermee geeft u de hoeveelheid tijd in milliseconden op die kan verstrijken voordat controleacties worden gedwongen te worden verwerkt. De standaard minimumwaarde is 1000 (1 seconde). Het maximum is 2.147.483.647. |
|
| properties.retentionDays |
integer (int32) |
Hiermee geeft u het aantal dagen op dat moet worden bewaard in de auditlogboeken in het opslagaccount. |
|
| properties.storageAccountAccessKey |
string |
Hiermee geeft u de id-sleutel van het controleopslagaccount. Als de status Is ingeschakeld en storageEndpoint is opgegeven, wordt de door het SQL Server-systeem toegewezen beheerde identiteit niet gebruikt om toegang te krijgen tot de opslag door het sql Server-systeem toegewezen beheerde identiteit. Vereisten voor het gebruik van verificatie van beheerde identiteiten:
|
|
| properties.storageAccountSubscriptionId |
string (uuid) |
Hiermee geeft u de id van het blob-opslagabonnement op. |
|
| properties.storageEndpoint |
string |
Hiermee geeft u het blob-opslageindpunt (bijvoorbeeld |
Antwoorden
| Name | Type | Description |
|---|---|---|
| 200 OK |
De uitgebreide controle-instellingen zijn bijgewerkt. |
|
| 202 Accepted |
Het bijwerken van de uitgebreide controle-instellingen wordt uitgevoerd. Kopteksten Location: string |
|
| Other Status Codes |
Foutreacties: ***
|
Voorbeelden
| Update a server's extended blob auditing policy with all parameters |
| Update a server's extended blob auditing policy with minimal parameters |
Update a server's extended blob auditing policy with all parameters
Voorbeeldaanvraag
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default?api-version=2023-08-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": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"predicateExpression": "object_name = 'SensitiveData'",
"isAzureMonitorTargetEnabled": true
}
}
Voorbeeldrespons
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default",
"name": "default",
"type": "Microsoft.Sql/servers/extendedAuditingSettings",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"queueDelayMs": 4000,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"predicateExpression": "object_name = 'SensitiveData'",
"isAzureMonitorTargetEnabled": true
}
}
Update a server's extended blob auditing policy with minimal parameters
Voorbeeldaanvraag
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default?api-version=2023-08-01
{
"properties": {
"state": "Enabled",
"storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
"storageEndpoint": "https://mystorage.blob.core.windows.net"
}
}
Voorbeeldrespons
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default",
"name": "default",
"type": "Microsoft.Sql/servers/extendedAuditingSettings",
"properties": {
"state": "Enabled",
"storageEndpoint": "https://mystorage.blob.core.windows.net",
"retentionDays": 6,
"storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000",
"isStorageSecondaryKeyInUse": false,
"auditActionsAndGroups": [
"SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP",
"FAILED_DATABASE_AUTHENTICATION_GROUP",
"BATCH_COMPLETED_GROUP"
],
"isAzureMonitorTargetEnabled": false
}
}
Definities
| Name | Description |
|---|---|
|
blob |
De naam van het controlebeleid voor blobs. |
|
Blob |
Hiermee geeft u de status van de controle. Als de status Is ingeschakeld, zijn storageEndpoint of isAzureMonitorTargetEnabled vereist. |
|
Error |
Aanvullende informatie over de resourcebeheerfout. |
|
Error |
De foutdetails. |
|
Error |
Foutreactie |
|
Extended |
Een uitgebreide serverblobcontrolebeleid. |
blobAuditingPolicyName
De naam van het controlebeleid voor blobs.
| Waarde | Description |
|---|---|
| default |
BlobAuditingPolicyState
Hiermee geeft u de status van de controle. Als de status Is ingeschakeld, zijn storageEndpoint of isAzureMonitorTargetEnabled vereist.
| Waarde | Description |
|---|---|
| Enabled | |
| Disabled |
ErrorAdditionalInfo
Aanvullende informatie over de resourcebeheerfout.
| Name | Type | Description |
|---|---|---|
| info |
object |
De aanvullende informatie. |
| type |
string |
Het extra informatietype. |
ErrorDetail
De foutdetails.
| Name | Type | Description |
|---|---|---|
| additionalInfo |
De fout bevat aanvullende informatie. |
|
| code |
string |
De foutcode. |
| details |
De foutdetails. |
|
| message |
string |
Het foutbericht. |
| target |
string |
Het foutdoel. |
ErrorResponse
Foutreactie
| Name | Type | Description |
|---|---|---|
| error |
Het foutobject. |
ExtendedServerBlobAuditingPolicy
Een uitgebreide serverblobcontrolebeleid.
| Name | Type | Description |
|---|---|---|
| id |
string |
Resource-id. |
| name |
string |
Resourcenaam. |
| properties.auditActionsAndGroups |
string[] |
Hiermee geeft u de Actions-Groups en acties die moeten worden gecontroleerd. De aanbevolen set actiegroepen die moeten worden gebruikt, is de volgende combinatie: hiermee worden alle query's en opgeslagen procedures gecontroleerd die worden uitgevoerd op de database, evenals geslaagde en mislukte aanmeldingen: BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP. Deze bovenstaande combinatie is ook de set die standaard is geconfigureerd bij het inschakelen van controle vanuit Azure Portal. De ondersteunde actiegroepen die moeten worden gecontroleerd, zijn (opmerking: kies alleen specifieke groepen die betrekking hebben op uw controlebehoeften. Het gebruik van onnodige groepen kan leiden tot zeer grote hoeveelheden controlerecords): 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 Dit zijn groepen die betrekking hebben op alle SQL-instructies en opgeslagen procedures die worden uitgevoerd op de database, en mogen niet worden gebruikt in combinatie met andere groepen, omdat dit leidt tot dubbele auditlogboeken. Zie Database-Level Actiegroepen controlerenvoor meer informatie. Voor databasecontrolebeleid kunnen ook specifieke acties worden opgegeven (houd er rekening mee dat acties niet kunnen worden opgegeven voor servercontrolebeleid). De ondersteunde acties die moeten worden gecontroleerd zijn: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES Het algemene formulier voor het definiëren van een te controleren actie is: {action} ON {object} BY {principal} Houd er rekening mee dat <object> in de bovenstaande indeling kan verwijzen naar een object zoals een tabel, weergave of opgeslagen procedure, of een hele database of schema. In de laatste gevallen worden de formulieren DATABASE::{db_name} en SCHEMA::{schema_name} respectievelijk gebruikt. Bijvoorbeeld: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public Zie Database-Level Controleacties voor meer informatie |
| properties.isAzureMonitorTargetEnabled |
boolean |
Hiermee geeft u op of controlegebeurtenissen naar Azure Monitor worden verzonden. Als u de gebeurtenissen naar Azure Monitor wilt verzenden, geeft u 'State' op als Ingeschakeld en 'IsAzureMonitorTargetEnabled' als waar. Wanneer u REST API gebruikt om controle te configureren, moeten diagnostische instellingen met de categorie diagnostische logboeken van SQLSecurityAuditEvents in de database ook worden gemaakt. Houd er rekening mee dat u voor controle op serverniveau de hoofddatabase moet gebruiken als {databaseName}. URI-indeling voor diagnostische instellingen: PUT- Zie voor meer informatie REST API voor diagnostische instellingen of Diagnostische instellingen PowerShell |
| properties.isDevopsAuditEnabled |
boolean |
Hiermee geeft u de status van devops-audit. Als de status is ingeschakeld, worden devops-logboeken verzonden naar Azure Monitor. Als u de gebeurtenissen naar Azure Monitor wilt verzenden, geeft u 'Status' op als Ingeschakeld, 'IsAzureMonitorTargetEnabled' als true en 'IsDevopsAuditEnabled' als true Wanneer u REST API gebruikt om controle te configureren, moeten diagnostische instellingen met de categorie Diagnostische logboeken devOpsOperationsAudit in de hoofddatabase ook worden gemaakt. URI-indeling voor diagnostische instellingen: PUT- Zie voor meer informatie REST API voor diagnostische instellingen of Diagnostische instellingen PowerShell |
| properties.isManagedIdentityInUse |
boolean |
Hiermee geeft u op of Beheerde identiteit wordt gebruikt voor toegang tot blobopslag |
| properties.isStorageSecondaryKeyInUse |
boolean |
Hiermee geeft u op of de waarde storageAccountAccessKey de secundaire sleutel van de opslag is. |
| properties.predicateExpression |
string |
Hiermee geeft u de voorwaarde van where-component bij het maken van een controle. |
| properties.queueDelayMs |
integer (int32) |
Hiermee geeft u de hoeveelheid tijd in milliseconden op die kan verstrijken voordat controleacties worden gedwongen te worden verwerkt. De standaard minimumwaarde is 1000 (1 seconde). Het maximum is 2.147.483.647. |
| properties.retentionDays |
integer (int32) |
Hiermee geeft u het aantal dagen op dat moet worden bewaard in de auditlogboeken in het opslagaccount. |
| properties.state |
Hiermee geeft u de status van de controle. Als de status Is ingeschakeld, zijn storageEndpoint of isAzureMonitorTargetEnabled vereist. |
|
| properties.storageAccountAccessKey |
string |
Hiermee geeft u de id-sleutel van het controleopslagaccount. Als de status Is ingeschakeld en storageEndpoint is opgegeven, wordt de door het SQL Server-systeem toegewezen beheerde identiteit niet gebruikt om toegang te krijgen tot de opslag door het sql Server-systeem toegewezen beheerde identiteit. Vereisten voor het gebruik van verificatie van beheerde identiteiten:
|
| properties.storageAccountSubscriptionId |
string (uuid) |
Hiermee geeft u de id van het blob-opslagabonnement op. |
| properties.storageEndpoint |
string |
Hiermee geeft u het blob-opslageindpunt (bijvoorbeeld |
| type |
string |
Resourcetype. |