다음을 통해 공유


ExtendedDatabaseBlobAuditingPolicy interface

확장된 데이터베이스 Blob 감사 정책입니다.

Extends

속성

auditActionsAndGroups

감사할 Actions-Groups 및 작업을 지정합니다.

사용할 권장 작업 그룹 집합은 다음 조합입니다. 이 조합은 데이터베이스에 대해 실행된 모든 쿼리 및 저장 프로시저와 성공 및 실패한 로그인을 감사합니다.

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

위의 조합은 Azure Portal 감사를 사용하도록 설정할 때 기본적으로 구성된 집합이기도 합니다.

감사할 지원되는 작업 그룹은 (참고: 감사 요구 사항을 다루는 특정 그룹만 선택합니다. 불필요한 그룹을 사용하면 매우 많은 양의 감사 레코드가 발생할 수 있습니다.

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

이러한 그룹은 데이터베이스에 대해 실행되는 모든 sql 문 및 저장 프로시저를 포함하는 그룹이며, 중복 감사 로그가 발생하므로 다른 그룹과 함께 사용하면 안 됩니다.

자세한 내용은 데이터베이스 수준 감사 작업 그룹을 참조하세요.

데이터베이스 감사 정책의 경우 특정 작업을 지정할 수도 있습니다(서버 감사 정책에 대해 작업을 지정할 수 없음). 감사할 수 있는 작업은 SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES입니다.

감사할 작업을 정의하는 일반적인 양식은 {action} ON {object} BY {principal}입니다.

위의 형식에서는 테이블, 뷰 또는 저장 프로시저와 같은 개체 또는 전체 데이터베이스 또는 스키마를 참조할 수 있습니다. 후자의 경우 각각 DATABASE::{db_name} 및 SCHEMA::{schema_name} 형식이 사용됩니다.

예: Dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

자세한 내용은 데이터베이스 수준 감사 작업을 참조하세요.

isAzureMonitorTargetEnabled

감사 이벤트를 Azure Monitor로 보낼지 여부를 지정합니다. Azure Monitor에 이벤트를 보내려면 'State'를 'Enabled'로, 'IsAzureMonitorTargetEnabled'를 true로 지정합니다.

REST API를 사용하여 감사를 구성하는 경우 데이터베이스에 'SQLSecurityAuditEvents' 진단 로그 범주가 있는 진단 설정도 만들어야 합니다. 서버 수준 감사의 경우 'master' 데이터베이스를 {databaseName}으로 사용해야 합니다.

진단 설정 URI 형식: 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

자세한 내용은 진단 설정 REST API 또는 진단 설정 PowerShell을 참조하세요.

isManagedIdentityInUse

관리 ID를 사용하여 Blob Storage에 액세스할지 여부를 지정합니다.

isStorageSecondaryKeyInUse

storageAccountAccessKey 값이 스토리지의 보조 키인지 여부를 지정합니다.

predicateExpression

감사를 만들 때 where 절의 조건을 지정합니다.

queueDelayMs

감사 동작이 강제 처리되기 전까지 허용되는 시간(밀리초)을 지정합니다. 최소값은 1000입니다. 이 값은 1초에 해당하며 기본값입니다. 최대값은 2,147,483,647입니다.

retentionDays

스토리지 계정의 감사 로그에 유지할 일 수를 지정합니다.

state

감사 상태를 지정합니다. 상태가 사용인 경우 storageEndpoint 또는 isAzureMonitorTargetEnabled가 필요합니다.

storageAccountAccessKey

감사 스토리지 계정의 식별자 키를 지정합니다. 상태가 Enabled이고 storageEndpoint가 지정된 경우 storageAccountAccessKey를 지정하지 않으면 SQL Server 시스템 할당 관리 ID를 사용하여 스토리지에 액세스합니다. 관리 ID 인증을 사용하기 위한 필수 구성 요소:

  1. AAD(Azure Active Directory)에서 시스템 할당 관리 ID를 SQL Server 할당합니다.
  2. 서버 ID에 'Storage Blob 데이터 기여자' RBAC 역할을 추가하여 SQL Server ID에 스토리지 계정에 대한 액세스 권한을 부여합니다. 자세한 내용은 관리 ID 인증을 사용하여 스토리지에 대한 감사를 참조하세요.
storageAccountSubscriptionId

Blob Storage 구독 ID를 지정합니다.

storageEndpoint

Blob Storage 엔드포인트를 지정합니다(예: https://MyAccount.blob.core.windows.net). 상태가 사용인 경우 storageEndpoint 또는 isAzureMonitorTargetEnabled가 필요합니다.

상속된 속성

id

리소스 ID입니다. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

name

리소스 이름입니다. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

type

리소스 종류. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

속성 세부 정보

auditActionsAndGroups

감사할 Actions-Groups 및 작업을 지정합니다.

사용할 권장 작업 그룹 집합은 다음 조합입니다. 이 조합은 데이터베이스에 대해 실행된 모든 쿼리 및 저장 프로시저와 성공 및 실패한 로그인을 감사합니다.

BATCH_COMPLETED_GROUP, SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, FAILED_DATABASE_AUTHENTICATION_GROUP.

위의 조합은 Azure Portal 감사를 사용하도록 설정할 때 기본적으로 구성된 집합이기도 합니다.

감사할 지원되는 작업 그룹은 (참고: 감사 요구 사항을 다루는 특정 그룹만 선택합니다. 불필요한 그룹을 사용하면 매우 많은 양의 감사 레코드가 발생할 수 있습니다.

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

이러한 그룹은 데이터베이스에 대해 실행되는 모든 sql 문 및 저장 프로시저를 포함하는 그룹이며, 중복 감사 로그가 발생하므로 다른 그룹과 함께 사용하면 안 됩니다.

자세한 내용은 데이터베이스 수준 감사 작업 그룹을 참조하세요.

데이터베이스 감사 정책의 경우 특정 작업을 지정할 수도 있습니다(서버 감사 정책에 대해 작업을 지정할 수 없음). 감사할 수 있는 작업은 SELECT UPDATE INSERT DELETE EXECUTE RECEIVE REFERENCES입니다.

감사할 작업을 정의하는 일반적인 양식은 {action} ON {object} BY {principal}입니다.

위의 형식에서는 테이블, 뷰 또는 저장 프로시저와 같은 개체 또는 전체 데이터베이스 또는 스키마를 참조할 수 있습니다. 후자의 경우 각각 DATABASE::{db_name} 및 SCHEMA::{schema_name} 형식이 사용됩니다.

예: Dbo.myTable by public SELECT on DATABASE::myDatabase by public SELECT on SCHEMA::mySchema by public

자세한 내용은 데이터베이스 수준 감사 작업을 참조하세요.

auditActionsAndGroups?: string[]

속성 값

string[]

isAzureMonitorTargetEnabled

감사 이벤트를 Azure Monitor로 보낼지 여부를 지정합니다. Azure Monitor에 이벤트를 보내려면 'State'를 'Enabled'로, 'IsAzureMonitorTargetEnabled'를 true로 지정합니다.

REST API를 사용하여 감사를 구성하는 경우 데이터베이스에 'SQLSecurityAuditEvents' 진단 로그 범주가 있는 진단 설정도 만들어야 합니다. 서버 수준 감사의 경우 'master' 데이터베이스를 {databaseName}으로 사용해야 합니다.

진단 설정 URI 형식: 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

자세한 내용은 진단 설정 REST API 또는 진단 설정 PowerShell을 참조하세요.

isAzureMonitorTargetEnabled?: boolean

속성 값

boolean

isManagedIdentityInUse

관리 ID를 사용하여 Blob Storage에 액세스할지 여부를 지정합니다.

isManagedIdentityInUse?: boolean

속성 값

boolean

isStorageSecondaryKeyInUse

storageAccountAccessKey 값이 스토리지의 보조 키인지 여부를 지정합니다.

isStorageSecondaryKeyInUse?: boolean

속성 값

boolean

predicateExpression

감사를 만들 때 where 절의 조건을 지정합니다.

predicateExpression?: string

속성 값

string

queueDelayMs

감사 동작이 강제 처리되기 전까지 허용되는 시간(밀리초)을 지정합니다. 최소값은 1000입니다. 이 값은 1초에 해당하며 기본값입니다. 최대값은 2,147,483,647입니다.

queueDelayMs?: number

속성 값

number

retentionDays

스토리지 계정의 감사 로그에 유지할 일 수를 지정합니다.

retentionDays?: number

속성 값

number

state

감사 상태를 지정합니다. 상태가 사용인 경우 storageEndpoint 또는 isAzureMonitorTargetEnabled가 필요합니다.

state?: BlobAuditingPolicyState

속성 값

storageAccountAccessKey

감사 스토리지 계정의 식별자 키를 지정합니다. 상태가 Enabled이고 storageEndpoint가 지정된 경우 storageAccountAccessKey를 지정하지 않으면 SQL Server 시스템 할당 관리 ID를 사용하여 스토리지에 액세스합니다. 관리 ID 인증을 사용하기 위한 필수 구성 요소:

  1. AAD(Azure Active Directory)에서 시스템 할당 관리 ID를 SQL Server 할당합니다.
  2. 서버 ID에 'Storage Blob 데이터 기여자' RBAC 역할을 추가하여 SQL Server ID에 스토리지 계정에 대한 액세스 권한을 부여합니다. 자세한 내용은 관리 ID 인증을 사용하여 스토리지에 대한 감사를 참조하세요.
storageAccountAccessKey?: string

속성 값

string

storageAccountSubscriptionId

Blob Storage 구독 ID를 지정합니다.

storageAccountSubscriptionId?: string

속성 값

string

storageEndpoint

Blob Storage 엔드포인트를 지정합니다(예: https://MyAccount.blob.core.windows.net). 상태가 사용인 경우 storageEndpoint 또는 isAzureMonitorTargetEnabled가 필요합니다.

storageEndpoint?: string

속성 값

string

상속된 속성 세부 정보

id

리소스 ID입니다. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

id?: string

속성 값

string

상속된ProxyResource.id

name

리소스 이름입니다. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

name?: string

속성 값

string

상속된ProxyResource.name

type

리소스 종류. 참고: 이 속성은 serialize되지 않습니다. 서버에서만 채울 수 있습니다.

type?: string

속성 값

string

ProxyResource.type에서 상속됨