Extended Server Blob Auditing Policies - Create Or Update

Létrehozza vagy frissíti egy kiterjesztett kiszolgáló blobnaplózási szabályzatát.

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

URI-paraméterek

Name In Kötelező Típus Description
blobAuditingPolicyName
path True

blobAuditingPolicyName

A blobnaplózási szabályzat neve.

resourceGroupName
path True

string

Az erőforrást tartalmazó erőforráscsoport neve. Ezt az értéket az Azure Resource Manager API-ból vagy a portálról szerezheti be.

serverName
path True

string

A kiszolgáló neve.

subscriptionId
path True

string

Az Azure-előfizetést azonosító előfizetés-azonosító.

api-version
query True

string

A kéréshez használandó API-verzió.

Kérelem törzse

Name Kötelező Típus Description
properties.state True

BlobAuditingPolicyState

A naplózás állapotát adja meg. Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

properties.auditActionsAndGroups

string[]

A naplózandó Actions-Groups és műveletek megadása.

A javasolt műveletcsoportok a következő kombinációt használják – ez naplózni fogja az adatbázison végrehajtott összes lekérdezést és tárolt eljárást, valamint a sikeres és sikertelen bejelentkezéseket:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Ez a fenti kombináció az a készlet is, amely alapértelmezés szerint konfigurálva van a Azure Portal naplózásának engedélyezésekor.

A naplózandó támogatott műveletcsoportok (megjegyzés: csak azokat a csoportokat válassza ki, amelyek lefedik a naplózási igényeket. A szükségtelen csoportok használata nagyon nagy mennyiségű naplózási rekordhoz vezethet:

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

Ezek olyan csoportok, amelyek lefedik az adatbázison végrehajtott összes SQL-utasítást és tárolt eljárást, és nem használhatók más csoportokkal együtt, mivel ez ismétlődő auditnaplókat eredményez.

További információ: Adatbázisszintű naplózási műveletcsoportok.

Adatbázis-naplózási szabályzat esetén adott műveletek is megadhatóak (vegye figyelembe, hogy a Kiszolgálók naplózási szabályzatához nem adhatók meg műveletek). A naplózás támogatott műveletei a következők: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

A naplózandó művelet meghatározásának általános űrlapja: {action} ON {object} BY {principal}

Vegye figyelembe, hogy a fenti formátumban hivatkozhat egy objektumra, például egy táblára, nézetre vagy tárolt eljárásra, vagy egy teljes adatbázisra vagy sémára. Az utóbbi esetekben a RENDSZER a DATABASE::{db_name} és a SCHEMA::{schema_name} űrlapot használja.

Például: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

További információ: Adatbázisszintű naplózási műveletek

properties.isAzureMonitorTargetEnabled

boolean

Meghatározza, hogy a rendszer elküldi-e a naplózási eseményeket az Azure Monitornak. Az események Azure Monitorba való küldéséhez adja meg az "Állapot" értéket "Engedélyezve" és az "IsAzureMonitorTargetEnabled" értéket igazként.

Amikor REST API-t használ a naplózás konfigurálásához, létre kell hozni az adatbázis "SQLSecurityAuditEvents" diagnosztikai naplókat tartalmazó diagnosztikai beállításait is. Vegye figyelembe, hogy a kiszolgálószintű naplózáshoz a "master" adatbázist {databaseName} néven kell használnia.

Diagnosztikai beállítások URI formátuma: 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

További információ: Diagnosztikai beállítások REST API vagy Diagnosztikai beállítások PowerShell

properties.isDevopsAuditEnabled

boolean

A devops-naplózás állapotát határozza meg. Ha az állapot engedélyezve van, a devops-naplókat a rendszer elküldi az Azure Monitornak. Az események Azure Monitorba való küldéséhez az "Állapot" értéket adja meg "Engedélyezve", az "IsAzureMonitorTargetEnabled" értéket igazként, az "IsDevopsAuditEnabled" értéket pedig igazként.

Amikor REST API-t használ a naplózás konfigurálásához, létre kell hozni a diagnosztikai beállításokat a master adatbázis "DevOpsOperationsAudit" diagnosztikai naplókat tartalmazó kategóriájával.

Diagnosztikai beállítások URI formátuma: 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

További információ: Diagnosztikai beállítások REST API vagy Diagnosztikai beállítások PowerShell

properties.isManagedIdentityInUse

boolean

Meghatározza, hogy a felügyelt identitás használható-e a Blob Storage eléréséhez

properties.isStorageSecondaryKeyInUse

boolean

Meghatározza, hogy a storageAccountAccessKey érték a tároló másodlagos kulcsa-e.

properties.predicateExpression

string

A where záradék feltételét adja meg naplózás létrehozásakor.

properties.queueDelayMs

integer

Ezredmásodpercben adja meg, hogy mennyi idő telik el a naplózási műveletek feldolgozásának kényszerítése előtt. Az alapértelmezett minimális érték 1000 (1 másodperc). A maximális érték 2 147 483 647.

properties.retentionDays

integer

Megadja, hogy hány nap maradjon a tárfiók auditnaplóiban.

properties.storageAccountAccessKey

string

Megadja a naplózási tárfiók azonosítókulcsát. Ha az állapot Engedélyezve, és a storageEndpoint meg van adva, a storageAccountAccessKey megadásakor a rendszer által hozzárendelt SQL Server felügyelt identitást fogja használni a tároló eléréséhez. A felügyelt identitás hitelesítésének előfeltételei:

  1. Hozzárendelhet SQL Server egy rendszer által hozzárendelt felügyelt identitást az Azure Active Directoryban (AAD).
  2. Adjon SQL Server identitáshoz való hozzáférést a tárfiókhoz úgy, hogy hozzáadja a "Storage-blobadatok közreműködője" RBAC-szerepkört a kiszolgálóidentitáshoz. További információ: Naplózás a tárolóba felügyelt identitás hitelesítésével
properties.storageAccountSubscriptionId

string

Megadja a Blob Storage-előfizetés azonosítóját.

properties.storageEndpoint

string

Megadja a Blob Storage-végpontot (pl. https://MyAccount.blob.core.windows.net). Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

Válaszok

Name Típus Description
200 OK

ExtendedServerBlobAuditingPolicy

A kiterjesztett naplózási beállítások frissítése sikerült.

202 Accepted

A kiterjesztett naplózási beállítások frissítése folyamatban van.

Other Status Codes

Hibaválaszok: ***

  • 400 InvalidServerBlobAuditingPolicyCreateRequest – A kiszolgáló blobnaplózási házirendjének létrehozása nem létezik, vagy nincs tulajdonságobjektuma.

  • 400 InvalidBlobAuditActionsAndGroups – Érvénytelen naplózási műveletek vagy műveletcsoportok.

  • 400 DataSecurityInvalidUserSuppliedParameter – Az ügyfél érvénytelen paraméterértéket adott meg.

  • 400 BlobAuditingPredicateExpressionEmpty – Érvénytelen "predicateExpression" paraméter, az érték nem lehet üres.

  • 400 BlobAuditingInvalidStorageAccountCredentials – A megadott tárfiók vagy hozzáférési kulcs érvénytelen.

  • 400 InvalidBlobAuditActionsAndGroups – Érvénytelen naplózási műveletek vagy műveletcsoportok.

  • 400 InsufficientDiskSpaceForAuditing – Nincs elegendő lemezterület a naplózási metaadatok mentéséhez az adatbázisban

  • 400 InvalidBlobAuditActions – Érvénytelen naplózási művelet

  • 404 SubscriptionDoesNotHaveServer – A kért kiszolgáló nem található

  • 404 ServerNotInSubscriptionResourceGroup – A megadott kiszolgáló nem létezik a megadott erőforráscsoportban és előfizetésben.

  • 404 OperationIdNotFound – Az azonosítóval rendelkező művelet nem létezik.

  • 409 ServerBlobAuditingPolicyInProgress – A kiszolgálóblob naplózásának beállítása már folyamatban van.

  • 409 OperationCancelled – A felhasználó megszakította a műveletet.

  • 409 OperationInterrupted – Az erőforráson végzett művelet nem hajtható végre, mert egy másik művelet megszakította ugyanazon az erőforráson.

  • 429 SubscriptionTooManyCreateUpdateRequests – Az elérhető erőforrások által feldolgozható maximális kéréseken túli kérések.

  • 429 SubscriptionTooManyRequests – Az elérhető erőforrások által feldolgozható maximális kéréseken túli kérések.

  • 500 OperationTimedOut – A művelet túllépte az időkorlátot, és automatikusan visszagördült. Please retry the operation.

  • 503 TooManyRequests – Az elérhető erőforrások által feldolgozható maximális kéréseken túli kérések.

Példák

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

Sample Request

PUT 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

{
  "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
  }
}

Sample Response

{
  "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

Sample Request

PUT 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

{
  "properties": {
    "state": "Enabled",
    "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==",
    "storageEndpoint": "https://mystorage.blob.core.windows.net"
  }
}

Sample Response

{
  "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
  }
}

Definíciók

Name Description
blobAuditingPolicyName

A blobnaplózási szabályzat neve.

BlobAuditingPolicyState

A naplózás állapotát adja meg. Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

ExtendedServerBlobAuditingPolicy

Kiterjesztett kiszolgálói blobnaplózási szabályzat.

blobAuditingPolicyName

A blobnaplózási szabályzat neve.

Name Típus Description
default

string

BlobAuditingPolicyState

A naplózás állapotát adja meg. Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

Name Típus Description
Disabled

string

Enabled

string

ExtendedServerBlobAuditingPolicy

Kiterjesztett kiszolgálói blobnaplózási szabályzat.

Name Típus Description
id

string

Erőforrás-azonosító.

name

string

Erőforrás neve.

properties.auditActionsAndGroups

string[]

A naplózandó Actions-Groups és műveletek megadása.

A javasolt műveletcsoportok a következő kombinációt használják – ez naplózni fogja az adatbázison végrehajtott összes lekérdezést és tárolt eljárást, valamint a sikeres és sikertelen bejelentkezéseket:

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

Ez a fenti kombináció az a készlet is, amely alapértelmezés szerint konfigurálva van a Azure Portal naplózásának engedélyezésekor.

A naplózandó támogatott műveletcsoportok (megjegyzés: csak azokat a csoportokat válassza ki, amelyek lefedik a naplózási igényeket. A szükségtelen csoportok használata nagyon nagy mennyiségű naplózási rekordhoz vezethet:

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

Ezek olyan csoportok, amelyek lefedik az adatbázison végrehajtott összes SQL-utasítást és tárolt eljárást, és nem használhatók más csoportokkal együtt, mivel ez ismétlődő auditnaplókat eredményez.

További információ: Adatbázisszintű naplózási műveletcsoportok.

Adatbázis-naplózási szabályzat esetén adott műveletek is megadhatóak (vegye figyelembe, hogy a Kiszolgálók naplózási szabályzatához nem adhatók meg műveletek). A naplózás támogatott műveletei a következők: SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES

A naplózandó művelet meghatározásának általános űrlapja: {action} ON {object} BY {principal}

Vegye figyelembe, hogy a fenti formátumban hivatkozhat egy objektumra, például egy táblára, nézetre vagy tárolt eljárásra, vagy egy teljes adatbázisra vagy sémára. Az utóbbi esetekben a RENDSZER a DATABASE::{db_name} és a SCHEMA::{schema_name} űrlapot használja.

Például: SELECT on dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

További információ: Adatbázisszintű naplózási műveletek

properties.isAzureMonitorTargetEnabled

boolean

Meghatározza, hogy a rendszer elküldi-e a naplózási eseményeket az Azure Monitornak. Az események Azure Monitorba való küldéséhez adja meg az "Állapot" értéket "Engedélyezve" és az "IsAzureMonitorTargetEnabled" értéket igazként.

Amikor REST API-t használ a naplózás konfigurálásához, létre kell hozni az adatbázis "SQLSecurityAuditEvents" diagnosztikai naplókat tartalmazó diagnosztikai beállításait is. Vegye figyelembe, hogy a kiszolgálószintű naplózáshoz a "master" adatbázist {databaseName} néven kell használnia.

Diagnosztikai beállítások URI formátuma: 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

További információ: Diagnosztikai beállítások REST API vagy Diagnosztikai beállítások PowerShell

properties.isDevopsAuditEnabled

boolean

A devops-naplózás állapotát határozza meg. Ha az állapot engedélyezve van, a devops-naplókat a rendszer elküldi az Azure Monitornak. Az események Azure Monitorba való küldéséhez az "Állapot" értéket adja meg "Engedélyezve", az "IsAzureMonitorTargetEnabled" értéket igazként, az "IsDevopsAuditEnabled" értéket pedig igazként.

Amikor REST API-t használ a naplózás konfigurálásához, létre kell hozni a diagnosztikai beállításokat a master adatbázis "DevOpsOperationsAudit" diagnosztikai naplókat tartalmazó kategóriájával.

Diagnosztikai beállítások URI formátuma: 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

További információ: Diagnosztikai beállítások REST API vagy Diagnosztikai beállítások PowerShell

properties.isManagedIdentityInUse

boolean

Meghatározza, hogy a felügyelt identitás használható-e a Blob Storage eléréséhez

properties.isStorageSecondaryKeyInUse

boolean

Meghatározza, hogy a storageAccountAccessKey érték a tároló másodlagos kulcsa-e.

properties.predicateExpression

string

A where záradék feltételét adja meg naplózás létrehozásakor.

properties.queueDelayMs

integer

Ezredmásodpercben adja meg, hogy mennyi idő telik el a naplózási műveletek feldolgozásának kényszerítése előtt. Az alapértelmezett minimális érték 1000 (1 másodperc). A maximális érték 2 147 483 647.

properties.retentionDays

integer

Megadja, hogy hány nap maradjon a tárfiók auditnaplóiban.

properties.state

BlobAuditingPolicyState

A naplózás állapotát adja meg. Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

properties.storageAccountAccessKey

string

Megadja a naplózási tárfiók azonosítókulcsát. Ha az állapot Engedélyezve, és a storageEndpoint meg van adva, a storageAccountAccessKey megadásakor a rendszer által hozzárendelt SQL Server felügyelt identitást fogja használni a tároló eléréséhez. A felügyelt identitás hitelesítésének előfeltételei:

  1. Hozzárendelhet SQL Server egy rendszer által hozzárendelt felügyelt identitást az Azure Active Directoryban (AAD).
  2. Adjon SQL Server identitáshoz való hozzáférést a tárfiókhoz úgy, hogy hozzáadja a "Storage-blobadatok közreműködője" RBAC-szerepkört a kiszolgálóidentitáshoz. További információ: Naplózás a tárolóba felügyelt identitás hitelesítésével
properties.storageAccountSubscriptionId

string

Megadja a Blob Storage-előfizetés azonosítóját.

properties.storageEndpoint

string

Megadja a Blob Storage-végpontot (pl. https://MyAccount.blob.core.windows.net). Ha az állapot Engedélyezve, akkor a storageEndpoint vagy azAzureMonitorTargetEnabled szükséges.

type

string

Erőforrástípus.