我有一個頁面需要更安全。基本上該頁面顯示了幾個電話號碼,並用html編寫。該服務器僅支持asp。並且只有2-3人將會訪問此頁面。我想最簡單的用戶名密碼腳本,只是爲了這個頁面。經典ASP單頁安全
這可能嗎?我所看到的大部分教程都是爲了設置兩頁而設計的。
不是數據庫驅動的,密碼/用戶名將會在代碼
我有一個頁面需要更安全。基本上該頁面顯示了幾個電話號碼,並用html編寫。該服務器僅支持asp。並且只有2-3人將會訪問此頁面。我想最簡單的用戶名密碼腳本,只是爲了這個頁面。經典ASP單頁安全
這可能嗎?我所看到的大部分教程都是爲了設置兩頁而設計的。
不是數據庫驅動的,密碼/用戶名將會在代碼
如果您在IIS上的Windows域環境中執行此操作,則可以根據登錄用戶限制該頁面。不需要任何形式。您必須確保服務器未設置爲允許匿名登錄。
domainUsername = Request.ServerVariables("AUTH_USER")
if domainUsername = "domain\usera" or domainUsername = "domain\userb" then
'show numbers
else
'show error
end if
這已經有一段時間,因爲我做了任何傳統的ASP,所以語法可能有點過,但基本上它看起來像:
<%
Function Login(username,password)
Login = False
If Trim(LCase(username)) = "somebodywhocanseethepage" And Trim(LCase(password)) = "opensaysame" Then
Login = True
End If
End Function
Sub WriteLoginForm()
%>
<form action="<%= Request.ServerVariables("SCRIPT_NAME") %>" method="post">
<input type="hidden" name="_TRIGGER" id="_TRIGGER" value="LOGIN" />
Username: <input type="text" name="username" id="username" /><br />
Password: <input type="password" name="password" id="password" /><br />
<input type="submit" value="Login" />
</form>
<%
End Sub
Sub WritePageContent()
%>
<h1>Phone Numbers</h1>
<ul>
<li>867-5309</li>
<li>911</li>
<li>2 8 1, 3 3 oh, eight zero zero fo'</li>
</ul>
<%
End Sub
If Request.Form("_TRIGGER") = "LOGIN"
If Login(Request.Form("username"),Request.Form("password"))
WritePageContent
Else
Response.Write "Login failed.<br />"
WriteLoginForm
End If
Else
WriteLoginForm
End If
%>
我沒有測試這個,但是如果它不是100%正確的,它非常接近,你可以調整它的工作方式,你需要它。如果您需要進行任何編輯,請告訴我,以便我可以爲未來的用戶更新答案。
只是檢查查詢字符串密碼。根據問題的要求,這非常簡單,我真的不敢在這個腳本中提供任何遠程敏感的東西,但對於絕對的基本保護,這應該就足夠了。
我將密碼從查詢參數名稱中刪除,因爲我確信很多人都會通過網絡嗅探那類數據。
例URL:
http://www.mysite.com/page.asp?mysecretquery=mypassword
<%
if request.querystring("mysecretquery") = "mypassword" then
%>
<html>
<body>
My data.
</body>
</html>
<%
else
response.write("Error")
end if
%>