c# – 从Windows身份验证中获取“ICredentials”
我正在使用
Windows身份验证.
我需要登录服务.它需要使用ICredentials对象进行身份验证,但宁愿避免要求用户再次输入其凭据. 有没有办法从当前登录的用户获取ICredentials? 该服务是TFS SDK. 解决方法
MVC中的控制器具有IPrincipal属性User.
http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.user%28v=vs.108%29.aspx IPrincipal具有Identity属性 http://msdn.microsoft.com/en-us/library/system.security.principal.iprincipal.identity%28v=vs.110%29.aspx 属于IIdentity类型 http://msdn.microsoft.com/en-us/library/system.security.principal.iidentity%28v=vs.110%29.aspx 如果您使用的是Windows身份验证,则实际实例的类型为WindowsIdentity http://msdn.microsoft.com/en-us/library/system.security.principal.windowsidentity%28v=vs.110%29.aspx 希望它包含您需要的所有凭据信息. 此外,您可能想尝试: Uri uri = new Uri("http://tempuri.org/"); ICredentials credentials = CredentialCache.DefaultNetworkCredentials; NetworkCredential credential = credentials.GetCredential(uri,"Basic"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |