다음을 통해 공유


Audit Broker Conversation 이벤트 클래스

적용 대상: SQL ServerAzure SQL Database Azure SQL Managed Instance

SQL Server는 Audit Broker 대화 이벤트를 만들어 Service Broker 대화 보안과 관련된 감사 메시지를 보고합니다.

Audit Broker Conversation 이벤트 클래스 데이터 열

데이터 열 Type 설명 Column number 필터 가능
ApplicationName nvarchar SQL Server 인스턴스에 대한 연결을 만든 클라이언트 애플리케이션의 이름입니다. 이 열은 표시된 프로그램 이름이 아닌 애플리케이션에서 전달되는 값으로 채워집니다. 10
BigintData1 bigint 메시지의 메시지 시퀀스 번호입니다. 52 아니요
ClientProcessID int 클라이언트 애플리케이션이 실행 중인 프로세스에 호스트 컴퓨터에서 할당한 ID입니다. 클라이언트가 클라이언트 프로세스 ID를 제공하면 이 데이터 열이 채워집니다. 9
DatabaseID int USE database 문으로 지정한 데이터베이스 ID이거나 지정한 인스턴스에 대해 실행된 USE database 문이 없는 경우 기본 데이터베이스 ID입니다. Sql Server Profiler는 ServerName 데이터 열이 추적에 캡처되고 서버를 사용할 수 있는 경우 데이터베이스의 이름을 표시합니다. DB_ID 함수를 사용하여 데이터베이스의 값을 결정합니다. 3
오류 int 이 이벤트가 오류를 보고하는 경우 SQL Server 오류 번호입니다. 31 아니요
EventClass int 캡처된 이벤트 클래스의 형식입니다. Audit Broker 대화의 경우 항상 158입니다. 27 아니요
EventSubClass int 각 이벤트 클래스에 대한 추가 정보를 제공하는 이벤트 하위 클래스의 유형입니다. 아래 표에서는 이 이벤트에 대한 이벤트 하위 클래스 값을 나열합니다. 21
FileName nvarchar 로그인 실패의 원인입니다. 로그인에 성공하면 이 열이 비어 있습니다. 36 아니요
GUID uniqueidentifier 대화의 대화 ID입니다. 이 식별자는 메시지의 일부로 전송되며 양쪽 대화 상대 간에 공유합니다. 54 아니요
HostName nvarchar 클라이언트를 실행 중인 컴퓨터의 이름입니다. 이 데이터 열은 클라이언트에서 호스트 이름을 제공하는 경우 채워집니다. 호스트 이름을 확인하려면 HOST_NAME 함수를 사용합니다. 8
IntegerData int 메시지의 조각 번호입니다. 25 아니요
NTDomainName nvarchar 사용자가 속한 Windows 도메인입니다. 7
NTUserName nvarchar 이 이벤트를 생성한 연결을 소유한 사용자의 이름입니다. 6
ObjectId int 대상 서비스의 사용자 ID입니다. 22 아니요
RoleName nvarchar 대화 핸들의 역할입니다. 초기자 또는 대상입니다. 38 아니요
데이터 열이 추적에서 캡처되고 서버를 사용할 수 있으면 nvarchar 추적 중인 SQL Server 인스턴스의 이름입니다. 26 아니요
심각도 int 이 이벤트가 오류를 보고하는 경우 SQL Server 오류 심각도입니다. 29 아니요
SPID int SQL Server가 클라이언트와 연결된 프로세스에 할당한 서버 프로세스 ID입니다. 12
StartTime 날짜/시간 이벤트가 시작된 시간(사용 가능한 경우)입니다. 14
State(상태) int 이벤트를 생성한 SQL Server 소스 코드 내의 위치를 나타냅니다. 이 이벤트를 생성할 수 있는 각 위치에는 다른 상태 코드가 있습니다. Microsoft 지원 엔지니어는 이 상태 코드를 사용하여 이벤트가 생성된 위치를 찾을 수 있습니다. 30 아니요
TextData ntext 오류에 대해 실패 원인을 설명하는 메시지가 들어 있습니다. 다음의 값 중 하나입니다.



인증서를 찾을 수 없습니다. 대화 프로토콜 보안에 지정된 사용자에게 인증서가 없습니다.

유효 기간이 아닙니다. 대화 프로토콜 보안을 위해 지정된 사용자에게 인증서가 있지만 인증서가 만료되었습니다.

메모리 할당을 위해 인증서가 너무 큽니다. 대화 프로토콜 보안을 위해 지정된 사용자에게 인증서가 있지만 인증서가 너무 큽습니다. Service Broker에서 지원하는 최대 인증서 크기는 32,768바이트입니다.

프라이빗 키를 찾을 수 없습니다. 대화 프로토콜 보안을 위해 지정된 사용자에게 인증서가 있지만 해당 인증서와 연결된 프라이빗 키가 없습니다.

인증서의 프라이빗 키 크기는 암호화 공급자와 호환되지 않습니다. 인증서의 프라이빗 키에는 성공적으로 처리할 수 없는 키 크기가 있습니다. 프라이빗 키 크기는 64바이트의 배수여야 합니다.

인증서의 공개 키 크기는 암호화 공급자와 호환되지 않습니다. 인증서의 공개 키 크기를 성공적으로 처리할 수 없습니다. 공개 키 크기는 64바이트의 배수여야 합니다.

인증서의 프라이빗 키 크기는 암호화된 키 교환 키와 호환되지 않습니다. 키 교환 키에 지정된 키 크기가 인증서의 프라이빗 키 크기와 일치하지 않습니다. 일반적으로 원격 컴퓨터의 인증서가 데이터베이스의 인증서와 일치하지 않음을 나타냅니다.

인증서의 공개 키 크기는 보안 헤더의 서명과 호환되지 않습니다. 보안 헤더에는 인증서의 공개 키로 유효성을 검사할 수 없는 서명이 포함되어 있습니다. 일반적으로 원격 컴퓨터의 인증서가 데이터베이스의 인증서와 일치하지 않음을 나타냅니다.
1

아래 표에서는 이 이벤트 클래스의 하위 클래스 값을 나열합니다.

ID Subclass 설명
1 보안 헤더 없음 보안 대화 중에 Service Broker는 세션 키가 포함되지 않은 메시지를 받았습니다. 보안 대화가 설정되면 대화 프로토콜에 대화의 모든 메시지에 세션 키가 포함되어야 합니다.
2 No Certificate Service Broker가 대화의 참가자 중 하나에 사용할 수 있는 인증서를 찾을 수 없습니다. 대화를 보호하려면 데이터베이스에 대화의 보낸 사람과 받는 사람 모두에 대한 인증서가 포함되어야 합니다.
3 잘못된 서명 Broker는 보낸 사람의 인증서에서 공개 키를 사용하여 보낸 사람에서 제공한 메시지 서명을 확인할 수 없습니다. 이는 메시지가 손상되었거나, 메시지가 변조되었거나, 원격 서비스와 로컬 서비스가 동일한 사용자 인증서로 구성되지 않았거나, 인증서가 만료되었음을 나타낼 수 있습니다.
4 실행 대상 오류 대상 사용자에게 대상 큐에 대한 수신 권한이 없습니다. 권한이 없는 사용자가 메시지를 받지 못하도록 하기 위해 Service Broker는 시작 사용자에게 메시지를 큐에 저장할 권한이 있는지 여부에 관계없이 큐에서 받을 수 없는 대상 사용자와 메시지를 큐에 넣기하지 않습니다.

참고 항목

SQL Server Service Broker