四、使用cmdsec进行权限控制
GoldenGate 可以限制一些用户对命令的使用。例如可以让一些监控用户只使用INFO和STAT命令,不允许其使用start和stop命令,这是通过对操作系统用户组的限制而是现在限制使用命令的目的。
GoldenGate使用通过在安装目录下创建一个文件,并在文件加入一些规则来控制用户对命令的使用,每一行一条规则,规则的顺序要从控制范围最广到范围最少从上到下写,每个规则要用空格隔开。书写规则的格式如下:
示例21:
<command name> <command object> <OS group> <OS user> <YES | NO>
对每个选项的解释:
<command name>:是GoldenGate的命令或者一个通配符,例如start、stop、*。
<command object>:是GoldenGate的进程组类型或通配符,例如Extract、Replicat、MGR。
<OS group>:是操作系统用户组,在UNIX下可以用户ID来代替用户名,或者使用*来表示所有的用户组。
<YES | NO>:表示这个命令对这个用户是开放的还是禁止的。
下面是一个Linux系统下控制用户对命令使用的一个简单的案例:
示例22:
#GG command security 命令行
STATUS REPLICAT * Smith NO--不允许smith在容灾端使用STATUS命令
STATUS * dpt1 * YES --除了上面的规则,所有dpt1组下的用户可以使用status 命令
START REPLICAT root * YES--root组下的用户可以使用start Replicat命令
START REPLICAT * * NO --除了上面的规则,所有用户不能使用start replicat命令
* EXTRACT 200 * NO --group id为200的组在生产端不可以使用命令
* * root root YES --root用户可以使用任何的命令
* * * * NO --除了上面的规则,所有的用户不可以使用GoldenGate命令
CMDSEC文件是命令行安全的根源,必须要保证这个文件的安全,可以赋予用户对它读的权限,但是不允许GoldenGate管理员以外的所有用户修改和删除这个文件。
更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/extra/