Microsoft Entra 外部 ID でゲスト ユーザーの引き換え状態をリセットする

適用対象: 白いチェック マーク記号が付いた緑の円。 従業員テナント 灰色の X 記号が付いた白い円。 外部テナント (詳細はこちら)

この記事では、ゲスト ユーザーのサインイン情報を、彼らが B2B コラボレーションの招待を引き換えた後に更新する方法について説明します。 次のような場合に、サインイン情報の更新が必要になることがあります。

  • ユーザーが別の電子メールおよび ID プロバイダーを使用してサインインすることを望んでいる
  • ホーム テナント内のユーザーのアカウントが削除され、再作成された
  • ユーザーは別の会社に転職したが、リソースへのアクセス権は引き続き同じものが必要である
  • ユーザーの責任が別のユーザーに移った

以前はこれらのシナリオを管理するために、ディレクトリからゲスト ユーザーのアカウントを手動で削除し、そのユーザーを再度招待する必要がありました。 現在は Microsoft Entra 管理センター、PowerShell または Microsoft Graph 招待 API を使用して、ユーザーのオブジェクト ID、グループ メンバーシップ、アプリの割り当てを維持したままで、ユーザーの引き換え状態をリセットし、そのユーザーを再度招待できます。 ユーザーが新しい招待を引き換えたときに、ユーザーの UserPrincipalName (UPN) は変更されませんが、ユーザーのサインイン名は新しいメールアドレスに変更されます。 その後、ユーザーは新しい電子メール、またはユーザー オブジェクトの otherMails プロパティに追加した電子メールを使用してサインインできます。

必要な Microsoft Entra ロール

ユーザーの引き換え状態をリセットするには、ディレクトリ スコープで次のいずれかのロールが割り当てられている必要があります。

Microsoft Entra 管理センターを使用して利用状態をリセットする

ヒント

この記事の手順は、開始するポータルによって若干異なる場合があります。

  1. Microsoft Entra 管理センターユーザー管理者以上でサインインしてください。

  2. [ID]>[ユーザー]>[すべてのユーザー] の順に移動します。

  3. 一覧でユーザーの名前を選択して、ユーザー プロファイルを開きます。

  4. (省略可能) ユーザーが別の電子メールを使用してサインインすることを望んでいる場合:

    1. [プロパティの編集] アイコンを選択します。
    2. [電子メール] へスクロールして新しいメールアドレスを入力します。
    3. [他の電子メール] の横にある [メールの追加] を選択 します。 [追加] を選択し、新しいメール アドレスを入力して、[保存] を選択します。
    4. ページの下部にある [保存] ボタンを選択して、すべての変更を保存します。
  5. [概要] タブの [マイ フィード] で、[B2B コラボレーション] タイルの [Reset redemption status] (利用状態のリセット) リンクを選びます。

    B2B コラボレーションのリセット リンクを示すスクリーンショット。

  6. [Reset redemption status] (利用状態のリセット) で、[リセット] を選択します。

    招待の状態のリセット設定を示すスクリーンショット。

引き換え状態のリセットに PowerShell または Microsoft Graph API を使用する

サインインに使用する電子メール アドレスをリセットする

ユーザーが別の電子メールを使用してサインインすることを望んでいる場合:

  1. 新しい電子メール アドレスが、user オブジェクトの mail プロパティまたは otherMails プロパティに追加されていることを確認します。
  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 
}

次のステップ