在一个 Java 应用程序中,我在 DB2 中创建了 2 个具有管理权限的数据库。现在使用一个应用程序,希望通过 LAN 访问相同的数据库,但需要将数据库权限授予其他(在同一域中)域用户,以便他们可以作为最终用户访问相同的数据库。
我试过 DB2 GRANT 命令,但它不允许其他人访问这些数据库,但是如果他们使用与管理员相同的用户/密码,DB2 允许他们访问数据库。但是知道管理员用户/密码可能是安全问题。
有没有办法在命令提示符下执行此操作,即 db2cmd
GRANT CONNECT,ACCESSCTRL,DATAACCESS,DBADM,SECADM ON DATABASE TO USER Kishore
此命令不能解决问题。
提前致谢。
我按照@Ian Bjorhovde 的建议做了。现在 DB2 服务以 Domain\Admin 身份运行,并且 GRANT 命令已成功执行,但其他域用户仍无法连接到由 Admin 创建的 DB(使用他们自己的身份验证)。使用此代码
DriverManager.getConnection("jdbc:db2://SERVERNAME:50000/TESTDB", UserName, PassWord);
连接已创建,但在触发任何 SELECT 查询时会引发 SQL 异常 (SQLCODE=-204),即使将 UserName 提供为 Domain\UserName。