学习Oracle GoldenGate时,在linux上创建了用户,以自己的名字作为user,授予DB2ADM权限后登陆不上,原来是用户名超过了8个字符。DB2只是提示”USER AND/OR PASSWORD INVALID”,很不人性化哎~。
DB2 UDB 用户和组帐户命名规则
在 DB2 UDB 中,用户和组帐户必须遵守表 1 和 2 中所述的命名规则。这些限制是在定义帐户的外部设施中起作用的限制之外增加的。
表 1. 平台约束和限制 | ||
限制 | Windows | Linux/UNIX |
组名长度 | 最多 30 个字符 | 最多 30 个字符 |
用户名长度 | 最多 30 个字符 (1) (2) | 最多 8 个字符 |
大小写 | 大小写不敏感 | 仅使用小写 |
(1) Windows NT®、Windows 2000®、Windows XP® 和 Windows Server® 2003 现在实际上限制为 20 个字符。
(2) 如果不使用 Client 身份验证,对于连接到 Windows NT、Windows 2000、Windows XP 和 Windows Server 2003 的非 Windows 32 位客户机,在明确指定用户名和口令时支持使用超过 8 个字符的用户名。
表 2 显示了对所有平台的命名限制。
表 2. 所有平台的命名限制 | |
规则 | 值 |
不允许使用保留字 | USERS、ADMINS、GUESTS、PUBLIC (3)、LOCAL 以及任何 SQL 保留字 |
非法首字符 | IBM、SQL、SYS、数字或者下划线字符 |
禁止的字符 | 重音字符 |
允许的字符 (4) | A 到 Z(在大多数名字中使用时,字符 A 到 Z 从小写变成大写。) |
(3) DB2 UDB 内部使用名为 PUBLIC 的伪组,可以为其授权或者收回特权。PUBLIC 不是外部安全设施中定义的真正的组。它是把特权授予通过身份验证的任何用户的一种方式。
(4) 还有其他一些特殊字符也能使用,这取决于操作系统和在哪里使用 DB2 UDB。但是为了避免不一致性和潜在的问题,在数据库中命名对象时不要使用其他特殊字符。
用默认用户 ID(如 db2admin)安装 DB2 UDB 并使用弱口令(或者根本没有)可能将系统置于风险中。很多计算机病毒、蠕虫和特洛伊木马的设计都利用了弱口令。比方说,很多这类程序都尝试使用常见口令如 “password”、“123456”、“111111”、“db2admin” 等获得对系统的访问。因此不要使用简单的口令很重要。
在验证用户时口令也很重要。比如,在 Linux 和 UNIX 操作系统上,未定义口令被作为 NULL 处理。没有定义口令的任何用户都被视作使用 NULL 口令。从操作系统的角度来看,这是一种匹配,用户经过验证后就能连接到数据库。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25744374/viewspace-752610/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25744374/viewspace-752610/