混合身份验证模式:使用WCF通过HTTP发送Kerberos令牌和用户名令牌

时间:2010-01-12 23:06:11

标签: wcf authentication service kerberos

是否可以使用WCF通过HTTP发送用户名令牌和kerberos令牌?

我们可以使用身份验证模式设置为“UserNameOverTransport”的自定义绑定,根据OASIS Web服务安全标准,它将在SOAP标头中包含用户名标记。

或者可以将身份验证模式设置为“KerberosOverTransport”,它将在SOAP标头中包含Kerberos令牌。

然而,我们尝试通信的服务需要验证使用kerberos令牌和放大器。用户名令牌。现有的身份验证模式似乎无法实现。

1 个答案:

答案 0 :(得分:0)

令牌(它是一个Kerberos令牌)实际上嵌入了用户名。因此,如果您需要与需要两者的服务进行通信,那么您将需要使用KerberosOverTransport

然后,您需要将令牌传递给constructor of WindowsIdentity which asks for an IntPtr

构建完成后,您可以通过name property访问用户名。您可以在此处找到几乎所需的代码(无记录位):

http://kseesharp.blogspot.com/2009/04/c-create-windowsidentity-from-userid.html