如何从dm_acl对象表中删除acl

时间:2016-11-07 09:28:18

标签: dql documentum dfc

我正在使用documentum,我想从我的dm_acl对象表中删除几个acls。首先我确保acl存在:

select * from dm_acl where object_name = 'myAclName'

然后我确保没有其他对象正在使用该acl

select * from dm_folder where acl_name = 'myAclName'

然后我用以下内容删除了acl:

delete dm_acl objects where object_name = 'myAclName'

但后来我收到一条错误说you have specified a none updatable type (dm_acl)。有没有办法可以使用DQLDFC

删除acl

1 个答案:

答案 0 :(得分:1)

您无法使用DQL删除ACL对象。但是,您可以使用语法

的API删除它
destroy,c,<acl_object_id>

还有一件事,请看你提到

select * from dm_folder where acl_name = 'myAclName'

还不够。 ACL对象可以在每个sysobject上找到,所以基本上你需要将检查扩展到dm_sysobject类型

select * from dm_sysobject where acl_name = 'myAclName'

由于IDfAcl接口上有destroyACL()方法,因此可以通过DFC删除ACL。