我想了解如何使用DocumentDB,我可以授予多个资源的权限。目前还不清楚我会怎么做,或者目前是否可行。CosmosDB授予多个资源权限?
https://docs.microsoft.com/en-us/azure/cosmos-db/mobile-apps-with-xamarin
在他们的文档在这里,他们陈述
如果你希望两个用户都可以访问相同的待办事项列表,你可以添加额外的权限,以在资源令牌代理的访问令牌。
资源令牌经纪人链接如下:
而且我认为他们的具体内容是这样的:
using Microsoft.Azure.Documents;
Permission p = new Permission
{
PermissionMode = PermissionMode.All,
ResourceLink = collection.SelfLink,
ResourcePartitionKey = new PartitionKey(userId),
Id = permissionId //needs to be unique for a given user
};
然而,这段代码只支持一个分区键。这是我想要做的,授予集合中多个分区键的权限。
这是有来电,我认为创建令牌:
permission = await Client.CreatePermissionAsync(UriFactory.CreateUserUri(databaseId, userId), p);
但同样,它看起来像一个单一的许可。这意味着您必须创建N个权限,并且每次访问其中一个资源时,都需要从Resource Broker请求令牌。换句话说,如果我授予5个资源的许可权,当我的客户端转到资源代理时,我需要返回5个令牌?
有没有办法说:这个资源令牌授予PermissionMode.All
所有这些资源的权限?
这是行不通的。请参阅https://stackoverflow.com/questions/47001220/cosmodb-documentclient-cannot-accept-multiple-tokens。 – Mark