|
T型狗的使用需要结合IE浏览器终端技术。在本软件附带的Demo中,演示了如何使用T型狗。
1)、您需要使用SetTDongle.exe来为您的终端用户设置T型狗,并请记住输入的密码,这里记为 KEY1 。
2)、您需要让您的终端用户下载或者拷贝USBDriver.exe到他的电脑中,并运行它以注册加密狗驱动文件。驱动文件最后会被放置到终端用户的"%System32"目录中
,包括:AspEnc.dll, AspEnc1.dll,AspEncX.dll和S2LLin.DLL四个文件。
您可以在网站的登录页面(比如下面的Index.asp)中提供一个下载USBDriver.exe的链接。
3)、让您的终端用户设置您的网站(不管是Interne还是Intranet上的)为一个可信站点。其目的是让您的网页在该终端用户的IE中调用S2LLin.dll组件以检测T型狗时,不会弹出IE安全提示窗口。方法是:
|

图一,IE-->“工具”菜单-->“Internet”选项-->“安全”页面,
点击“可信站点”,然后点击“站点(s)...”按钮。
|
|

图二,把您的网站的域名添加进去(上图中的http://127.0.0.1就是一个域名,
您应该替化为自己的域名,比如:http://www.xxx.com等),
同时取消“需要该区域中的所有站点的服务器证书(https:)(S)”的选择。
|
|

图三,再在图一界面中点击“自定义级别(C)...”按钮,在出现的“安全设置”窗口中,
把“对没有标记为安全的 ActiveX 控件进行初始化和脚本运行”和“下载未签名的ActiveX控件”设置为“启用”,。
|
4)、(注意:下面提到的ASP文件,必须使用AspApp进行加密,然后才能正确访问)在首页文件Index.asp中的FORM部分,嵌入了如下的代码:
<!-- ============= T型狗检查的主要代码开始
============= -->
<!-- 下面的一段代码最好不要修改。代码要点: 必须放置在Form中;-->
<input type=hidden name="AspApp_TerminateDongleInfo"
id="AspApp_TerminateDongleInfo">
<script language="VBScript">
function DogInfo()
DogInfo = ""
On Error Resume Next
set S2LLin = CreateObject( "S2LLin.CheckDog" )
if err<>0 then
Alert("S2LLin.dll not Probably installed on this
PC!" & vbCrLf & vbCrLf &
"S2LLin.dll没有被正确地安装!请下载并安装!")
else
<%
Rand_Session_Name = "AspApp_RandNumber"
Randomize
SESSION(Rand_Session_Name) = Int(65535 * Rnd)
%>
S2LLin.Check <%=SESSION(Rand_Session_Name)%>, temp
DogInfo = temp
end if
set S2LLin =nothing
end function
</script>
<script language="JavaScript">
//注意:下面一行代码中的loginfrm和AspApp_TerminateDongleInfo应该和您在上面的对应对象命名相一致
document.loginfrm.AspApp_TerminateDongleInfo.value=DogInfo();
</script>
<!-- ============= T型狗检查的主要代码结束 ============= --> |
其中的 SESSION(Rand_Session_Name),也就是
SESSION("AspApp_RandNumber"),是一个随机的加密密钥,是必需的。
Index.asp的FORM数据提交到DoLogin.asp后,先判断用户有没有通过Index.asp提交数据(根据SESSION("AspApp_RandNumber")是否为空来判断),然后检查USB
T型狗的信息是否正确。AspApp_InnerControl.CheckTDongle()函数存在于AspApp加密组件ASPAPPG.DLL中,所以WEB服务器上需要注册有AspApp加密软件
的组件(任何一个AspApp最新版本均可)。最后才是用户名和口令检验。检验通过后进入主要的工作页面
Main.asp。至此,T型狗就可以起到应有的作用了。
<%
SESSION("logged_in") = "N"
Rand_Session_Name = "AspApp_RandNumber"
if (SESSION(Rand_Session_Name)="") then
Response.write "超时错误"
else
' 下面的AspApp_InnerControl.CheckTDongle函数有三个参数,
'最后一个参数(下面例子中是"123456")必须与使用"设置终端USB加密狗"程序设置
'对应加密狗时输入的校验码 KEY1 相一致
if
AspApp_InnerControl.CheckTDongle(SESSION(Rand_Session_Name),
Request.form("AspApp_TerminateDongleInfo"),
"123456") <> "0" then
Response.write "校验出错,说明终端没有插入合法的T型狗"
'Response.Redirect "index.asp"
else
'通过了加密狗检查,下面检查用户名和口令。这部分可以替换为您自己的用户名、口令检查代码
if (Request.form("LoginName")="Admin") and (Request.form("passwd")="12345")
then
'用户名、口令检查正确
SESSION("logged_in") = "Y"
Response.Redirect "main.asp"
else
Response.write "用户名、口令检查错误"
'Response.Redirect "index.asp"
end if
end if
end if
%> |
|