在我的老公司,我們有一個內部網站設置,只允許你查看它,如果你的網址末尾有密碼的話,我認爲是使用AJAX,但我不太確定,即使它是我的我不知道如何編碼。通過URL和AJAX內部密碼保護?
這個URL看起來像這樣:internal.mysite/secretpanel?pass = superman,如果你輸入了超人之外的任何東西,它會將你重定向到不正確的pass頁面。
我的問題是如何檢查URL的密碼並重定向到「密碼錯誤」頁面?
在我的老公司,我們有一個內部網站設置,只允許你查看它,如果你的網址末尾有密碼的話,我認爲是使用AJAX,但我不太確定,即使它是我的我不知道如何編碼。通過URL和AJAX內部密碼保護?
這個URL看起來像這樣:internal.mysite/secretpanel?pass = superman,如果你輸入了超人之外的任何東西,它會將你重定向到不正確的pass頁面。
我的問題是如何檢查URL的密碼並重定向到「密碼錯誤」頁面?
你所描述的聽起來不像AJAX,也是一個可怕的不安全系統(甚至就內部系統而言)。
如果您使用的是PHP,您可能需要查看會話,而不是將URL作爲查詢字符串的一部分傳遞給密碼。一個簡單的實現就是有一個登錄頁面,用於檢查從表單發佈的值,然後將您重定向到包含祕密的頁面。
的login.php
session_start();
if (isset($_POST['username']) && isset($_POST['password']))
{
// Check to see if the username and password is correct
if (user_is_valid_user($_POST['username'], $_POST['password'])
{
$_SESSION['logged_in'] = true;
// Redirect to your secret page
header("Location: http://mysite.com/secret.php");
}
}
else
{
// Display the login form
echo "<form method=\"post\" action=\"login.php\">";
echo " <input type=\"input\" name=\"username\" />";
echo " <input type=\"password\" name=\"password\" />";
echo " <input type=\"submit\" value=\"Login\" />";
echo "</form>";
}
secret.php
session_start();
if (!isset($_SESSION['logged_in']))
{
// Redirect to the login page since user is not logged in
header("Location: http://mysite.com/login.php");
}
// Display your secret content here
因此,如果我使用PHP,我會如何完成這樣的事情? – 2012-04-21 01:05:28
對於任何安全的事情,我都不想保留一個工具,不要讓這個工具與本部門內部的人員混在一起。 – 2012-04-21 01:07:41
使用$ _GET [ '密碼'(或將要作爲 「密碼」 變量使用的任何名稱名稱)。將其分配給變量或直接與服務器保存的變量進行比較。如果你不關心安全性,也不需要清理它,儘管ceejayoz是正確的,如果你想要安全性,使用張貼變量,這樣沒有人可以「碰巧看下」並看到url密碼。
我很欣賞每個人對安全的關注,這很有幫助,但我對URL密碼的原始問題更感興趣,它不是爲了安全,而是爲了速度,最後是安全。 – 2012-04-22 08:15:14
你可以使用if($ _GET ['password']!=「superman」){header(「Location:someotherpage.com」); } – 2012-04-22 08:19:35
也就是說,我們推薦安全性更改的原因是,您現在的方案可能沒有安全性。 – 2012-04-22 08:20:50