与 CosmosDB 中的其他用户共享记录
Sharing of Records with other users in CosmosDB
CosmosDB 表示您可以使用令牌代理应用程序来处理移动用户的身份验证,这使得对基于服务器的中间层应用程序的需求消失了。由于这是新的,我没有找到太多关于高级共享和安全的文档。
示例:
我有一个移动 Xamarin Forms 图书馆应用程序,其中包含学生、教师和书籍。
学生可以看到自己借出的图书。他们还可以与 select 其他学生分享他们借过的书。
所以,如果学生 Stan 与学生 Susie 分享他借出的书,那么 Susie 可以看到 Stan 借出了哪些书。
我该如何处理这个 CosmosDB?我知道如何通过创建主/详细关系来使用常规 sql 数据库执行此操作。我可以通过创建 master / detail json 文档对 cosmos DB 做同样的事情吗?
首先,如果您想构建一个令牌代理应用程序来验证用户身份并向登录用户发放短期令牌,请参阅Resource Token Broker on GitHub。
其次,图书共享功能。如果您对数据建模以将 student-books-sharingrelations
保存在同一个文档中,这将提供一种简单的方法来读取 query/request 中几乎所有的关系信息。此外,如您所述,如果将这些 info/data 存储在单独的文档中,则可能需要制作多个 queries/requests 才能获取关系信息。
此线程讨论了“How to create and update a relation between documents in DocumentDB”,这可能会有所帮助。
CosmosDB 表示您可以使用令牌代理应用程序来处理移动用户的身份验证,这使得对基于服务器的中间层应用程序的需求消失了。由于这是新的,我没有找到太多关于高级共享和安全的文档。
示例:
我有一个移动 Xamarin Forms 图书馆应用程序,其中包含学生、教师和书籍。
学生可以看到自己借出的图书。他们还可以与 select 其他学生分享他们借过的书。
所以,如果学生 Stan 与学生 Susie 分享他借出的书,那么 Susie 可以看到 Stan 借出了哪些书。
我该如何处理这个 CosmosDB?我知道如何通过创建主/详细关系来使用常规 sql 数据库执行此操作。我可以通过创建 master / detail json 文档对 cosmos DB 做同样的事情吗?
首先,如果您想构建一个令牌代理应用程序来验证用户身份并向登录用户发放短期令牌,请参阅Resource Token Broker on GitHub。
其次,图书共享功能。如果您对数据建模以将 student-books-sharingrelations
保存在同一个文档中,这将提供一种简单的方法来读取 query/request 中几乎所有的关系信息。此外,如您所述,如果将这些 info/data 存储在单独的文档中,则可能需要制作多个 queries/requests 才能获取关系信息。
此线程讨论了“How to create and update a relation between documents in DocumentDB”,这可能会有所帮助。