我正在新创建的OpenEdge 11.5数据库中设置SQL访问。
在使用“select * from sysprogress.sysdbauth”检查sysdbauth表的内容时,我发现默认情况下有两个用户设置:sysprogress和一个用户,其中包含用于创建数据库中。
我正在寻找有关如何处理这两个帐户的建议。显然,我希望有一个帐户用于DBA任务。我应该为此目的使用其中一个帐户吗?如果是这样,我应该怎么处理其他帐户?
是否可以(并且安全)删除这些预定义帐户中的任何一个?
答案 0 :(得分:1)
在Database Administration guide的第175页,您可以阅读有关默认用户及其创建原因的信息:
仅从SQL使用的表
SQL数据库管理员(DBA)是在数据库中分配了sysdbauth记录的人员。 SQL DBA可以访问数据库中的所有元数据和数据。支持内部架构 缓存,每个OpenEdge数据库都以DBA定义为“sysprogress”开头。然而, OpenEdge限制使用“sysprogress”。 使用PROCOPY或PRODB命令创建OpenEdge数据库时,以及 数据库没有定义任何_User记录(例如,来自源数据库),然后 将使用创建数据库的人员的登录ID自动指定DBA。这个 person可以登录数据库并使用GRANT语句指定其他SQL DBA, 并使用CREATE USER和DROP USER语句添加和删除用户ID。创建时 用户,此DBA还可以将用户指定为仅限SQL的用户,他们只能访问数据库 通过SQL。
围绕删除或禁用默认用户的任务有几个知识库条目。
http://knowledgebase.progress.com/articles/Article/P5094 http://knowledgebase.progress.com/articles/Article/P161411
这表明删除或禁用这些帐户真的很安全,但您应该:
1)首先创建替换帐户。
2)一如既往:首先在单独的环境中进行测试而不是在生产中进行测试!
答案 1 :(得分:0)
是的,实际上Progress希望你这样做。创建一个root帐户并摆脱它们。没关系。