Microsoft Graph Api-Azure Active Directory B2B协作邀请兑现-无法访问文档

时间:2018-08-20 20:18:52

标签: azure azure-ad-graph-api

我注意到了一个很奇怪的问题。如果用户具有Microsoft帐户并接受邀请,系统将删除对所有共享文档的权限。

  1. 上传文档:
await _graphClient.Drives[_driveId].Root.ItemWithPath(itemWithPath)
                            .Content.Request()
                            .PutAsync<DriveItem>(fileStream)
  1. 创建访客:
await _graphClient.Invitations.Request().AddAsync(new Invitation()
            {
                InvitedUserEmailAddress = email,
                InvitedUserDisplayName = displayName,
                SendInvitationMessage = false,
                InviteRedirectUrl = NullableString.Parse(ConfigurationManager.AppSettings["AppAddress"])
            });
  1. 添加权限:
await _graphClient.Drives[_driveId].Items[driveItemId].Invite(
                 recipients,
                 requireSignIn: true,
                 roles: new[] { "write" },
                 sendInvitation: false
             ).Request().PostAsync();

在文档上的onedrive中,我看到用户被授予,但是一旦用户打开文档的url并接受赎回邀请到天蓝色的活动目录,则会看到错误,无法访问文档。在azure目录中,如果接受条款,则首先将用户标记(源)为邀请用户,而不是Microsoft用户。

如果用户接受邀请赎回的次数超过了预期的访问次数,如果我重复相同的情况。那怎么了?为什么系统要删除访问权限?

1 个答案:

答案 0 :(得分:0)

它仍然无法按我预期的那样工作,因此我不得不为客户找到其他不太方便的方式。

解决方案: 1-创建文件 2-创建邀请,但是这次从Microsoft azure向b2b用户发送消息 3-客户需要接受隐私政策 4-接受后重定向到我的系统并添加文档权限

预期解决方案: 1-创建文件 2-创建邀请,没有来自天蓝色的消息 3-为邀请用户b2b添加文档权限 4-如果用户打开的文档必须接受隐私策略并且Microsoft重定向到文档 第4点不起作用。用户接受隐私文件后,请参阅拒绝访问做文件