教學課程:使用 PowerShell 大量邀請 Microsoft Entra B2B 共同作業使用者

如果您使用 Microsoft Entra B2B 共同作業與外部合作夥伴合作,您可以透過入口網站或 PowerShell 同時邀請多個來賓使用者到您的組織。 在本教學課程中,您將瞭解如何使用PowerShell將大量邀請傳送給外部使用者。 具體而言,您會執行下列操作:

  • 使用使用者信息準備逗號分隔值 (.csv) 檔案
  • 執行 PowerShell 腳本以傳送邀請
  • 驗證使用者已加至目錄中

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

必要條件

安裝最新的 Microsoft Graph PowerShell 模組

請確定您安裝最新版的 Microsoft Graph PowerShell 模組。

首先,檢查您已安裝的模組。 以提升許可權的使用者身分開啟 PowerShell(以系統管理員身分執行),然後執行下列命令:

Get-InstalledModule Microsoft.Graph

若要在 PowerShell Core 或 Windows PowerShell 中安裝 SDK 的 v1 模組,請執行下列命令:

Install-Module Microsoft.Graph -Scope CurrentUser

您可以選擇性地使用 -Scope 參數來變更安裝的範圍。 這需要系統管理員許可權。

Install-Module Microsoft.Graph -Scope AllUsers

若要安裝 Beta 模組,請執行下列命令。

Install-Module Microsoft.Graph.Beta

您可能會收到提示,指出您要從不受信任的存放庫安裝模組。 如果您先前尚未將 PSGallery 存放庫設定為受信任的存放庫,就會發生這種情況。 按 Y 以安裝模組。

取得測試電子郵件帳戶

您需要兩個以上的測試電子郵件帳戶,才能傳送邀請。 帳戶必須來自組織外部。 您可以使用任何類型的帳戶,包括社交帳戶,例如 gmail.comoutlook.com 位址。

準備 CSV 檔案

在 Microsoft Excel 中,使用受邀使用者名稱和電子郵件地址清單建立 CSV 檔案。 請務必包含 NameInvitedUserEmailAddress 數據行標題。

例如,以下列格式建立工作表:

Screenshot that shows the csv file columns of Name and InvitedUserEmailAddress.

將檔案儲存為 C:\BulkInvite\Invitations.csv

如果您沒有 Excel,您可以在任何文字編輯器中建立 CSV 檔案,例如 記事本。 以逗號分隔每個值,並以新行分隔每個數據列。

登入您的租使用者

執行下列命令以連線到租使用者:

Connect-MgGraph -TenantId "<YOUR_TENANT_ID>"

例如: Connect-MgGraph -TenantId "11111111-aaaa-2222-bbbb-33333333" 。 您也可以使用租使用者網域,但 參數會維持為 -TenantId。 例如: Connect-MgGraph -TenantId "contoso.onmicrosoft.com"

出現提示時,請輸入您的認證。

傳送大量邀請

若要傳送邀請,請執行下列 PowerShell 腳本(其中 c:\bulkinvite\invitations.csv 是 CSV 檔案的路徑):

$invitations = import-csv c:\bulkinvite\invitations.csv

$messageInfo = New-Object Microsoft.Open.MSGraph.Model.InvitedUserMessageInfo

$messageInfo.customizedMessageBody = "Hello. You are invited to the Contoso organization."

foreach ($email in $invitations)
   {New-MgInvitation `
      -InvitedUserEmailAddress $email.InvitedUserEmailAddress `
      -InvitedUserDisplayName $email.Name `
      -InviteRedirectUrl https://myapps.microsoft.com `
      -InvitedUserMessageInfo $messageInfo `
      -SendInvitationMessage $true
   }

腳本會將邀請傳送至Invitations.csv檔案中的電子郵件位址。 您應該會看到與每個使用者類似的輸出:

Screenshot that shows PowerShell output that includes pending user acceptance.

確認使用者存在於目錄中

若要確認受邀的使用者已新增至 Microsoft Entra ID,請執行下列命令:

 Get-MgUser -Filter "UserType eq 'Guest'"

您應該會看到您邀請的使用者列示,格式為 emailaddress#EXT#@domain 的用戶主體名稱 (UPN)。 例如, msullivan_fabrikam.com#EXT#@contoso.onmicrosoft.com,其中 contoso.onmicrosoft.com 是您傳送邀請的組織。

清除資源

不再需要時,您可以刪除目錄中的測試用戶帳戶。 執行下列命令以刪除使用者帳戶:

 Remove-MgUser -UserId "<String>"

例如: Remove-MgUser -UserId "11111111-aaaa-2222-bbbb-33333333"

下一步

在本教學課程中,您已將大量邀請傳送給組織外部的來賓使用者。 接下來,瞭解如何在入口網站上大量邀請來賓使用者,以及如何為其強制執行 MFA。