0

我特别需要获取用于调用服务方法的客户端证书。这是为了对不同的客户做出不同的反应。

4

1 回答 1

1

在您的操作代码中,您可以检查以下内容:

OperationContext.Current

或者

ServiceSecurityContext.Current

但我不确定您是否可以从中访问实际的客户端证书。

ServiceSecurityContext.Current.PrimaryIdentity包含IIdentity当前呼叫者的一个 - 如果它为 NULL,那么您正在处理一个匿名呼叫。否则,PrimaryIdentity 将是几种可能的身份类型之一,具体取决于调用用户的身份验证方式 - 它可能是 Windows 身份或其他身份 - 取决于您的方案。

有关X.509 和 WCF 的更多信息,请参阅此博客文章。

于 2009-12-14T15:26:05.077 回答