作者:胡舜良
本 人 在 维 护 公 司 内 部 网 站 时 碰 到 一 个 实 际 问 题 — —MIS 主 管 要 求 将 一 些 技 术 文 件 放 在 网 页 上, 且 只 能 让MIS 的 员 工 浏 览。 这 就 涉 及 到 如 何 对 网 页 保 密 的 问 题。
最 初 我 借 助FrontPage 和Vbscript 设 计 了 一 种 方 案, 链 接MIS 技 术 页( 此 处 预 设 为actpwdrst.htm) 之 前, 先 链 接actpwd.htm 输 入 名 称 和 密 码( 此 处 名 称 和 密 码 都 预 设 为“mis”), 只 有 正 确 输 入 后, 才 能 链 接 到actpwdrst.htm。 以 下 是 它 们 的 代 码。
Actpwd.htm 代 码 如 下:
< html >
< head >
< title > 密 码< /title >
< /head >
< body >
< form name=“form1” >
< input type=“hidden”
name=“VTI-GROUP”_ value=“0” >
< div align=“center” >< center >< p >
名 称< input type =“text”
name=“T1” size=_“20” >
密 码< input type =“password”
name=“T2”_ size=“20” >
< input type=“button” value=“
确 认”_ name=“B1” >
< /p >< /center >< /div >
< /form >
< p >
< script language=“vbscript” >
< !-
sub b1_onclick()
if form1.t1.value=“mis” and_ form1.t2.value=“mis” then
document.location=_“actpwdrst.htm”
else
m1=msgbox(“ 密 码 错 误_
”,0+48, “Warring”)
end if
end sub
// -- >
< /script >
< /p >
< /body >
< /html >
Actpwdrst.htm 代 码 如 下:
< html >
< head >
< title > 密 码< /title >
< /head >
< body >
< p align=“center” >
< font face=“ 标 楷 体” size=“7” color=“0000ff” >
< strong >
你 已 成 功 登 录 !
< /strong >
< /font >
< /p >
< /body
< /html >
细 心 的 朋 友 可 能 已 发 现 这 种 方 案 的 不 可 靠 性 — — 输 入 和 判 断 都 在actpwd.htm 中 完 成, 不 管 输 入 的 名 称 和 密 码 是 不 是 正 确 的, 只 要 记 住 了actpwdrst.htm 所 在 的URL, 根 本 就 不 需 要 通 过actpwd.htm 就 可 直 接 链 接actpwdrst.htm。 所 以 这 种 方 案 的 保 密 系 数 就 不 是 很 好。
下 面 看 看 采 用 ASP 设 计 的 方 案。 链 接MIS 技 术 页( 此 处 预 设 为 asppwdrst.asp) 之 前, 先 链 接asppwd.asp 输 入 名 称 和 密 码( 此 处 名 称 和 密 码 都 预 设 为“mis”), 只 有 正 确 输 入 后, 才 能 链 接 到asppwdrst.asp。 以 下 是 它 们 的 代 码。
Asppwd.asp 代 码 如 下:
< html >
< body >
< form name=“form1” action=
“asppwdrst.asp” method_
=“POST” >
< input type=“hidden” name=
“VTI-GROUP” value=_“0” >
< div align=“center” >< center >< p >
名 称< input type=“text”
name=“T1” size=“20” >
密 码< input type =
“password” name=“T2” size=_“20” >
< input type=“submit” value=
“ 确 认” name=_“B1” >
< /p >< /center >< /div >
< /form >
< /body >
< /html >
Asppwdrst.asp 代 码 如 下:
< html >
< % if rtrim(request.form(“t1”))=
“mis” and_ rtrim(request.form(“t2”))=
“mis” then % >
< body >
< p align=“center” >< font face=
“ 标 楷 体” size=“7”_ color=“#0000ff” >
< strong > 你 已 成 功 登 录 !
< /strong >< /font >< /p >
< /body >
< % else % >
< body >
< p align=“center” >< font face=
“ 标 楷 体” size=“7”_ color=“#0000ff” >
< strong > 请 输 入 正 确 的 用 户 名 和 密 码
< /strong >< /font >< /p >
< /body >
< % end if % >
< /html >
在 这 个 方 案 里asppwd.asp 只 提 供 输 入 的 功 能, 而 名 称 和 密 码 的 确 认 工 作 由asppwdrst.asp 来 做。 这 样 即 使 您 记 住 了asppwdrst.asp 所 在 的URL, 也 看 不 到 具 体 的 内 容。 所 以 用 这 种 方 案 设 计 的 网 页 保 密 系 数 就 很 高。