MarkLogic Element Security,从模糊到清晰



用户:审核员

角色:rest-readerrest-writer

路径表达式/national-treasure/revenue>权限:pii-reader ( update )pii-reader ( read )

我确认auditor无法读取/national-treasure/revenue元素。但它可以删除此文档:

Jul 06, 2020 4:48:52 PM com.fc.allegro6.DeleteDocument deleteDocument
INFO: Delete Document /national-treasure/rocky-mountains.xml
Jul 06, 2020 4:48:52 PM com.marklogic.client.impl.DocumentManagerImpl delete
INFO: Deleting /national-treasure/rocky-mountains.xml
Deleted

我想知道是否可以通过元素安全性或特权保护文档免受更新(删除(。

具有读取权限的 PII 阅读器可以更新受保护的路径:

用户:auditor

角色:pii-reader

路径表达式:/national-treasure/revenue权限:pii-reader(read)

原始节点:

<established>1885-01-01</established>
</highlights>
<revenue>CAN$6 billion/annual</revenue>
</national-treasure>

node-replace

let $txn := "xquery version '1.0-ml';
xdmp:node-replace(//revenue, <revenue>CAN$7 Trillion/annual</revenue>)"
……………………………
<user-id>{xdmp:user("auditor")}</user-id>

node-replace结果:

<established>1885-01-01</established>
</highlights>
<revenue>CAN$7 Trillion/annual</revenue>
</national-treasure>

同样,node-delete也会经历。

遗憾的是,元素级安全性仅涉及对受保护路径中的元素和属性read访问。您必须使用文档级权限,以防止在涉及 PII 的情况下删除。

我可以想象你有一个叫做pii-updater的隔离角色。然后,用户需要具有该角色才能更新或删除文档。

哼!

相关内容

  • 没有找到相关文章

最新更新