2

如何允许客户可以修改但不能删除的文档?

RavenDB 是否像在其他关系数据库中一样具有管理员和非管理员用户的文档权限概念?

我有一组只能从 RavenDB 仪表板创建的文档。我想防止这些少数文件被客户删除。

尽管客户端应该能够“修改”它们,但“修改”我的意思是仅附加。

4

1 回答 1

2

我假设我们谈论的是 RavenDB 的 4.x 版本。

简而言之,不,开箱即用的功能是不可能的。RavenDB 中的身份验证和授权基于证书,并且功能方面与您通常在主要 RDBMS 数据库中发现的不同。您可以为每个客户端证书分配角色,这些角色将具有他们可以访问的预定义​​操作集。您还可以限制某些证书可以访问的数据库。但是您不能在允许执行其他操作的同时限制某些客户端证书删除文档。查看文档文章以获取更多信息:https ://ravendb.net/docs/article-page/4.2/csharp/server/security/authorization/security-clearance-and-permissions

如果我需要实现这样的功能,我可能会将这样的逻辑放在应用程序本身的 DAL 层中。

于 2020-03-14T17:57:14.083 回答