【问题标题】:How to create guest AD user invitation then add to a SharePoint Online site in PowerShell如何创建来宾 AD 用户邀请,然后在 PowerShell 中添加到 SharePoint Online 网站
【发布时间】:2020-06-15 23:13:57
【问题描述】:

此脚本创建来宾用户邀请,但在尝试将新创建的用户添加到 SharePoint Online 网站时出错,并出现以下错误:

Add-SPOUser : 找不到指定的用户 janedoe@email.com。

$tenant = "companyname"
Connect-SPOService -url "https://$tenant-admin.sharepoint.com"
Connect-AzureAD -TenantDomain "$tenant.onmicrosoft.com"

New-AzureADMSInvitation -InvitedUserDisplayName "Jane Doe" -InvitedUserEmailAddress "janedoe@email.com" -InviteRedirectURL "https://$tenant.sharepoint.com/sites/client1" -SendInvitationMessage $true

Start-Sleep -s 60

Add-SPOUser -Group "Client Site 1 Visitors" –LoginName "janedoe@email.com" -Site "https://$tenant.sharepoint.com/sites/client1"

Disconnect-SPOService
Disconnect-AzureAD

Azure AD 需要多长时间才能将该用户填充到 Office 365 中?

【问题讨论】:

  • SPO UPS(用户配置文件服务)似乎在两天内没有运行。即使用户在 AzureAD 中,它们也不会显示在 SPO 中(即使您尝试在 GUI 中手动将用户添加到站点组)。没有像 SP Server 这样的 GUI 手动同步。这可以在PS中完成吗?这对 Extranet 客户端来说很糟糕,因为当用户接受邀请时,他们将被重定向到显示拒绝访问的站点。
  • 这也是正确的,尽管 MS Graph API 中的邀请 + GET /users/id 会导致 404 大约 5-10 秒:\
  • 更正:用户配置文件是在 UPS 同步周期之后添加的,但仍无法通过 GUI 添加到 SP 组。

标签: powershell sharepoint active-directory azure-active-directory sharepoint-online


【解决方案1】:

当尝试通过 GUI 将外部用户电子邮件(外部租户)添加到 SP 组时,选项卡显示以下错误:

“您组织的政策不允许您与这些用户共享。请转到 Office 365 管理中心的外部共享以启用它。”

要解决此问题和 PS 脚本错误,请在创建 Extranet SP 站点后,在连接到 SPO 后运行以下 PS 命令(只需在将外部用户添加到站点之前运行 ONCE ):

Set-SPOSite -identity https://companyname.sharepoint.com/sites/client1 -sharingcapability ExternalUserAndGuestSharing

现在 PS 脚本可以正常工作了。不需要开始睡眠。

【讨论】:

  • New-AzureADMSInvitation 后仍需保持 Start-Sleep。 Start-Sleep -Seconds 15.
猜你喜欢
  • 2019-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-13
  • 1970-01-01
  • 2017-10-24
相关资源
最近更新 更多