当前位置: 代码迷 >> SharePoint >> 在Single Sign On环境中认证用户,该怎么解决
  详细解决方案

在Single Sign On环境中认证用户,该怎么解决

热度:308   发布时间:2016-05-02 06:58:54.0
在Single Sign On环境中认证用户
之前的代码,用来从文档库下载文件,使用WebClient+NetworkCredential的方式认证用户和下载文件。在Form认证或者AD认证的情况下,输入用户名和密码即可通过认证下载文件,但是在SSO环境中,这样不行了,有人写过在SSO环境中下载文件的代码吗?主要是认证的代码。
代码很简单:
                using (WebClient client = new WebClient())
                {
                    ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;
                    
                    NetworkCredential credential = new NetworkCredential(UserName, Password);
                    credential = new NetworkCredential(UserName, Password, Domain);
                    client.Credentials = credential;
                    ... ...
                    byte[] byteData = client.DownloadData(jobSetting.FilePath);
                }
------解决思路----------------------
SSO 单点环境中哦
方式很多哦,

要看怎么搭建的 总之 你都要去去获取 当前用户信息的。你的代码获不到吗? 

NetworkCredential credential = new NetworkCredential(UserName, Password);
                    credential = new NetworkCredential(UserName, Password, Domain);

要看他们是怎么搭建的  抓一下。 令牌,  Kerberos 等等  你哪里获取 就行了。 
------解决思路----------------------
NetworkCredential(UserName, Password, Domain);
 感觉参数是不是有问题,既然sp是ADFS认证了,后面domain也应该填写adfs认证的标识,而非域名?
------解决思路----------------------
Check
不太了解ADFS,你看看这个有用没
  相关解决方案