如何在不需要Microsoft帐户的情况下与外部用户共享SharePoint文件夹

时间:2019-05-23 16:27:27

标签: sharepoint sharepoint-online csom

TL; DR:

如何以编程方式与外部用户共享SharePoint联机文件夹,以便该用户仅需要访问代码,而无需Microsoft帐户。

完整版本: 我正在在线使用SharePoint。我想与外部用户共享SharedDocuments列表中的文件夹。从SharePoint前端开始这很简单-选择文件夹,选择共享,输入外部用户的电子邮件地址,然后选择复制链接。

enter image description here

SharePoint将生成一个我可以发送给外部用户的URL。外部用户访问该URL以请求通过电子邮件发送访问代码。输入访问代码允许用户访问文件夹。用户不需要Microsoft帐户。完善。

我想用代码(c#和csom)实现这一点。具体来说,我希望能够指定一个文件夹和外部电子邮件地址并检索共享URL。

我尝试过:

Microsoft.SharePoint.Client.Web.CreateOrganizationSharingLink() clientContext.Web.ShareDocument() DocumentSharingManager.UpdateDocumentSharingInfo() WebSharingManager.UpdateWebSharingInformation()

这些方法都生成一个链接-但是该链接需要一个Microsoft帐户。与上面的UI中生成的链接不同。

是否可以生成仅访问码链接?

1 个答案:

答案 0 :(得分:1)

您可以从Nuget OfficeDevPnP.Core安装此库。它包括Web对象的扩展方法以创建匿名URL。

用法: string sharedUrl = web.CreateAnonymousLinkForDocument("directUrlToTheItem", ExternalSharingDocumentOption.View);