Integrating 3CX Single Sign-On (SSO) with Microsoft 365 can improve your team productivity by streamlining access, centralizing user management, enhancing security, enabling seamless communication and collaboration, facilitating unified contact management, optimizing data sharing, and providing valuable reporting and analytics capabilities. Users can access both systems with a single set of credentials, reducing login time and administrative overhead. Stronger authentication methods enhance security and protect against unauthorized access. Seamless communication and collaboration tools improve teamwork efficiency. Unified contact management simplifies finding and contacting colleagues. Efficient data sharing eliminates the need to switch between applications. Reporting and analytics provide valuable insights for optimizing productivity. Overall, the integration enhances workflow efficiency and productivity in the organization.
Project Goals
To configure Microsoft 365 or Azure Active Directory to sync users to 3CX
To allow users to use their MS365 Account to log in to the 3CX Web Client
Configure users to sync their MS365 attributes to the 3CX web client
Architecture
![](https://static.wixstatic.com/media/3e4bb8_b9e2365ea5314c169660b48cf4ebcf0f~mv2.png/v1/fill/w_980,h_542,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_b9e2365ea5314c169660b48cf4ebcf0f~mv2.png)
Requirement
Microsoft 365 Global Admin Role
3CX Super Admin Role
Microsoft 365 License
3CX Standard or Professional Subscription
Why integrate 3CX SSO with MS365?
When implementing 3CX Single Sign-On (SSO) with MS365 Integration, organizations can enhance productivity through the following measures:
1. Streamlined Access: By integrating 3CX SSO with MS365, users can access both systems with a single set of login credentials. This eliminates the need for separate login processes and saves time for employees. They can seamlessly switch between applications without the hassle of repeated logins, leading to improved productivity.
2. Centralized User Management: Integrating 3CX SSO with MS365 allows for centralized user management. User provisioning and deprovisioning can be handled from a single point of control, reducing administrative overhead and ensuring that access rights are consistent across both systems. This streamlines user onboarding and offboarding processes, enabling IT teams to allocate their time more efficiently.
3. Enhanced Security: SSO integration enhances security by enforcing stronger authentication methods. With 3CX SSO and MS365 integration, organizations can implement multi-factor authentication (MFA) for enhanced protection. This helps prevent unauthorized access and reduces the risk of data breaches. Improved security measures contribute to a productive work environment by minimizing potential disruptions caused by security incidents.
4. Seamless Communication and Collaboration: 3CX SSO integration with MS365 enables a seamless flow of communication and collaboration. Users can leverage MS365 tools such as Microsoft Teams, Outlook, and SharePoint directly within the 3CX communication platform. This integration eliminates the need to switch between different applications, fostering efficient collaboration and enhancing productivity.
5. Unified Contact Management: Integrating 3CX SSO with MS365 allows for unified contact management. Users can access their contacts from both systems in a consolidated manner. This integration streamlines the process of finding and communicating with colleagues, clients, or partners, enhancing productivity by reducing time spent searching for contact information.
6. Efficient Data Sharing: With 3CX SSO and MS365 integration, sharing data and documents becomes more efficient. Users can seamlessly access and share files stored in MS365 applications through the 3CX communication platform. This eliminates the need to switch between applications, improving workflow efficiency and productivity.
7. Enhanced Reporting and Analytics: Integrating 3CX SSO with MS365 enables comprehensive reporting and analytics capabilities. Organizations can gain insights into user activity, communication patterns, and collaboration trends. This data can be utilized to identify bottlenecks, optimize processes, and make informed decisions to boost productivity.
In summary, integrating 3CX SSO with MS365 enhances productivity by streamlining access, centralizing user management, improving security, enabling seamless communication and collaboration, facilitating unified contact management, optimizing data sharing, and providing valuable reporting and analytics capabilities.
DIY
No coding is required. Use the Azure Portal and 3CX Management Console to build on what you learned.
Step 1 of 3 Configure the App ID
Log in as an admin to Azure Portal > Click Azure Active Directory
![](https://static.wixstatic.com/media/3e4bb8_98bfde356a834856a9166e845a4ec514~mv2.png/v1/fill/w_980,h_458,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_98bfde356a834856a9166e845a4ec514~mv2.png)
Figure 1: Azure Active Directory
Navigate to App registration > Click New registration and enter the app details
![](https://static.wixstatic.com/media/3e4bb8_d1ac844180ce44f295592962a4295720~mv2.png/v1/fill/w_965,h_682,al_c,q_90,enc_auto/3e4bb8_d1ac844180ce44f295592962a4295720~mv2.png)
Figure 2: Azure app registration
Name: Enter the app’s name, e.g. "3CX Server-side" or user your preferred name
Supported account types: Leave default or update based on your needs.
In the Redirect URI: Set the type as "Web" You will find the URL value in the 3CX Management Console in the session Microsoft 365 Integration as shown in subfigures (6a, b, and c)
Paste the value you copied into the text field and Click Register
![](https://static.wixstatic.com/media/3e4bb8_31c8ea54c6864bd1969a691320e970bc~mv2.png/v1/fill/w_888,h_956,al_c,q_90,enc_auto/3e4bb8_31c8ea54c6864bd1969a691320e970bc~mv2.png)
Figure 3: Azure app registration configurations
![](https://static.wixstatic.com/media/3e4bb8_5fd62b54d2e34afe8659eeae5e094023~mv2.png/v1/fill/w_980,h_504,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_5fd62b54d2e34afe8659eeae5e094023~mv2.png)
Figure 4: 3CX management console app integration portal
![](https://static.wixstatic.com/media/3e4bb8_def9dcc906a34351adb6ee4c737b7533~mv2.png/v1/fill/w_980,h_630,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_def9dcc906a34351adb6ee4c737b7533~mv2.png)
Figure 5: 3CX app registration configurations
While you are still in the 3CX management console Generate the certificate required in the next step
![](https://static.wixstatic.com/media/3e4bb8_cdc25a610a6b40e3aff09c15dd9fbc97~mv2.png/v1/fill/w_692,h_149,al_c,q_85,enc_auto/3e4bb8_cdc25a610a6b40e3aff09c15dd9fbc97~mv2.png)
Figure 6: 3CX Public Key pair generation
Step 2 of 3 Configure the app Public Key Pair for authentication
In the app "Overview" section, copy the "Application (client) ID" and paste it on a notepad or a text editor for later use.
Click Authentication
![](https://static.wixstatic.com/media/3e4bb8_99e44a26228f44ad9caaa10a4bd5c65f~mv2.png/v1/fill/w_734,h_564,al_c,q_90,enc_auto/3e4bb8_99e44a26228f44ad9caaa10a4bd5c65f~mv2.png)
Figure: 7 Server-side app registration confiurations
In the Authentication section, scroll to Implicit grant and hybrid flow and select ID token (Used for implicit and hybrid flow)
In the supported account type, select Accounts in this organization directory only Please note, if you have multi-tenant select the second option
In the advanced section, under Allow public client flow, select no and
Save your changes
![](https://static.wixstatic.com/media/3e4bb8_9c0eb91d4c1b4144b3e4773825ab85f2~mv2.png/v1/fill/w_980,h_932,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_9c0eb91d4c1b4144b3e4773825ab85f2~mv2.png)
Figure 8: Authentication configuration
In the certificate & secrete section, click upload certificate and upload the generated file "public_key.pem" you downloaded earlier from 11a.
![](https://static.wixstatic.com/media/3e4bb8_63a517c5ece54c5fb2ec1781c810f7fe~mv2.png/v1/fill/w_789,h_771,al_c,q_90,enc_auto/3e4bb8_63a517c5ece54c5fb2ec1781c810f7fe~mv2.png)
Figure: 9 Certificate and Secret Key Service
![](https://static.wixstatic.com/media/3e4bb8_a0251942d1f24df091ca0c3ff37b93d0~mv2.png/v1/fill/w_980,h_375,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_a0251942d1f24df091ca0c3ff37b93d0~mv2.png)
Figure 10: Certificate and Security Key Configuration
Step 3 of 3 Configure the app API permissions.
This is the final config stage from the Azure side.
In the API permissions section as shown in Figure 7
In "API permissions" section click on the "Add a permission" and select "Microsoft Graph Permissions" > "Application Permissions". Add the following:
User.Read.All
Calendars.Read
Contacts.Read
Mail.Send
![](https://static.wixstatic.com/media/3e4bb8_2a813603e50e406493eb77b2d16a34ac~mv2.png/v1/fill/w_980,h_513,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_2a813603e50e406493eb77b2d16a34ac~mv2.png)
Figure 11: API Permission Configuration
![](https://static.wixstatic.com/media/3e4bb8_54fb5b5ef9624b78867c4de84cd674b8~mv2.png/v1/fill/w_835,h_608,al_c,q_90,enc_auto/3e4bb8_54fb5b5ef9624b78867c4de84cd674b8~mv2.png)
Figure 12: Request API Permission
Click on the "Add permissions" and wait for 1-5 minutes for the Microsoft 365 Changes to apply. Once the changes have been applied the result shows look like below.
Go to the 3CX Management Console to complete the integration.
![](https://static.wixstatic.com/media/3e4bb8_77515b74d2d946b5b3915be8b355f4c1~mv2.png/v1/fill/w_890,h_339,al_c,q_85,enc_auto/3e4bb8_77515b74d2d946b5b3915be8b355f4c1~mv2.png)
Figure: 13 API Permission Result
In the 3CX Console, Click Settings > Microsoft 365 as shown in Figure 4.
The Integration status should change to OK as shown in Figure 14
![](https://static.wixstatic.com/media/3e4bb8_0d35a6b5896545afbe0ddd51cdebab97~mv2.png/v1/fill/w_810,h_163,al_c,q_85,enc_auto/3e4bb8_0d35a6b5896545afbe0ddd51cdebab97~mv2.png)
Figure 14: MS365 Integration Status
Congratulation! You have completed the first phase of the integration.
Configure the MS365 users attribute you want to sync. You can change this at any time to suit your organization's requirements. For now, I would like to sync the MS365 User photo only.
Configure "User Sync" (Optional)
3CX Settings> Microsoft 365 > User Sync tab
![](https://static.wixstatic.com/media/3e4bb8_f892a9a96f6d4485a02e9b7fecefdc3b~mv2.png/v1/fill/w_980,h_502,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_f892a9a96f6d4485a02e9b7fecefdc3b~mv2.png)
Figure 15: 3CX User Sync Configuration
Configure "User Sign-in" (Required) I have allowed all users to use the SSO functionalities to improve org-wide security. It is up to you and your organization to determine what you want.
Click Ok at the top tab
![](https://static.wixstatic.com/media/3e4bb8_ca53bc58e2584da78786efc08c86f265~mv2.png/v1/fill/w_980,h_797,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_ca53bc58e2584da78786efc08c86f265~mv2.png)
Figure 16: 3CX User Sign in Configuration
Configure Contact Sync (Optional)
If you want your users' private contact synced with 3CX Personal Phonebook you can go ahead to configure as required. Please note this feature requires you to have 3CX Professional or Enterprise Licence. It won't work for a Standard free License.
![](https://static.wixstatic.com/media/3e4bb8_6fb37e13179f4b05843cb407399c8736~mv2.png/v1/fill/w_980,h_590,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_6fb37e13179f4b05843cb407399c8736~mv2.png)
Figure 17: 3CX Contact Sync Configuration
Configure Calendar sync (Optional)
![](https://static.wixstatic.com/media/3e4bb8_2c334580a6b24ca98f9838c75f1dcde1~mv2.png/v1/fill/w_980,h_707,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_2c334580a6b24ca98f9838c75f1dcde1~mv2.png)
Figure 18: 3CX Calendar Sync Configuration
Configure Teams Direct Routing (Optional)
![](https://static.wixstatic.com/media/3e4bb8_578447638d2b4233859411a9a084b0bf~mv2.png/v1/fill/w_980,h_712,al_c,q_90,usm_0.66_1.00_0.01,enc_auto/3e4bb8_578447638d2b4233859411a9a084b0bf~mv2.png)
Figure 19: Microsoft Teams Direct Routing
Management Console Login page to confirm interaction with Microsoft 365 was successful
![](https://static.wixstatic.com/media/3e4bb8_f6670f84d9c94e9e99f950ecca539de7~mv2.png/v1/fill/w_336,h_435,al_c,q_85,enc_auto/3e4bb8_f6670f84d9c94e9e99f950ecca539de7~mv2.png)
User web client login page to confirm interaction with Microsoft 365 was successful
![](https://static.wixstatic.com/media/3e4bb8_a11d856d85a64d2c8c91ded1404297d0~mv2.png/v1/fill/w_341,h_361,al_c,q_85,enc_auto/3e4bb8_a11d856d85a64d2c8c91ded1404297d0~mv2.png)
Before - to confirm that the MS365 user photo was not in sync.
![](https://static.wixstatic.com/media/3e4bb8_787bdca4170842919a3a45db807a46a8~mv2.png/v1/fill/w_622,h_527,al_c,q_85,enc_auto/3e4bb8_787bdca4170842919a3a45db807a46a8~mv2.png)
After - to confirm that the MS365 user photo is now in sync.
![](https://static.wixstatic.com/media/3e4bb8_b115bd68648e4b28a4c06e24b48d5dca~mv2.png/v1/fill/w_668,h_533,al_c,q_85,enc_auto/3e4bb8_b115bd68648e4b28a4c06e24b48d5dca~mv2.png)
Conclusion
In conclusion, integrating 3CX SSO with MS365 offers numerous benefits for organisations, including improved productivity. By streamlining access, centralising user management, enhancing security, enabling seamless communication and collaboration, facilitating unified contact management, optimising data sharing, and providing valuable reporting and analytics capabilities, organisations can enhance workflow efficiency and productivity. This integration simplifies user access, reduces administrative overhead, strengthens security measures, and promotes efficient communication and collaboration among teams. It also streamlines contact management, data sharing, and provides insights for informed decision-making. Implementing 3CX SSO with MS365 integration is a valuable step towards maximising productivity within an organisation.
Comments