Langue

StreamWebSocket.ServerCustomValidationRequested Événement

Définition

Se produit lorsqu’une nouvelle connexion StreamWebSocket à un URI de serveur sécurisé (wss : protocole) est validée. Gérez cet événement si vous souhaitez implémenter la validation de serveur personnalisée pour la connexion.

// Register
event_token ServerCustomValidationRequested(TypedEventHandler<StreamWebSocket, WebSocketServerCustomValidationRequestedEventArgs const&> const& handler) const;

// Revoke with event_token
void ServerCustomValidationRequested(event_token const* cookie) const;

// Revoke with event_revoker
StreamWebSocket::ServerCustomValidationRequested_revoker ServerCustomValidationRequested(auto_revoke_t, TypedEventHandler<StreamWebSocket, WebSocketServerCustomValidationRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<StreamWebSocket,WebSocketServerCustomValidationRequestedEventArgs> ServerCustomValidationRequested;
function onServerCustomValidationRequested(eventArgs) { /* Your code */ }
streamWebSocket.addEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
streamWebSocket.removeEventListener("servercustomvalidationrequested", onServerCustomValidationRequested);
- or -
streamWebSocket.onservercustomvalidationrequested = onServerCustomValidationRequested;
Public Custom Event ServerCustomValidationRequested As TypedEventHandler(Of StreamWebSocket, WebSocketServerCustomValidationRequestedEventArgs) 

Type d’événement

Configuration requise pour Windows

Configuration requise Description
Famille d’appareils
Windows 10 Anniversary Edition (introduit dans 10.0.14393.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v3.0)

Remarques

Notez que cet événement est déclenché une fois la validation du système d’exploitation par défaut effectuée avec succès, et que la validation du système d’exploitation par défaut inclut la prise en compte de l’option de contrôle IgnorableServerCertificateErrors .

Utilisez les propriétés WebSocketServerCustomValidationRequestedEventArgs pour accéder au certificat de serveur et aux certificats intermédiaires proposés pour la validation.

Pour garantir l’achèvement approprié, si votre processus de validation personnalisé implique des opérations asynchrones, veillez à utiliser la méthode WebSocketServerCustomValidationRequestedEventArgs.GetDeferral pour obtenir un objet de report que votre gestionnaire d’événements contient pendant la durée de l’opération de validation. Une fois votre validation terminée, vous devez appeler Deferral.Complete , que vous acceptiez ou rejetiez la validation.

Par exemple, le type de validation que vous pouvez effectuer dans ce gestionnaire d’événements peut être un exemple : vous pouvez comparer le certificat de serveur à un certificat approuvé stocké localement qui correspond au certificat de serveur attendu. Dans votre gestionnaire d’événements, vous comparez le hachage SHA-256 du certificat local au hachage du certificat serveur. Si les valeurs de hachage correspondent, les certificats sont supposés correspondre et la validation du serveur doit réussir. Si les valeurs de hachage ne correspondent pas, les certificats ne correspondent pas et la validation doit échouer.

Pour indiquer l’échec de validation, appelez la méthode WebSocketServerCustomValidationRequestedEventArgs.Reject . Pour indiquer la réussite de la validation, retournez simplement à partir du gestionnaire d’événements.

Notez que si la validation réussit ou échoue, vous devez appeler Deferral.Complete sur l’objet de report que vous avez acquis lorsque vous avez démarré le processus de validation.

S’applique à