从其它系统登录到SharePoint 2010系统的单点登录


 

 
 
以前做的只是使用SharePoint的单一登录,用SharePoint去登录其他的系统,现在要反过来,用Form认证的系统来登录SharePoint。

我们都知道,SharePoint使用的是域认证系统,登录到SharePoint系统上,用户必须要有一个域账号。但是这个域账号跟别的账号不一样。它的密码是不可能获取到的。这也就造成了其它系统和SharePoint系统的整合的困难。

我们大部分都会把SharePoint系统作为主系统来用,即使有别的系统,也是从SharePoint系统去登录到别的系统来用。在SharePoint系统中去登录别的系统,这个很容易实现。因为别的系统大部分用户名和密码都是可以获取到的,所以实现起来比较容易。

而从别的系统登录到SharePoint系统中,相对来说,有一定的困难,主要原因就是域账号很难得到。这样和别的系统形不成统一。

但是在这里可以使用AJAX技术,很巧妙的实现这种功能,且非常容易。

首先要在登录页面加入jquery-1.4.1.js的引用。因为本次使用的AJAX技术来自Jquery。还是贴代码吧:

<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>

<script type="text/javascript">

function InitAjax() {

var ajax = false;

try {

ajax = new ActiveXObject("Msxml2.XMLHTTP");

}

catch (e) {

try {

ajax = new ActiveXObject("Microsoft.XMLHTTP");

}

catch (E) {

ajax = false;

}

}

if (!ajax && typeof XMLHttpRequest != 'undefined') {

ajax = new XMLHttpRequest();

}

return ajax;

}

function Login() {

try {

var strName = '域名\用户名';

var strPWD = '密码';

var location = 'SharePoint站点地址';

var ajax = new InitAjax();

ajax.open('post', location, false, strName, strPWD);

ajax.send();

if (ajax.status == 200) {

window.location.href = location;

}

}

catch (e)

{ }

}

</script>
上面的脚本代码完成之后,使用一个button即可实现登录:
<input type="button" value="登录" onclick="Login()" />

原文地址:https://www.cnblogs.com/914556495wxkj/p/3713364.html