我正在尝试解密一些数据库脚本输出,我需要知道Oracle和DB2用户是否也是OS用户(在Linux上),或者他们只是数据库的内部用户。换句话说,当我创建数据库用户时,是否还创建了OS用户?
提前致谢
答案 0 :(得分:0)
对于Oracle至少,不,创建数据库用户不会创建操作系统用户。您可以拥有externally-authenticated数据库用户(传统上使用ops$
等公共前缀定义,例如ops$osuser
,though that isn't necessary),但仍需要单独创建匹配的OS用户。因此,您可以让操作系统和数据库中都存在用户,但操作系统用户不是由数据库create user
命令创建的。
除了这种情况,为什么这是一个有用或明智的事情呢?这也意味着Oracle帐户必须有权这样做,即root或管理员权限,这将是一个潜在危险的权限提升漏洞;并且必须进行协调,例如,您无法创建具有与现有OS用户匹配的ID的数据库用户。
我无法想象DB2会创建一个OS用户,但我不确定;我没有这方面的经验,所以其他人需要回答那个部分......
答案 1 :(得分:0)
DB2安全性依赖于外部身份验证和DB2授权。这意味着用外部机制验证用户名和密码。默认情况下,这是操作系统,但您可以配置Kerberos或其他类型的身份验证。
在安装中包含的DB2示例中,您可以创建自己的安全性插件,以使用内部数据库机制对用户进行身份验证。