0

我有一个内部公司网站,看起来像tools.mycompany.com. 现在,它只能从我的本地网络内部访问。用户访问此页面的方式是访问我公司的 sharepoint 内部网,类似于:intranet.mycompany.com. 该tools页面的链接在那里,用户可以单击。可以从“外部”网络访问 Intranet 站点,但必须提供 AD 凭据。

新目标是允许“外部”用户访问该tools.mycompany.com页面,但只能通过intranet.mycompany.com,因此他们已通过 AD 身份验证。

我的第一个想法是评估$_SERVER['HTTP_REFERER'], 并执行以下操作:

($_SERVER['HTTP_REFERER'] != 'intranet.mycompany.com') ? die('Didn't come from Intranet') : '';

但依靠$_SERVER['HTTP_REFERER']似乎不可靠。

是否有其他选项可以保护我的tools.mycompany.com页面免受未经授权的访问?并且不需要经过身份验证的用户重新输入他们的凭据?

4

1 回答 1

0

这是一种方法,您可以实施的安全级别取决于您。

在页面底部的共享点

<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;

?>

这绝对不是最好的方法,但它是一种快速简便的方法

于 2013-07-16T19:10:01.120 回答