架构中新对象的默认权限

时间:2013-05-17 07:46:29

标签: permissions db2 database-schema ibm-midrange

我正在一个名为S的架构(库)上的 DB2 for i 数据库(又名DB2 / 400)上工作。

在模式S中,我使用用户A创建数据库表,过程等。我需要用户B对这些新对象拥有所有权限。所以我在模式S上为用户A和B授予了所有权限。但是新对象不会继承它们!

所以我尝试了很多配置:在System i Navigator上我使用授权列表,在模式S的权限对话框中使用“新建对象”按钮......但没有任何效果。

如何设置一种默认权限,以便在我的架构中创建的新对象自动继承?

我知道唯一可行的替代方法是每次创建对象时都记住用户B的grant权限。不那么聪明......

2 个答案:

答案 0 :(得分:0)

安全是一个很大的话题。它通常由管理员处理;有人意识到改变图书馆权限的更大后果。

需要考虑几个相关设置。由于您正在尝试保护单个对象,因此您可能通过将QSECURITY设置为* EXCLUDE或将库的CRTAUT更改为* EXCLUDE来限制公共权限。

如果我们希望此库中所有新创建的对象具有相同的权限,请考虑授权列表。我知道你说你玩过wuth授权列表,但你没有说明你做了什么。

创建授权列表。将用户A和B授权给授权列表。 CHGLIB myschema CRTAUT(myautl)。现在,myschema中的每个对象都具有相同的权限。

答案 1 :(得分:0)

我有IBM i 7.1。

如果我使用5250模拟器创建表,在STRSQL中,它可以工作,继承模式授权列表。

如果我使用iSeries Navigator V5R4M0创建表(既不右键单击Tables> New> Table,也不使用cwbundbs.exe),它就不起作用。授权列表不是继承的......

所以它似乎是iSeries Navigator中的一个错误。也许拥有更新版本的人可以确认我们是否已修复。

chat with @BuckCalabro中的完整详情。