iMail有三种用户数据接口方式: 。默认方式:存放于系统注册表中。 一、ODBC库表结构设置 imail提供了一个动态链接库odbcuser.dll,通过这个接口,imail可以使用odbc的数据源,在外部数据库中保存用户列表。odbcuser.dll已经在imail的安装目录下面。其vc++源程序可以在ftp://ftp.ipswitch.com/Ipswitch/Product_Support/IMail/odbcuser.zip下载到。打开odbcuser.zip中的readme.txt文件我们可以看到表结构定义(如下),依此建表。 Default ODBC Tables USERID – varchar(31)………..用户名 1、在系统DSN中添加相应系统数据源。 三、程序设计。 BTW: 若采用mysql做为用户数据,在添加用户时一定记住将USERDIR中的””字符replace为“\\”。 1.对于所有帐号,没有密码算法,所有的密码以明文显示,不保密! ODBC配置中只能用WIN NT 验证方式!用sqlserver 用WIN NT 验证方式!可成功产生表,并可正常登陆使用邮箱。 但又有新问题! 用WIN NT 验证方式连接另外服务器上的sqlserver 可正常生成用户(表里都保存了用户的信息),但无论是WEB,还是POP3形式都服务登陆邮箱,邮箱用户的身份无法通过!!!!??? [color=blue>解答: 用sqlserver 的 user 配完系统的ODBC后 后就一切正常了!
。系统帐号:用户数据依赖于nt/2000用户管理,此种方式常用于局域网环境中,而在互联网服务器应用中,系统帐号越少,则服务器被入侵的可能越少,自是不便使用。
。以ODBC接口方式连接的外部数据库方式。
——————-
The default ODBC table consists of 9 entries:
PASSWORD – varchar(31)………密码
FULLNAME – varchar(63)………全名
USERDIR – varchar(255)………用户目录
MAILADDR – varchar(255)……..邮件地址(如abc@my.com)
MAXSIZE – integer…………..最大邮件大小
MAXMSGS – integer…………..最大消息大小
FLAGS – integer
TYPE – integer
NUMTRIES – integer
ATTEMPTTIME – integer
NUMTIMESSUSP – integer
LASTLOGIN – integer
SPNDUSRACCT – integer
ICALENBL – integer
SPELLENBL – integer
NUMSGSTNS – integer
IWDEPTH – integer
IWOPTIONS – integer
SPELLCHKG – integer
PRVWSIZE – integer
DEFVIEW – varchar(40)
TIMEZONE – varchar(255)
STRTDAY – integer
DEFCALNM – varchar(40)
ENTRYGRNL – integer
STARTTIME – integer
ENDTIME – integer
MAXEVNTDISP – integer
MAXTSKDISP – integer
MAXNOTEDISP – integer
MAXDLYRCURCNT – integer
MAXWKLYRCURCNT – integer
MAXMONRCURCNT – integer
MAXYRLYRCURCNT – integer
DISPCMPLTDTSKS – integer
HOURSCLOCK – integer
MAXSRCHRESPPG – integer
MAXEVENTTITLELEN – integer
MAXTASKTITLELEN – integer
CONFIRMONDELETE – integer
二、创建系统DSN并设置iMail采用ODBC方式。
2、在iMail Administrator中选取主机,将radio按钮设为“Extenal Database”,选择Configure…按钮进行ODBC设置。
3、搞定
由于iMail用户数据存储于数据库中,添加用户自然可以用asp/php/jsp等web程序对数据表做相应操作即可。
创建abc@my.com的邮件,只需要向库中添加“abc”的USERID记录,再添加 相应的用户目录即可。
删除、修改。。。等操作也都较为简单,不再废话。
——————————————————–
2.对于非本机的SQL,ODBC测试是通过的,但在Imail中却无法加入用户信息.(提示存取错误).
3.无法使用该方式修改邮件用户列表.
4.用ODBC连接SQL做外部数据库,从其他邮件系统给imail发邮件总是报550:unknown user的错误。
5.用外部数据库(sqlserver)时遇到问题!
user(例如:SA) IMAIL 出错,连接数据库失败!
SYSLOG 中信息是:
04:10 22:03 ODBC(220358100) (Table: (null)) Initialize:SQLDriverConnect (Check userid and password on server.)
04:10 22:03 ODBC(220358100) (Table: root_net) IsValidTable:SQLAllocHandle-hStmt
04:10 22:03 ODBC(220358100) (Table: root_net) CreateTable ERROR SQLAllocHandle
04
数据库的信息的传输是有安全保障的。这是由SQL Server 控制的。 SQL Server 已经考虑到了数据传输的安全性的。数据库中的数据是否加密是没有关系的。
如果你没有办法保存信息,请你检查你的sql server 的用户权限设置。
For users using SQL 7.0 or above: In the ODBC Data Source Name input the line: IMAILSECDB; UID=username; PWD=password. The user name and password need to be the user ID and password for the SQL database and not an IMail Server account.
再在IMAIL EXTERNAL DATABASE 的CONFIG里
用
IMAILSECDB; UID=username; PWD=password
iMail是一种非常优秀的基于win平台的mail server程序,在中小型应用中受到广泛的欢迎。