Windows NT版本4.0使您能够在Windows NT RAS服务器上安装RAS管理DLL。当用户尝试连接或断开连接时,DLL会导出RAS服务器调用的函数。您可以使用该DLL执行以下管理功能:
*决定是否允许用户连接到服务器。除了标准RAS用户认证之外,还可以提供安全检查。
*记录每个用户连接到服务器并断开连接的时间。这对于计费或审计目的有用。
*为每个用户分配一个IP地址。这可以用于将用户的连接映射到特定计算机的安全性。
RasAdminAcceptNewConnection和RasAdminConnectionHangupNotification功能使DLL能够审核与服务器的用户连接。当用户尝试连接时,Windows NT RAS服务器将调用该DLL的RasAdminAcceptNewConnection函数。该函数可以防止用户连接。您还可以使用该函数在日志中生成条目以进行计费或审计。当用户断开连接时,RAS服务器调用DLL的RasAdminConnectionHangupNotification功能,可以记录用户断开连接的时间。
在RAS服务器对呼叫者进行身份验证之后,它调用该DLL的RasAdminGetIpAddressForUser功能来获取被拨入的远程客户端的IP地址。DLL可以使用此函数来提供将IP地址映射到拨入用户的备用方案。默认情况下,RAS服务器将远程用户连接到从静态IP地址池中选择的IP地址,或由动态主机配置协议(DHCP)服务器选择的IP地址。RasAdminGetIpAddressForUser功能允许DLL覆盖默认IP地址,并为每个用户指定一个特定的IP地址。RasAdminGetIpAddressForUser功能可以设置一个标志,导致RAS在用户断开连接时调用DLL的RasAdminReleaseIPAddress功能。DLL可以使用RasAdminReleaseIPAddress更新其用户到IP地址映射。
请注意,RAS执行在一个进程中分配IP地址的功能,并在另一个进程中执行连接和断开通知的功能。因此,DLL不应该依赖于两组函数之间的共享数据。
如果尝试加载RAS管理DLL或调用其中一个DLL的函数时发生错误,则RAS服务器会在系统事件日志中记录错误。这可能会发生,例如,如果DLL为导出的函数指定了错误的名称,或者如果它不包含.DEF文件中的函数名称。事件日志中的条目表示失败的原因。