gpt4 book ai didi

oracle - 创建一个角色而不授予它

转载 作者:行者123 更新时间:2023-12-04 05:30:12 25 4
gpt4 key购买 nike

我想创建一个连接为 SYSTEM 的角色。但是因为我有很多带有很多角色的模式,并且所有这些模式都将以这种方式创建,所以我不希望将创建的角色授予 SYSTEM(否则它最终会超过 148 个角色的限制)。

=> 是否可以禁用对创建者的自动授权?

注意:现在我在 Oracle 9i 上工作,但很快就会升级到 11g

最佳答案

我的回答有两部分:

  • Oracle 中的角色有点像 key 圈上的 key :仅仅因为它们在 key 圈上并不意味着您一直在使用它们。 Oracle 有默认角色的概念:这些角色在 session 创建时自动激活。如果用户需要,可以稍后启用其他角色。

    148 个角色限制适用于事件角色,例如,参见 oracle 10g 的此文档链接:http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_6012.htm#sthref7227

    要禁用默认角色,请使用 ALTER USER ... DEFAULT ROLE ...,参见 http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_4003.htm#sthref5717
  • 当作为 SYSTEM 连接时,不要创建任何对象,甚至是角色。相反,您应该使用普通用户来创建角色并向其添加适合该用户模式对象的对象。您需要将 CREATE ROLE 系统特权授予那些需要拥有对象并为其分配角色的用户,但这都是 Oracle 安全模型的一部分。
  • 关于oracle - 创建一个角色而不授予它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12722548/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com