MessageWebSocket.ServerCustomValidationRequested 이벤트
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
보안 서버 URI(wss: 프로토콜)에 대한 새 MessageWebSocket 연결의 유효성을 검사할 때 발생합니다. 연결에 대한 사용자 지정 서버 유효성 검사를 구현하려는 경우 이 이벤트를 처리합니다.
// Register
event_token ServerCustomValidationRequested(TypedEventHandler<MessageWebSocket, WebSocketServerCustomValidationRequestedEventArgs const&> const& handler) const;
// Revoke with event_token
void ServerCustomValidationRequested(event_token const* cookie) const;
// Revoke with event_revoker
MessageWebSocket::ServerCustomValidationRequested_revoker ServerCustomValidationRequested(auto_revoke_t, TypedEventHandler<MessageWebSocket, WebSocketServerCustomValidationRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<MessageWebSocket,WebSocketServerCustomValidationRequestedEventArgs> ServerCustomValidationRequested;
function onServerCustomValidationRequested(eventArgs) { /* Your code */ }
messageWebSocket.addEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
messageWebSocket.removeEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
- or -
messageWebSocket.onservercustomvalidationrequested = onServerCustomValidationRequested;
Public Custom Event ServerCustomValidationRequested As TypedEventHandler(Of MessageWebSocket, WebSocketServerCustomValidationRequestedEventArgs)
이벤트 유형
Windows 요구 사항
디바이스 패밀리 |
Windows 10 Anniversary Edition (10.0.14393.0에서 도입되었습니다.)
|
API contract |
Windows.Foundation.UniversalApiContract (v3.0에서 도입되었습니다.)
|
설명
이 이벤트는 기본 OS 유효성 검사가 성공적으로 수행된 후에 발생하며, 기본 OS 유효성 검사에는 IgnorableServerCertificateErrors 컨트롤 옵션을 고려한 작업이 포함됩니다.
WebSocketServerCustomValidationRequestedEventArgs 속성을 사용하여 유효성 검사를 위해 제공되는 서버 인증서 및 중간 인증서에 액세스합니다.
적절한 완료를 보장하기 위해 사용자 지정 유효성 검사 프로세스에 비동기 작업이 포함된 경우 WebSocketServerCustomValidationRequestedEventArgs.GetDeferral 메서드를 사용하여 이벤트 처리기가 유효성 검사 작업 기간 동안 보유하는 지연 개체를 가져와야 합니다. 유효성 검사가 완료되면 유효성 검사를 수락하거나 거부할지 여부에 관계없이 Deferral.Complete 를 호출해야 합니다.
이 이벤트 처리기에서 수행할 수 있는 유효성 검사 종류의 예로 서버 인증서를 예상 서버 인증서와 일치하는 로컬로 저장된 신뢰할 수 있는 인증서와 비교할 수 있습니다. 이벤트 처리기에서 로컬 인증서의 SHA-256 해시를 서버 인증서의 해시와 비교합니다. 해시 값이 일치하면 인증서가 일치한다고 가정하고 서버 유효성 검사가 성공해야 합니다. 해시 값이 일치하지 않으면 인증서가 일치하지 않으며 유효성 검사가 실패합니다.
유효성 검사 실패를 나타내려면 WebSocketServerCustomValidationRequestedEventArgs.Reject 메서드를 호출합니다. 유효성 검사 성공을 나타내려면 이벤트 처리기에서 반환하기만 하면됩니다.
유효성 검사가 성공하거나 실패하는지 여부는 유효성 검사 프로세스를 시작할 때 획득한 지연 개체에서 Deferral.Complete 를 호출해야 합니다.