本文内容来自YashanDB官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E6%95%B0%E6%8D%AE%...

本文主要介绍如何配置操作系统身份认证,以便数据库管理员更便捷地登录数据库,认证方式相关的详细介绍请查阅用户及认证

该功能开关由数据库配置文件yasdb\_net.ini中的ENABLE\_LOCAL\_OSAUTH参数的取值控制。YashanDB安装后,默认ENABLE\_LOCAL\_OSAUTH = on,即开启操作系统身份认证功能,且yasdb\_net.ini文件不会自动生成。

  1. 查询$YASDB\_DATA/config路径下是否存在yasdb\_net.ini文件。

    $ echo $YASDB_DATA
    /data/yashan/yasdb_data/db-1-1 
    
    $ cd /data/yashan/yasdb_data/db-1-1/config 
    $ ll
    

    Copied!

    • 如不存在,则说明已开启,无需额外操作。
    • 如存在,则需执行后续操作。
  2. 查看ENABLE\_LOCAL\_OSAUTH的值:

    $ vi yasdb_net.ini    
    

    Copied!

    若ENABLE\_LOCAL\_OSAUTH值为off,则需修改为on,保存并退出。重启数据库使配置生效。

为用户开通操作系统认证


  1. 查看是否有YASDBA组,如没有则新建(需由拥有建组权限的用户操作):

    $ groups
    $ groupadd YASDBA
    

    Copied!

  2. 将目标操作系统账号加入YASDBA组(需由拥有建组权限的用户操作):

    $ usermod -a -G YASDBA dba1
    $ groups dba1
    
    
    $ usermod -a -G yashan dba1
    $ groups dba1
    

    Copied!

    Note

    如果目标用户当前已登录,需断开SSH连接重新登录后才能使用操作系统身份认证功能。

  3. 验证操作系统身份认证:

    $ yasql / as sysdba
    
    YashanDB SQL Enterprise Edition Release 23.3.1.100 x86_64
    
    Connected to:
    YashanDB Server Enterprise Edition Release 23.3.1.100 x86_64 - Linux
    
    SQL> SELECT SYS_CONTEXT ( 'USERENV' , 'SESSION_USER' ) FROM DUAL;
    
    SYS_CONTEXT('USERENV                                             
    ---------------------------------------------------------------- 
    SYS      
    

    Copied!

取消用户的操作系统认证


  • 方式一:将目标用户从YASDBA组移除,该用户将不再允许操作系统身份认证,立即生效。
  • 方式二:删除YASDBA组,所有用户将不再允许操作系统身份认证,立即生效。

关闭操作系统认证功能


  1. 查询$YASDB\_DATA/config路径下是否存在yasdb\_net.ini文件,如不存在则创建:

    $ echo $YASDB_DATA
    /data/yashan/yasdb_data/db-1-1 
    
    $ cd /data/yashan/yasdb_data/db-1-1/config
    $ vi yasdb_net.ini
    

    Copied!

  2. 在yasdb\_net.ini文件中新增或修改如下配置:

    ENABLE_LOCAL_OSAUTH = off
    

    Copied!

  3. 保存并退出。
  4. 重启数据库使配置生效,数据库将不再执行操作系统身份认证。

YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...