GBsae 8s 配置内部用户
GBase 8s数据库默认仅使用操作系统用户,用户操作在操作系统层实现,授权在数据库内实现。
数据库内部用户需要通过配置才能开启
1,配置os
在/etc/gbasedbt目录(如没有,使用root用户创建)下创建,检查是否创建allowed.surrogates
安装默认创建了该文件allowed.surrogates配置文件
内容如下:
USERS:daemon
2,数据库开启USERMAPPING
su - gbasedbt
onstat -c USERMAPPING /*检查是否开启*/
onmode -wf USERMAPPING=ADMIN
OFF 只允许操作系统的用户访问数据库,不允许非系统用户访问数据库。
BASIC 允许非系统用户访问数据库,但不允许执行对数据库系统的授权用户操作,如 DBSA, DBSSO, AAO 等。即使被映射的用户具有上述权限。
ADMIN 允许非系统用户访问数据库。且如果被映射的用户为授权用户,则非系统用户也被允许执行授权用户操作。
3,加载surrogates到缓存
su - gbasedbt
onmode -cache surrogates
onstat -m
4,在sysuser库中创建系统默认用户,可以指定默认目录
su - gbasedbt
mkdir -p /home/gbasedbt/users
chmod 777 /home/gbasedbt/users
dbaccess sysuser - << EOF
CREATE DEFAULT USER WITH PROPERTIES USER daemon HOME "/home/gbasedbt/users" ;
EOF
–以上仅需要第一次初始化执行
5,创建普通用户,并指定密码,密码需要大于8位
dbaccess sysuser - << EOF
CREATE USER testuser WITH PASSWORD 'gbasedbt';
EOF
6,在数据库中赋权访问
echo "grant resource to testuser;" | dbaccess mydb -
7,连接数据库
dbaccess - -
connect to "mydb@gbase01" user "testuser";