Extended Server Blob Auditing Policies - Get

Pobiera zasady inspekcji obiektów blob rozszerzonego serwera.

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/extendedAuditingSettings/default?api-version=2021-11-01

Parametry identyfikatora URI

Name In Required Type Description
blobAuditingPolicyName
path True

Nazwa zasad inspekcji obiektów blob.

resourceGroupName
path True
  • string

Nazwa grupy zasobów zawierającej zasób. Tę wartość można uzyskać z interfejsu API Resource Manager platformy Azure lub portalu.

serverName
path True
  • string

Nazwa serwera.

subscriptionId
path True
  • string

Identyfikator subskrypcji identyfikujący subskrypcję platformy Azure.

api-version
query True
  • string

Wersja interfejsu API do użycia dla żądania.

Odpowiedzi

Name Type Description
200 OK

Pomyślnie pobrano rozszerzone zasady inspekcji obiektów blob serwera.

Other Status Codes

Odpowiedzi na błędy: ***

  • 404 SubscriptionDoesNotHaveServer — nie znaleziono żądanego serwera

  • 404 ServerNotInSubscriptionResourceGroup — określony serwer nie istnieje w określonej grupie zasobów i subskrypcji.

Przykłady

Get a server's blob extended auditing policy

Sample Request

GET https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Sql/servers/blobauditingtest-6440/extendedAuditingSettings/default?api-version=2021-11-01

Sample Response

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

Definicje

blobAuditingPolicyName

Nazwa zasad inspekcji obiektów blob.

BlobAuditingPolicyState

Określa stan inspekcji. Jeśli stan jest włączony, punkt magazynowania lub wartośćAzureMonitorTargetEnabled są wymagane.

ExtendedServerBlobAuditingPolicy

Rozszerzone zasady inspekcji obiektów blob serwera.

blobAuditingPolicyName

Nazwa zasad inspekcji obiektów blob.

Name Type Description
default
  • string

BlobAuditingPolicyState

Określa stan inspekcji. Jeśli stan jest włączony, punkt magazynowania lub wartośćAzureMonitorTargetEnabled są wymagane.

Name Type Description
Disabled
  • string
Enabled
  • string

ExtendedServerBlobAuditingPolicy

Rozszerzone zasady inspekcji obiektów blob serwera.

Name Type Description
id
  • string

Identyfikator zasobu.

name
  • string

Nazwa zasobu.

properties.auditActionsAndGroups
  • string[]

Określa Actions-Groups i akcje do inspekcji.

Zalecany zestaw grup akcji do użycia to następująca kombinacja — spowoduje to inspekcję wszystkich zapytań i procedur składowanych wykonywanych względem bazy danych, a także pomyślnych i zakończonych niepowodzeniem logowania:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Ta powyżej kombinacja jest również zestawem skonfigurowanym domyślnie podczas włączania inspekcji z Azure Portal.

Obsługiwane grupy akcji do inspekcji to (uwaga: wybierz tylko określone grupy, które obejmują potrzeby inspekcji. Użycie niepotrzebnych grup może prowadzić do bardzo dużych ilości rekordów inspekcji):

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

Są to grupy, które 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 Grupy akcji inspekcji na poziomie bazy danych.

W przypadku zasad inspekcji bazy danych można również określić określone akcje (należy pamiętać, że nie można określić akcji dla zasad inspekcji serwera). Obsługiwane akcje do inspekcji to: WYBIERZ POZYCJĘ UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

Ogólny formularz do definiowania akcji do inspekcji to: {action} ON {object} BY {principal}

Należy pamiętać, że w powyższym formacie można 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::{db_name} i SCHEMA::{schema_name}.

Na przykład: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

Aby uzyskać więcej informacji, zobacz Akcje inspekcji na poziomie bazy danych

properties.isAzureMonitorTargetEnabled
  • boolean

Określa, czy zdarzenia inspekcji są wysyłane do usługi Azure Monitor. Aby wysyłać zdarzenia do usługi Azure Monitor, określ wartość "State" jako "Enabled" i "IsAzureMonitorTargetEnabled" jako true.

W przypadku konfigurowania inspekcji przy użyciu interfejsu API REST należy również utworzyć kategorię dzienników diagnostycznych "SQLSecurityAuditEvents" w bazie danych. Należy pamiętać, że w przypadku inspekcji na poziomie serwera należy użyć bazy danych "master" jako {databaseName}.

Format identyfikatora URI ustawień diagnostycznych: 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

Aby uzyskać więcej informacji, zobacz Interfejs API REST ustawień diagnostycznych lub ustawienia diagnostyczne programu PowerShell

properties.isDevopsAuditEnabled
  • boolean

Określa stan inspekcji devops. Jeśli stan jest włączony, dzienniki devops zostaną wysłane do usługi Azure Monitor. Aby wysłać zdarzenia do usługi Azure Monitor, określ wartość "State" jako "Enabled", "IsAzureMonitorTargetEnabled" jako true i "IsDevopsAuditEnabled" jako true

W przypadku konfigurowania inspekcji przy użyciu interfejsu API REST należy również utworzyć kategorię dzienników diagnostycznych "DevOpsOperationsAudit" w bazie danych master.

Format identyfikatora URI ustawień diagnostycznych: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

Aby uzyskać więcej informacji, zobacz Interfejs API REST ustawień diagnostycznych lub ustawienia diagnostyczne programu PowerShell

properties.isManagedIdentityInUse
  • boolean

Określa, czy tożsamość zarządzana jest używana do uzyskiwania dostępu do magazynu obiektów blob

properties.isStorageSecondaryKeyInUse
  • boolean

Określa, czy wartość storageAccountAccessKey jest kluczem pomocniczym magazynu.

properties.predicateExpression
  • string

Określa warunek where klauzuli podczas tworzenia inspekcji.

properties.queueDelayMs
  • integer

Określa czas w milisekundach, który może upłynąć, zanim akcje inspekcji zostaną zmuszone do przetworzenia. Domyślna wartość minimalna to 1000 (1 sekunda). Maksymalna wartość to 2147 483 647.

properties.retentionDays
  • integer

Określa liczbę dni przechowywania w dziennikach inspekcji na koncie magazynu.

properties.state

Określa stan inspekcji. Jeśli stan jest włączony, punkt magazynowania lub wartośćAzureMonitorTargetEnabled są wymagane.

properties.storageAccountAccessKey
  • string

Określa klucz identyfikatora konta magazynu inspekcji. Jeśli stan jest włączony, a punkt magazynuEndpoint jest określony, nie określi parametru storageAccountAccessKey użyje przypisanej przez system tożsamości zarządzanej programu SQL Server w celu uzyskania dostępu do magazynu. Wymagania wstępne dotyczące korzystania z uwierzytelniania tożsamości zarządzanej:

  1. Przypisz SQL Server tożsamość zarządzaną przypisaną przez system w usłudze Azure Active Directory (AAD).
  2. Udziel SQL Server tożsamości dostępu do konta magazynu, dodając rolę RBAC współautora danych obiektu blob usługi Storage do tożsamości serwera. Aby uzyskać więcej informacji, zobacz Inspekcja magazynu przy użyciu uwierzytelniania tożsamości zarządzanej
properties.storageAccountSubscriptionId
  • string

Określa identyfikator subskrypcji magazynu obiektów blob.

properties.storageEndpoint
  • string

Określa punkt końcowy magazynu obiektów blob (np. https://MyAccount.blob.core.windows.net). Jeśli stan jest włączony, punkt magazynuEndpoint lub wartośćAzureMonitorTargetEnabled jest wymagany.

type
  • string

Typ zasobu.