Est-il possible d'extraire des informations sur le certificat client utilisé dans ma méthode de service Web lors de l'utilisation de <security mode="Transport>
? J'ai passé au crible OperationContext.Current mais je n'ai rien trouvé d'évident.Informations de certificat du service WCF utilisant le mode de sécurité Transport
Ma configuration du serveur est la suivante:
<basicHttpBinding>
<binding name="SecuredBasicBindingCert">
<security mode="Transport">
<message clientCredentialType="Certificate" />
</security>
</binding>
</basicHttpBinding>
Je travaille avec un tiers pub/sous-système qui utilise malheureusement DataPower pour l'authentification. Il semble que si j'utilise WCF avec cette configuration, je suis incapable de glaner des informations sur l'appelant (puisque aucune information d'identification n'est réellement envoyée).
Je dois d'une manière ou d'une autre être capable de savoir qui fait des appels à mon service sans changer ma configuration ou leur demander de changer leur charge utile.
Je considère tirer parti de l'adresse du point de terminaison en lui ajoutant simplement une chaîne de requête unique. QueryString peut être lu via '(((System.ServiceModel.Channels.HttpRequestMessageProperty) System.ServiceModel.OperationContext.Current.IncomingMessageProperties [System.ServiceModel.Channels.HttpRequestMessageProperty.Name]). QueryString' – Langdon