Tutorial: Enforce multifactor authentication for B2B guest users
Applies to: Workforce tenants External tenants (learn more)
When collaborating with external B2B guest users, it’s a good idea to protect your apps with multifactor authentication policies. Then external users need more than just a user name and password to access your resources. In Microsoft Entra ID, you can accomplish this goal with a Conditional Access policy that requires MFA for access. MFA policies can be enforced at the tenant, app, or individual guest user level, the same way that they're enabled for members of your own organization. The resource tenant is always responsible for Microsoft Entra multifactor authentication for users, even if the guest user’s organization has multifactor authentication capabilities.
Example:
- An admin or employee at Company A invites a guest user to use a cloud or on-premises application that is configured to require MFA for access.
- The guest user signs in with their own work, school, or social identity.
- The user is asked to complete an MFA challenge.
- The user sets up MFA with Company A and chooses their MFA option. The user is allowed access to the application.
Note
Microsoft Entra multifactor authentication is done at resource tenancy to ensure predictability. When the guest user signs in, they'll see the resource tenant sign-in page displayed in the background, and their own home tenant sign-in page and company logo in the foreground.
In this tutorial, you will:
- Test the sign-in experience before MFA setup.
- Create a Conditional Access policy that requires MFA for access to a cloud app in your environment. In this tutorial, we’ll use the Azure Service Management API app to illustrate the process.
- Test your Conditional Access policy.
- Clean up the test user and policy.
If you don’t have an Azure subscription, create a Trial before you begin.
Prerequisites
To complete the scenario in this tutorial, you need:
- Access to Microsoft Entra ID P1 or P2 edition, which includes Conditional Access policy capabilities. To enforce MFA, you need to create a Microsoft Entra Conditional Access policy. MFA policies are always enforced at your organization, regardless of whether the partner has MFA capabilities.
- A valid external email account that you can add to your tenant directory as a guest user and use to sign in. If you don't know how to create a guest account, see Add a B2B guest user in the Microsoft Entra admin center.
Create a test guest user in Microsoft Entra ID
Tip
Steps in this article might vary slightly based on the portal you start from.
Sign in to the Microsoft Entra admin center as at least a User Administrator.
Browse to Identity > Users > All users.
Select New user, and then select Invite external user.
Under Identity on the Basics tab, enter the email address of the external user. Optionally, include a display name and welcome message.
Optionally, you can add further details to the user under the Properties and Assignments tabs.
Select Review + invite to automatically send the invitation to the guest user. A Successfully invited user message appears.
After you send the invitation, the user account is automatically added to the directory as a guest.
Test the sign-in experience before MFA setup
- Use your test user name and password to sign in to the Microsoft Entra admin center.
- You should be able to access the Microsoft Entra admin center using only your sign-in credentials. No other authentication is required.
- Sign out.
Create a Conditional Access policy that requires MFA
Sign in to the Azure portal as a security administrator or a Conditional Access administrator.
In the Azure portal, select Microsoft Entra ID.
In the left menu, under Manage, select Security.
Under Protect, select Conditional Access.
On the Conditional Access page, in the toolbar on the top, select Create new policy.
On the New page, in the Name textbox, type Require MFA for B2B portal access.
In the Assignments section, choose the link under Users and groups.
On the Users and groups page, choose Select users and groups, and then choose Guest or external users. You can assign the policy to different external user types, built-in directory roles, or users and groups.
In the Assignments section, choose the link under Cloud apps or actions.
Choose Select apps, and then choose the link under Select.
On the Select page, choose Azure Service Management API, and then choose Select.
On the New page, in the Access controls section, choose the link under Grant.
On the Grant page, choose Grant access, select the Require multifactor authentication check box, and then choose Select.
Under Enable policy, select On.
Select Create.
Test your Conditional Access policy
Use your test user name and password to sign in to the Microsoft Entra admin center.
You should see a request for more authentication methods. It can take some time for the policy to take effect.
Note
You also can configure cross-tenant access settings to trust the MFA from the Microsoft Entra home tenant. This allows external Microsoft Entra users to use the MFA registered in their own tenant rather than register in the resource tenant.
Sign out.
Clean up resources
When no longer needed, remove the test user and the test Conditional Access policy.
- Sign in to the Azure portal as a Microsoft Entra administrator.
- In the left pane, select Microsoft Entra ID.
- Under Manage, select Users.
- Select the test user, and then select Delete user.
- In the left pane, select Microsoft Entra ID.
- Under Security, select Conditional Access.
- In the Policy Name list, select the context menu (…) for your test policy, and then select Delete. Select Yes to confirm.
Next step
In this tutorial, you created a Conditional Access policy that requires guest users to use MFA when signing in to one of your cloud apps. To learn more about adding guest users for collaboration, see Add Microsoft Entra B2B collaboration users in the Microsoft Entra admin center.