Database Extended Auditing Settings - List By Database

Elenca le impostazioni di controllo estese di un database.

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/extendedAuditingSettings?api-version=2017-03-01-preview

Parametri dell'URI

Name In Required Type Description
databaseName
path True
  • string

Nome del database.

resourceGroupName
path True
  • string

Nome del gruppo di risorse contenente la risorsa. È possibile ottenere questo valore dall'API di Gestione risorse di Azure o dal portale.

serverName
path True
  • string

Nome del server.

subscriptionId
path True
  • string

ID sottoscrizione che identifica una sottoscrizione di Azure.

api-version
query True
  • string

Versione dell'API da usare per la richiesta.

Risposte

Name Type Description
200 OK

È stato recuperato correttamente le impostazioni di controllo estese del database.

Other Status Codes

Risposte di errore:

  • 400 BlobAuditingIsNotSupportedOnResourceType - Il controllo BLOB non è attualmente supportato per questo tipo di risorsa.

  • 404 SourceDatabaseNotFound: il database di origine non esiste.

  • 404 DatabaseDoesNotExist : l'utente ha specificato un nome di database che non esiste in questa istanza del server.

  • 500 DatabaseIsUnavailable - Caricamento non riuscito. Riprova più tardi.

Esempio

List extended auditing settings of a database

Sample Request

GET https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb/extendedAuditingSettings?api-version=2017-03-01-preview

Sample Response

{
  "value": [
    {
      "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Sql/servers/blobauditingtest-2080/databases/testdb/extendedAuditingSettings/default",
      "name": "default",
      "type": "Microsoft.Sql/servers/databases/extendedAuditingSettings",
      "properties": {
        "state": "Disabled",
        "storageEndpoint": "",
        "retentionDays": 0,
        "auditActionsAndGroups": [],
        "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
        "isStorageSecondaryKeyInUse": false,
        "predicateExpression": "statement = 'select 1'",
        "isAzureMonitorTargetEnabled": false
      }
    }
  ]
}

Definizioni

BlobAuditingPolicyState

Specifica lo stato dei criteri. Se lo stato è Abilitato, sono necessari storageEndpoint o isAzureMonitorTargetEnabled.

ExtendedDatabaseBlobAuditingPolicy

Criteri di controllo dei BLOB del database estesi.

ExtendedDatabaseBlobAuditingPolicyListResult

Elenco delle impostazioni di controllo estese del database.

BlobAuditingPolicyState

Specifica lo stato dei criteri. Se lo stato è Abilitato, sono necessari storageEndpoint o isAzureMonitorTargetEnabled.

Name Type Description
Disabled
  • string
Enabled
  • string

ExtendedDatabaseBlobAuditingPolicy

Criteri di controllo dei BLOB del database estesi.

Name Type Description
id
  • string

ID risorsa.

name
  • string

Nome risorsa.

properties.auditActionsAndGroups
  • string[]

Specifica la Actions-Groups e le azioni da controllare.

Il set consigliato di gruppi di azioni da usare è la combinazione seguente: in questo modo verranno controllate tutte le query e le stored procedure eseguite sul database, nonché gli accessi riusciti e non riusciti:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Questa combinazione precedente è anche il set configurato per impostazione predefinita quando si abilita il controllo dal portale di Azure.

I gruppi di azioni supportati da controllare sono (nota: scegliere solo gruppi specifici che coprono le esigenze di controllo. L'uso di gruppi non necessari potrebbe causare grandi quantità di record di controllo:

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

Si tratta di gruppi che coprono tutte le istruzioni SQL e le stored procedure eseguite sul database e non devono essere usati in combinazione con altri gruppi, in quanto ciò comporterà la duplicazione dei log di controllo.

Per altre informazioni, vedere Gruppi di azioni di controllo a livello di database.

Per i criteri di controllo del database, è anche possibile specificare azioni specifiche. Si noti che le azioni non possono essere specificate per i criteri di controllo del server. Le azioni supportate da controllare sono: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

Il modulo generale per la definizione di un'azione da controllare è: {action} ON {object} BY {principal}

Si noti che nel formato precedente può fare riferimento a un oggetto come una tabella, una vista o una stored procedure oppure un intero database o uno schema. Per questi ultimi casi, vengono usati rispettivamente i moduli DATABASE::{db_name} e SCHEMA::{schema_name} .

Ad esempio: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

Per altre informazioni, vedere Azioni di controllo a livello di database

properties.isAzureMonitorTargetEnabled
  • boolean

Specifica se gli eventi di controllo vengono inviati a Monitoraggio di Azure. Per inviare gli eventi a Monitoraggio di Azure, specificare 'state' come 'Enabled' e 'isAzureMonitorTargetEnabled' come true.

Quando si usa l'API REST per configurare il controllo, è necessario creare anche il Impostazioni di diagnostica con la categoria di log di diagnostica 'SQLSecurityAuditEvents' nel database. Si noti che per il controllo a livello di server è consigliabile usare il database 'master' come {databaseName}.

Formato URI di diagnostica Impostazioni: PUThttps://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

Per altre informazioni, vedere API REST di diagnostica Impostazioni o Diagnostica Impostazioni PowerShell

properties.isStorageSecondaryKeyInUse
  • boolean

Specifica se il valore storageAccountAccessKey è la chiave secondaria dell'archiviazione.

properties.predicateExpression
  • string

Specifica la condizione della clausola where durante la creazione di un controllo.

properties.queueDelayMs
  • integer

Indica la quantità di tempo in millisecondi che può trascorrere prima che venga forzata l'elaborazione delle azioni di controllo. Il valore minimo predefinito è 1000 (1 secondo), Il valore massimo è 2.147.483.647.

properties.retentionDays
  • integer

Specifica il numero di giorni da mantenere nei log di controllo nell'account di archiviazione.

properties.state

Specifica lo stato dei criteri. Se lo stato è Abilitato, sono necessari storageEndpoint o isAzureMonitorTargetEnabled.

properties.storageAccountAccessKey
  • string

Specifica la chiave dell'identificatore dell'account di archiviazione di controllo. Se lo stato è Abilitato e viene specificato storageEndpoint, non specificando storageAccountAccessKey verrà usata SQL'identità gestita assegnata dal sistema del server per accedere alla risorsa di archiviazione. Prerequisiti per l'uso dell'autenticazione dell'identità gestita:

  1. Assegnare SQL Server un'identità gestita assegnata dal sistema in Azure Active Directory (AAD).
  2. Concedere SQL Server'accesso all'identità all'account di archiviazione aggiungendo il ruolo di controllo degli accessi in base al ruolo "Collaboratore dati BLOB Archiviazione" all'identità del server. Per altre informazioni, vedere Controllo dell'archiviazione con l'autenticazione dell'identità gestita
properties.storageAccountSubscriptionId
  • string

Specifica l'ID sottoscrizione dell'archiviazione BLOB.

properties.storageEndpoint
  • string

Specifica l'endpoint di archiviazione BLOB , ad esempio https://MyAccount.blob.core.windows.net. Se lo stato è Abilitato, è necessario storageEndpoint o isAzureMonitorTargetEnabled.

type
  • string

Tipo di risorsa.

ExtendedDatabaseBlobAuditingPolicyListResult

Elenco delle impostazioni di controllo estese del database.

Name Type Description
nextLink
  • string

Collegamento per recuperare la pagina successiva dei risultati.

value

Matrice di risultati.