快速入门:使用 PowerShell 添加来宾用户
适用于: 员工租户 外部租户(了解详细信息)
有很多种方法可用于邀请外部合作伙伴通过 Microsoft Entra B2B 协作访问你的应用和服务。 在上个快速入门中,你已了解如何在 Microsoft Entra 管理中心直接添加来宾用户。 此外还可以使用 PowerShell 添加来宾用户,可以选择一次添加一个,也可以选择批量添加。 在本快速入门中,你将使用 New-MgInvitation 命令将一个来宾用户添加到 Microsoft Entra 租户。
如果还没有 Azure 订阅,可以在开始前创建一个免费帐户。
先决条件
若要完成本快速入门中的方案,你需要:
- 一个支持你在租户目录中创建用户的角色,例如至少为来宾邀请者角色或用户管理员。
- 安装 Microsoft Graph 标识登录模块 (Microsoft.Graph.Identity.SignIns) 和 Microsoft Graph Users 模块 (Microsoft.Graph.Users)。 除非满足所需 PowerShell 模块的要求,否则你可以使用
#Requires
语句来阻止运行脚本。
#Requires -Modules Microsoft.Graph.Identity.SignIns, Microsoft.Graph.Users
- 获取测试电子邮件帐户。 需要可向其发送邀请的测试电子邮件帐户。 这些帐户必须来自组织外部。 可使用任意类型的帐户,包括 gmail.com 或 outlook.com 地址等社交帐户。
登录租户
运行以下命令以连接到租户域:
Connect-MgGraph -Scopes 'User.ReadWrite.All'
在系统提示时输入凭据。
发送邀请
要向测试电子邮件帐户发送邀请,请运行以下 PowerShell 命令(将“Henry Ross” 和 henry@contoso.com 更换为你的测试电子邮件帐户名和电子邮件地址):
New-MgInvitation -InvitedUserDisplayName "Henry Ross" -InvitedUserEmailAddress henry@contoso.com -InviteRedirectUrl "https://myapplications.microsoft.com" -SendInvitationMessage:$true
该命令向指定的电子邮件地址发送邀请。 查看输出,输出应如以下示例所示:
Id InviteRedeemUrl -- --------------- 00aa00aa-bb11-cc22-dd33-44ee44ee44ee https://login.microsoftonline.com/redeem?...
验证用户是否存在于目录中
要验证邀请的用户是否已添加到 Microsoft Entra ID,请运行以下命令(将 henry@contoso.com 更换为你的受邀电子邮件):
Get-MgUser -Filter "Mail eq 'henry@contoso.com'"
查看输出,确保已列出受邀用户,其中用户主体名称 (UPN) 采用 emailaddress#EXT#@domain 的格式。 例如,henry_contoso.com#EXT#@fabrikam.onmicrosoft.com,其中 fabrikam.onmicrosoft.com 是你发送邀请的组织。
Id DisplayName Mail UserPrincipalName -- ----------- ---- ----------------- 00aa00aa-bb11-cc22-dd33-44ee44ee44ee Henry Ross henry@contoso.com henry@contoso.com
清理资源
目录中不再需要测试用户帐户时,请将其删除。 运行以下命令来删除用户帐户:
Remove-MgUser -UserId '<String>'
例如:
Remove-MgUser -UserId 'henry_contoso.com#EXT#@fabrikam.onmicrosoft.com'
或
Remove-MgUser -UserId '00aa00aa-bb11-cc22-dd33-44ee44ee44ee'
后续步骤
在本快速入门中,你已邀请一个来宾用户并使用 PowerShell 将其添加到目录。 还可以使用 Microsoft Entra 管理中心邀请来宾用户。 此外,还可以使用 PowerShell 批量邀请来宾用户。