重置来宾用户的邀请兑换状态

本文介绍了如何在来宾用户兑换 B2B 协作邀请后更新其登录信息。 有时你可能需要更新其登录信息,例如,出现以下情况时:

  • 用户需要使用其他电子邮件和标识提供者进行登录
  • 用户在主租户中的帐户已被删除或重新创建
  • 用户已转移到其他公司,但他们仍然需要对你的资源具有相同的访问权限
  • 用户的职责已转移给其他用户

以前,若要管理这些方案,你必须从你的目录中手动删除来宾用户的帐户,然后重新邀请用户。 现在,可以使用 Microsoft Entra 管理中心、PowerShell 或 Microsoft Graph 邀请 API 来重置用户的兑换状态并重新邀请用户,同时还可保留用户的对象 ID、组成员身份和应用分配。 当用户兑换新的邀请时,用户的 UserPrincipalName (UPN) 不会更改,但其登录名将更改为新的电子邮件地址。 然后,用户可以使用新电子邮件地址或者已由你添加到用户对象的 otherMails 属性中的电子邮件地址来登录。

必需的 Microsoft Entra 角色

若要重置用户的兑换状态,需要具有以下角色之一:

使用 Microsoft Entra 管理中心重置兑换状态

提示

本文中的步骤可能因开始使用的门户而略有不同。

  1. 至少以用户管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“用户”>“所有用户”。

  3. 在列表中,选择用户的名称以打开其用户配置文件。

  4. (可选)用户想要使用其他电子邮件登录时:

    1. 选择“编辑属性”图标。
    2. 滚动到“电子邮件”,并键入新的电子邮件。
    3. 在“其他电子邮件”旁边,选择“添加电子邮件”。 选择“添加”,键入新的电子邮件,然后选择“保存”。
    4. 选择页面底部的“保存”按钮以保存所有更改。
  5. 在“概述”选项卡上的“我的源”下,选择“B2B 协作”磁贴中的“重置兑换状态”链接。

    显示 B2B 协作重置链接的屏幕截图。

  6. 在“重置兑换状态”下,选择“重置”。

    显示重置邀请状态设置的屏幕截图。

使用 PowerShell 或 Microsoft Graph API 重置兑换状态

重置用于登录的电子邮件地址

用户想要使用其他电子邮件登录时:

  1. 请确保将新的电子邮件地址添加到用户对象的 mailotherMails 属性。
  2. InvitedUserEmailAddress 属性中的电子邮件地址替换为新的电子邮件地址。
  3. 使用以下方法之一重置用户的兑换状态。

注意

  • 如果你要将用户的电子邮件地址重置为一个新地址,建议设置 mail 属性。 这样,除使用邀请中的兑换链接之外,用户还可以登录到你的目录来兑换邀请。
  • 对于仅限应用的调用,如果向目标用户帐户分配了任何角色,便无法重置兑换状态。

使用 PowerShell 重置兑换状态

Install-Module Microsoft.Graph
Connect-MgGraph -Scopes "User.ReadWrite.All"

$user = Get-MgUser -Filter "startsWith(mail, 'john.doe@fabrikam.net')"
New-MgInvitation `
    -InvitedUserEmailAddress $user.Mail `
    -InviteRedirectUrl "https://myapps.microsoft.com" `
    -ResetRedemption `
    -SendInvitationMessage `
    -InvitedUser $user

使用 Microsoft Graph API 重置兑换状态

要使用 Microsoft Graph 邀请 API,请将 resetRedemption 属性设置为 true,并在 invitedUserEmailAddress 属性中指定新电子邮件地址。

POST https://graph.microsoft.com/v1.0/invitations  
Authorization: Bearer eyJ0eX...  
ContentType: application/json  
{  
   "invitedUserEmailAddress": "<<external email>>",  
   "sendInvitationMessage": true,  
   "invitedUserMessageInfo": {  
      "messageLanguage": "en-US",  
      "ccRecipients": [  
         {  
            "emailAddress": {  
               "name": null,  
               "address": "<<optional additional notification email>>"  
            }  
         } 
      ],  
      "customizedMessageBody": "<<custom message>>"  
},  
"inviteRedirectUrl": "https://myapps.microsoft.com?tenantId=",  
"invitedUser": {  
   "id": "<<ID for the user you want to reset>>"  
}, 
"resetRedemption": true 
}

下一步