Blazor 应用程序中用户指定的文档访问权限,使用 MongoDB Atlas 存储应用程序数据

问题描述 投票:0回答:0

我承认我是应用程序开发的新手。我花了很多时间试图了解那里有什么,但我一直无法弄清楚如何做我想做的事。以下是该应用程序的基本原则:

  1. Blazor 服务器应用程序使用 MongoDB Atlas 来托管数据。

  2. 用户登录(使用Azure AD进行身份验证)并可以设置配置文件;浏览网站上可用的一些目录;上传一些文件或创建一个新文件。这些文档存储在 MongoDB 中的一个集合中。当用户注销并重新登录时,他们可以看到他们创建的文档并对其进行修改。到目前为止一切顺利。

  3. 我想要的是:每个用户都属于一个组。一个组中的所有用户都可以对属于该组的文档进行操作。有些只有读权限,有些只有读和写权限。我希望用户能够向其他用户或组提供他们创建的文档的访问/权限。是的,这正是 unix 权限的工作方式。

  4. 无需提供文档协作。

我发现了以下内容:

  1. https://www.mongodb.com/docs/atlas/app-services/rules/ 文档级权限是可能的。

  2. https://learn.microsoft.com/en-us/azure/active-directory/saas-apps/mongodb-cloud-tutorial——这是关于将 Azure AD 与 MongoDB Atlas 集成的话题——但我不想我的应用程序的用户甚至可以知道他们的数据是如何存储的。我希望他们只需单击他们在他们创建的网站上看到的文档,然后说他们想与一组或特定用户共享它。

  3. 使用实体框架在 Blazor 服务器应用程序中跨用户共享数据? - 就在一个月前,这让我接触到了实体框架。

  4. 我还在 github 上找到了 meteor 和 alanning:roles 包。我需要的是有关采取方法的指导。

很明显,我想做的是存在的——unix、Google Docs、Dropbox、Windows RBAC——存在许多实现。问题是是否存在可用于在我的应用程序中提供此功能的现有框架。非常感谢您的帮助。谢谢!

asp.net entity-framework azure-active-directory mongodb-atlas rbac
© www.soinside.com 2019 - 2024. All rights reserved.