Contrôle de l’authentification du client
La meilleure méthode d’authentification d’un client consiste à installer une fonction de rappel de sécurité à l’aide de la fonction RpcServerRegisterIf2 ou RpcServerRegisterIfEx . accepte une fonction de rappel de sécurité comme argument. Lorsque la fonction de rappel de sécurité est appelée, effectuez les vérifications nécessaires. Les attributs sur la connexion, l’identité de l’appelant, ou les deux, peuvent être vérifiés. Pour case activée les attributs d’une connexion, appelez la fonction RpcServerInqCallAttributes ou RpcBindingInqAuthClient. Cela permet le filtrage des clients qui ne sont pas authentifiés, des clients qui utilisent un fournisseur de sécurité spécifique ou des clients qui n’utilisent pas une protection suffisamment forte (comme la confidentialité).
Pour autoriser l’accès à un sous-ensemble d’utilisateurs authentifiés, utilisez RpcGetAuthorizationContextForClient. Cette fonction retourne un contexte client Authz qui peut être utilisé pour effectuer des vérifications d’accès très sophistiquées. Par exemple, cette méthode peut être utilisée pour autoriser l’accès uniquement aux vice-présidents dans un organization pendant les heures normales de bureau, et au pdg pendant toute heure à l’aide des services Active Directory pour mapper un nom d’utilisateur à leur titre. Vous pouvez emprunter l’identité de l’utilisateur et obtenir son nom. Une fois leur identité connue, toutes les vérifications souhaitées peuvent être effectuées.