Php 从Sharepoint门户评估推荐人
我有一个类似于Php 从Sharepoint门户评估推荐人,php,iis-7,sharepoint-2010,Php,Iis 7,Sharepoint 2010,我有一个类似于tools.mycompany.com的公司内部网站。现在,它只能从我的本地网络中访问。用户访问此页面的方式是访问我公司的sharepoint intranet,类似于:intranet.mycompany.com。那里有工具页面的链接,用户可以单击。可以从“外部”网络访问intranet站点,但必须提供广告凭据 新的目标是允许“外部”用户访问tools.mycompany.com页面,但只能通过intranet.mycompany.com,因此他们已通过AD认证 我的第一个想法是
tools.mycompany.com
的公司内部网站。现在,它只能从我的本地网络中访问。用户访问此页面的方式是访问我公司的sharepoint intranet,类似于:intranet.mycompany.com
。那里有工具
页面的链接,用户可以单击。可以从“外部”网络访问intranet站点,但必须提供广告凭据
新的目标是允许“外部”用户访问tools.mycompany.com
页面,但只能通过intranet.mycompany.com
,因此他们已通过AD认证
我的第一个想法是评估$\u服务器['HTTP\u REFERER']
,然后执行以下操作:
($_SERVER['HTTP_REFERER'] != 'intranet.mycompany.com') ? die('Didn't come from Intranet') : '';
但是依赖$\u服务器['HTTP\u REFERER']
似乎不可靠
是否有其他选项保护我的
tools.mycompany.com
页面不被未经授权的访问?并且不要求经过身份验证的用户重新输入其凭据?这里有一种方法,您可以实现的安全级别取决于您自己
在页面底部的sharepoint中
<img src="http://tools.mycompany.com/sso/?x=encryptedstring" width="1" height="1" />
关于工具
<?php
session_start();
// here is where you could add some security if decrypted $_GET[x] == $_SERVER['REMOTE_ADDR']
$_SESSION['isLoggedIn'] = 1;
?>
这显然不是最好的方法,但这是一种让sharepoint在“转到intranet”链接中生成令牌的快捷方法。令牌将是一个加密的“是的,这是一个授权点击”类型的消息,PHP端可以对其进行解密。如果解密不正确,则不是授权点击。