Two-Factor Authentication (2FA) for Microsoft Teams
Microsoft Teams is a unified communication and collaboration platform that combines persistent workplace chat, video meetings, file storage (including collaboration on files), and many more extremely useful features for business communications. Microsoft Teams is included in Office365 for free.
Microsoft Teams 2FA (Two-Factor Authentication) or Multi-Factor Authentication is the process of secure Authentication in which a user or an organizational employee have to provide two factors to gain the access to Microsoft Teams data. Microsoft Teams Two-Factor Authentication starts with user submitting his traditional username and password. Once user successfully gets authenticated with the 1st step verification, configured 2FA (OTP over SMS, Push Notifications, Google Authenticator etc) method prompts on for 2nd-step verification. After successfully authenticating with both of the steps a user is granted with the access to the Microsoft Teams resources. This additional layer prevents the unauthorized person from accessing the resources even if cyber attackers get to know your credentials.
If you are looking for achieving this using a product with top-notch features, and a dedicated team to guide you hassle-free through this journey - you have arrived at the right destination!
miniorange provides provides 15+ authentication methods and solutions for various use cases. It allows users and organization to setup certain authentication and settings which includes password restrictions, restricting sign-in methods, as well as other security settings. miniorange also make way for authentication apps that support Time-Based One-Time Password (TOTP) Google Authenticator, Microsoft Authenticator, Authy 2-Factor authentication app and our own miniorange Authenticator app. Follow the given guide to setup Microsoft Teams MFA.
Connect with External Source of Users
miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, Azure AD, OpenLDAP, Google, AWS Cognito etc), Identity Providers (like Shibboleth, Ping, Okta, OneLogin, KeyCloak), Databases (like MySQL, Maria DB, PostgreSQL) and many more.
miniOrange
Authenticator App
Google
Authenticator App
Authy 2-Factor
Authentication App
Microsoft
Authenticator App
Follow the Step-by-Step Guide given below for Microsoft Teams Two Factor Authentication (2FA)
1. Configure Microsoft Teams in miniOrange
- Login into miniOrange Admin Console.
- Go to Apps and click on Add Application button.

- In Choose Application Type click on Create App button in SAML/WS-FED application type.

- Search for Microsoft Teams in the list, if you don't find Microsoft Teams in the list then, search for custom and you can set up your application via Custom SAML App.

- Enter the details as shown:
SP Entity ID or Issuer |
urn:federation:MicrosoftOnline |
ACS URL |
https://login.microsoftonline.com/login.srf |
- Leave the Add Attributes section empty.

- Go to the Add Policy and select DEFAULT from the Group Name dropdown.
- Give a policy name for Microsoft Teams in the Policy Name field.
- Select Password as the First Factor Type for authentication.
- Click on Save to configure Microsoft Teams.

- Click on Select in the Action column of the configured app, and go to Metadata.
- Depending upon your requirement, click on the Show Metadata Details button to get the metadata which will be required later in Step3(c)
2. Configure Your User Directory (Optional)
miniOrange provides user authentication from various external sources, which can be Directories (like ADFS, Microsoft Active Directory, Azure AD, OpenLDAP, Google, AWS Cognito etc), Identity Providers (like Okta, Shibboleth, Ping, OneLogin, KeyCloak), Databases (like MySQL, Maria DB, PostgreSQL) and many more. You can configure your existing directory/user store or add users in miniOrange.
- Click on User Stores >> Add User Store in the left menu of the dashboard.

- Select User Store type as AD/LDAP.

- STORE LDAP CONFIGURATION IN MINIORANGE: Choose this option if you want to keep your configuration in miniOrange. If active directory is behind a firewall, you will need to open the firewall to allow incoming requests to your AD.
- STORE LDAP CONFIGURATION ON PREMISE: Choose this option if you want to keep your configuration in your premise and only allow access to AD inside premises. You will have to download and install miniOrange gateway in your premise.

- Enter LDAP Display Name and LDAP Identifier name.
- Select Directory Type as Active Directory.
- Enter the LDAP Server URL or IP Address against LDAP Server URL field.
- Click on Test Connection button to verify if you have made a successful connection with your LDAP server.

- In Active Directory, go to the properties of user containers/OU's and search for Distinguished Name attribute.

- Enter the valid Bind account Password.
- Click on Test Bind Account Credentials button to verify your LDAP Bind credentials for LDAP connection.

- Search Base is the location in the directory where the search for a user begins. You will get this from the same place you got your Distinguished name.

- Select a suitable Search filter from the drop down menu. To use custom Search Filter select "Custom Search Filter" option and customize it accordingly.

- You can also configure following options while setting up AD. Enable Activate LDAP in order to authenticate users from AD/LDAP. Click on the Save button to add user store.

Here's the list of the attributes and what it does when we enable it. You can enable/disable accordingly.
Attribute |
Description |
Activate LDAP |
All user authentications will be done with LDAP credentials if you Activate it |
Sync users in miniOrange |
Users will be created in miniOrange after authentication with LDAP |
Backup Authentication |
If LDAP credentials fail then user will be authenticated through miniOrange |
Allow users to change password |
This allows your users to change their password. It updates the new credentials in your LDAP server |
Enable administrator login |
On enabling this, your miniOrange Administrator login authenticates using your LDAP server |
Show IdP to users |
If you enable this option, this IdP will be visible to users |
Send Configured Attributes |
If you enable this option, then only the attributes configured below will be sent in attributes at the time of login |
- Click on Save. After this, it will show you the list of User stores. Click on Test Configuration to check whether you have enter valid details. For that, it will ask for username and password.

- On Successful connection with LDAP Server, a success message is shown.
- Click on Test Attribute Mapping.

- Enter a valid Username. Then, click on Test. Mapped Attributes corresponding to the user are fetched.

- After successful Attribute Mapping Configuration, go back to the ldap configuration and enable Activate LDAP in order to authenticate users from AD/LDAP.
Refer our guide to setup LDAPS on windows server.
User Import and Provisioning from AD
- Go to Settings in the Customer Admin Account.

- Enable the "Enable User Auto Registration" option and click Save.

- (Optional) To send a welcome email to all the end users that will be imported, enable the "Enable sending Welcome Emails after user registration" option and click Save.

- From the Left-Side menu of the dashboard select Provisioning.

- In Setup Provisioning tab select Active Directory in the Select Application Drop Down.
- Toggle the Import Users tab, click on Save button.

- On the same section, switch to Import Users section.
- Select Active Directory from the dropdown and click on the Import Users tab, to import all the users from Active Directory to miniOrange.

- You can view all the Users you have imports by selecting Users >> User List from Left Panel.

- All the imported users will be auto registered.
- These groups will be helpful in adding multiple 2FA policies on the applications.
miniOrange integrates with various external user sources such as directories, identity providers, and etc.
3. Setup SSO in Microsoft Teams
- Open Powershell in Administrator Mode. The Microsoft Online Services module needs to be installed for the below commands to run.
- Install-Module -Name AzureAD
- If prompted about installing a module from an untrusted repository, type Y and press ENTER.
- Install the 64-bit version of the Microsoft Online Services Sign-in Assistant. Download it from here.
- Run the Following command in Powershell to install MSOnline Module : Install-Module MSOnline
- If prompted to install the NuGet provider, type Y and press ENTER.
- If prompted to install the module from PSGallery, type Y and press ENTER.
- Execute the following Powershell commands:
- $cred = Get-Credential. Enter Microsoft Teams Administrator credentials.
- Connect-MsolService -Credential $cred.
- Replace the following information with the one noted in above step:
- Replace ##DOMAIN NAME## by your Active Directory Domain Name. Ensure that the domain is not the default domain name as the default one cannot be set as the federated domain
- Replace ##IDP ENTITY ID## with the IdP Entity ID/Issuer from metadata details mentioned in Step1.
- Replace ##LOGOUT URL## with the Logout URL from metadata details mentioned in Step1.
- Replace ##CERTIFCATE## with the X.509 Certificate from metadata details mentioned in Step1.
- Set-MsolDomainAuthentication -Authentication Federated -DomainName ##DOMAIN NAME## -IssuerUri ##IDP ENTITY ID## -LogOffUri "##LOGOUT URL##" -PassiveLogOnUri "##LOGIN URL##" -SigningCertificate "##CERTIFICATE## -PreferredAuthenticationProtocol SAMLP
- You cannot federate your default "onmicrosoft.com" domain. To federate your Microsoft Teams tenant, you must add a custom domain to Microsoft Teams.
4. Configure 2FA for Microsoft Teams
4.1: Enable 2FA for Users of Microsoft Teams app
- To enable 2FA for Users of Microsoft Teams application. Go to Policies >> App Authentication Policy
- Click on Edit against the configured application.

- Enable the Enable 2-Factor Authentication (MFA) option.

- Click on Save.
4.2: Configure 2FA for your Endusers
- To enable 2FA/MFA for endusers, go to 2-Factor Authentication >> 2FA Options For EndUsers.
- Select default Two-Factor authentication method for end users. Also, you can select particular 2FA methods, which you want to show on the end users dashboard.
- Once Done with the settings, click on Save to configure your 2FA settings.

4.3: Enduser 2FA Setup
- Login to End-User Dashboard using end user login URL.
- For Cloud Version: The login URL (branding url) which you have set.
- For On-Premise version: The login URL will be the same as of Admin Login URL.
- Select Setup 2FA from left panel. Then select any of the 2FA method available.
- For now, we have selected the SMS >> OTP OVER SMS as our 2FA method. You can explore the guide to setup other 2FA methods here.
- Enable the OTP over SMS if you have your phone number added under your profile section else click on Edit button.

- Enter you Phone Number along with the necessary country code and click on the SAVE button.

5. Test Microsoft Teams 2FA
6. Adaptive Authentication with Microsoft Teams
A. Restricting access to Microsoft Teams with IP Blocking
B. Adaptive Authentication with Limiting number of devices.
Using Adaptive Authentication you can also restrict the number of devices the end user can access the Services on. You can allow end users to access services on a fixed no. of devices. The end users will be able to access services provided by us on this fixed no. of devices.
You can configure Adaptive Authentication with Device Restriction in following way
- Login to Self Service Console >> Adaptive Authentication.
- Add a Policy Name for your Adaptive Authentication Policy.
- Select your Action for behaviour Change and Challenge Type for user from the Action for behaviour Change Section.

- Scroll down to Device Configuration section and enable Allow User to Register Device option to allow users to register their devices.
- Enter the Number of Devices which are allowed to register in field next to Number of Device Registrations Allowed
- Choose Action if number of devices exceeded (This will override your setting for Action for Behaviour Change.)
- Challenge: The user needs to verify himself using any of the three methods mentioned in table in step 6.1
- Deny : Deny users access to the system
- Enable option Send email alerts to Users if number of Device registrations exceeded allowed count if you want to alert the user about no of devices exceeding the limit. Save the configuration.

C. Add Adaptive Authentication policy to Microsoft Teams.
- Login to Self Service Console >> Policies.
- Click on Edit option for predefined SAML app policy.

- Set your application name in the Application and select password as Login Method.
- Enable Adaptive Authentication on Policy page and select the required restriction method as an option.
- From Select Login Policy dropdown select the policy we created in last step and click on save.

How to add a trusted Device
- When End-user log in to the self service console after the policy for device restriction is on, he is provided the option to add the current device as a trusted device.
External References