达梦数据库-disql工具实现基于操作系统的身份验证

基于 OS 的身份验证分为本机验证和远程验证,本机验证需要将 DM 配置文件 dm.ini的 ENABLE_LOCAL_OSAUTH 参数设置为 1(缺省为 0) ;而远程验证需要将 DM 配置文件dm.ini 的 ENABLE_REMOTE_OSAUTH 参数设置为 1(缺省为 0),表示支持远程验证,同时还要将 dm.ini 的 ENABLE_ENCRYPT 参数设置为 1(缺省为 1),表示采用 SSL 安全连接。 这三个参数均为静态参数, 数据库管理员可以使用系统过程SP_SET_PARA_VALUE 进行修改,但修改后需要重新启动 DM 服务器才能生效。

基于 OS 的身份验证需要首先将操作系统用户加入到操作系统的dmdba|dmsso|dmauditor 用户组,分别对应数据库的 SYSDBA|SYSSSO|SYSAUDITOR用户。 也可以将操作系统用户加入到操作系统的 dmusers 用户组来进行基于 OS 的身份验证,对应数据库的同名用户,即此时数据库中需要存在一个与操作系统用户同名的用户。
例如:操作系统用户 dameng 基于 OS 的身份验证登录数据库。

  1. 在数据库(localhost:5236)中创建一个操作系统的同名用户,并修改 INI 参数。
SQL> CREATE USER dameng IDENTIFIED BY "dameng12345";
SQL> SP_SET_PARA_VALUE(2,'ENABLE_LOCAL_OSAUTH',1);
SQL> COMMIT;

重新启动数据库服务器,使 INI 参数生效。
2. 在操作系统中创建 dmusers 用户组,并将操作系统用户 dameng 添加到dmusers用户组。
3. Linux 操作系统下:

[dameng@test163 ~]$ sudo groupadd dmusers
[dameng@test163 ~]$ sudo usermod -G dmusers dameng
  1. 操作系统用户 dameng 基于 OS 的身份验证登录数据库。
[dameng@test163 ~]$ ./disql /@localhost:5236 as users

DM 的 DIsql、 dmfldr、 dexp 和 dimp 工具都支持基于操作系统的身份验证登录,具体登录方式可查看各工具操作手册。

更多资讯请上达梦技术社区了解: https://eco.dameng.com

上一篇:C++中如何精确地输出特定类型的位数


下一篇:达梦数据库-disql之SQL脚本使用