我不知道我是否正确地理解了这些内置角色和用户的特权,但这是我发现的信息列表:
我的理解正确吗?
发布于 2021-03-19 20:34:20
我认为DBA和SYSDBA角色能够完成所有事情--如果这是真的,那么为什么同一件事情有两个名称呢?
他们不是一回事。SYSDBA本身并不是一个角色,而是一个特殊的特权。它赋予了被授权人最终的权限,包括发出关机和启动命令的能力,覆盖了其他一些限制,以及一些逃避我的其他项目。与角色不同,当一个角色被授予SYSDBA时,它们被添加到密码文件(数据库的外部)中,允许它们通过网络连接到空闲实例。
DBA只是一个角色。虽然它是默认创建的,并在默认情况下分配给用户系统,但它与您可能创建和分配特权的任何角色根本没有什么不同。虽然不建议添加或删除privs,但是没有什么可以阻止您这样做。
SYSOPER角色允许做任何事情,除了访问用户的数据,
与SYSDBA一样,SYSOPER不是一个角色,而是一个特殊的硬编码特权。在我的头上,我不记得那些限制,但它的主要目的是允许授予的用户关闭和启动的能力,而不给予它许多其他的特权。在默认情况下,它不会授予任何人,在我的整个职业生涯中(在小商店工作,最多有3个DBA),我从来没有理由给予它。
SYS用户有DBA和SYSDBA角色,所以他可以做任何事情,
是。
系统用户有DBA角色,所以他似乎可以做任何事情,但我读到他不能做备份、恢复和DB升级。
如果没有被授予SYSDBA或SYSOPER (他不应该这样做),他就不能停止或启动实例。如果无法停止实例,则无法执行升级或恢复。他可以执行在线备份(如果数据库处于存档模式),因为这不需要关闭。但有什么意义呢?
https://dba.stackexchange.com/questions/287356
复制相似问题