Microsoft Azure Integration
Sync with Microsoft Azure / Entra ID to import your People from Microsoft 365 using an app registration and read-only Graph access.
Microsoft Azure Sync
K12Panel can sync with Microsoft Azure (Microsoft Entra ID) to import People from Microsoft 365. Azure sync imports People only — it does not import devices.
Microsoft handles permissions differently than Google. Instead of an OAuth consent flow, you create an App Registration in your Microsoft tenant, grant it read-only access to users, and then copy a few values from that registration into K12Panel.
Create the Azure App Registration
- Sign in to the Azure Portal as an administrator at portal.azure.com.
- Go to App Registrations and click + New registration.
- Give it a clear name, for example “Allow Panel to read users.”
- Leave Supported account types set to “Accounts in this organizational directory only,” leave Redirect URI blank, and click Register.
Create a client secret
- Open Certificates & secrets and click + New client secret.
- Add a description such as “Panel access” and set the expiry to 24 months.
- Click Add, then immediately copy the secret Value and store it somewhere safe. Azure hides this value permanently after you leave the page.
If you lose the secret, just delete it and create a new one. You will also need to create a new secret when the current one expires — K12Panel will remind you as the expiry approaches.
Grant the Graph permission
- Open API Permissions and click + Add a permission.
- Choose Microsoft Graph, then Application permissions.
- Search for and check User.Read.All, then click Add permission.
- Click Grant admin consent above the permission list so the permission is active.
Enter Your Azure Information into K12Panel
- In K12Panel, click Add Azure Sync Settings.
- Client ID — the “Application (client) ID” from the app registration’s Overview page.
- Secret — the secret Value you copied when creating the client secret.
- Click Save. K12Panel is now ready to sync People from Azure.
Using Azure and Google Together
If you sync with both clouds, Google runs first and Azure runs second. Because Azure runs second, its People values overwrite the matching values imported from Google. People are merged across clouds by email address, so a person present in both must be removed from both before they are removed from K12Panel. See the Cloud Sync article for the full explanation.
Common Questions
Does Azure sync import devices?
No. Azure sync imports People only.
What permission does the app registration need?
Microsoft Graph User.Read.All (Application), with admin consent granted.
My client secret expired - what do I do?
Create a new client secret in Azure and update it in K12Panel.
Where do I find the Client ID?
On the app registration's Overview page, as Application (client) ID.
I sync both clouds - which one takes priority?
Azure runs second and overwrites the matching People values from Google.