imail使用外部数据库在sqlserver上的应用

王朝mssql·作者佚名  2008-05-30
窄屏简体版  字體: |||超大  

imail使用外部数据库保存用户列表在sqlserver上的应用。

以前一篇文章对imail如何使用外部数据库保存用户数据作了一个简单的描述,对于access由于没有什么权限方面的设置,所以比较简单,如果按照ipswitch的文档创建数据表正确的话,基本上就不会有其他的问题了。而对于sqlserver,由于有权限的问题,所以配置如果不行的话,则不能正常工作。

对于数据表的字段类型,以前已经说过了,现在主要说说配置odbc连接的方法。

一:imail使用外部数据源保存用户的原理

imail通过一个动态链接库(odbcuser.dll)通过odbc实现对外部数据库的访问和操作,由于这个链接库比较简单,只是注重于对表的操作,没有提供用户账号方面的功能。也就是说使用的odbc必须不再需要身份验证,对于access,默认本来就是不存在的,而对于sqlserver必须有一个身份验证的过程,这样的话,我们可以采取NT的验证方式来配置sqlserver的odbc连接,这样在使用该dsn的时候,可以不必提供用户名和密码去到sqlserver上进行验证了。

二:如何配置sqlserver的odbc连接?

1、对于sqlserver在本地的情况

这种情况比较简单,创建sqlserver的系统dsn的时候,直接将验证方式设置为Windows NT验证,配置默认的数据库,完成就可以了。

2、对于sqlserver在局域网或者远程的情况

由于必须要使用Windows NT的验证方式,并且对sqlserver的imail数据表要有插入删除的权限,那么两台机器之间的信任连接的创建并不能通过域信任关系创建(因为internet的服务器并不需要安装成域控制器,简单的情况下也不应该安装成域控制器,再者即便是两台机器都是域控制器,通过创建的域信任关系未必能够实现sqlserver的验证,对此没有作过试验),通过试验表明,如果两台机器的管理员(administrator)的用户名和密码一致的话,就能够直接通过了NTLM的验证,那么同时,sqlserver由于正是采用了NT的验证方式,所以也是可以配置成不需要sql的验证的dsn。这样在创建dsn的时候,sql服务器输入实际的sqlserver服务器的IP地址,验证方式仍然选择NT验证,配置好默认的数据库,就可以了。

注意:使用外部数据库保存用户列表,用户密码是以明文方式保存的,这样必须要保护好数据库不被非法存取。使用注册表保存的方式,密码是加密保存的。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航