Connectors Microsoft 365
Microsoft 365
The Microsoft 365 connector reads your Microsoft Entra directory, SharePoint and OneDrive changes, Teams apps and Copilot through Microsoft Graph. How the connect flow works is on How connectors work.
Who can do it
Connecting needs connections:manage (Manage connections), held by Owner, Admin and Fleet operator. On Microsoft's side, a Global Administrator of your Microsoft tenant has to accept the permissions. Microsoft's word, tenant, means your Microsoft directory here.
Connect
- Go to Collection › Connectors and choose Connect on Microsoft 365.
- Give the connection a Name, and choose Modes (at least one):
- Identity: Microsoft Entra users, groups, directory roles, enterprise applications and their grants, conditional access, sign-ins and audits.
- Microsoft 365: SharePoint and OneDrive changes and sharing links, Teams apps and the organisation's app catalogue.
- Copilot: Microsoft 365 Copilot usage per licensed user and, opted in, the interactions themselves.
- Sign in with one of two methods:
- Grant Oxelone admin consent on Microsoft Entra. The hint reads "Microsoft asks a Global Administrator of your tenant to accept the permissions Oxelone requests, then to sign in as that administrator, then sends you back here." This method is offered once a global admin has registered Oxelone's app.
- Your own registration. Upload a JSON file with
tenant_id,client_idandclient_secretfrom a registration your directory owns. The hint reads "A JSON file with tenant_id, client_id and client_secret from a registration your tenant owns."
- Continue through Check and Rules, then choose Create connection.
On Microsoft's side
For Your own registration, register an app in the Microsoft Entra admin center. Microsoft's steps are: sign in as at least an Application Developer, go to Entra ID › App registrations, choose New registration, name it, choose Single tenant only for most apps, choose Register, and record the Application (client) ID. The Graph permissions the connector reads with are listed under What it needs to be Readable below.
Vendor documentation: https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app
What it reads
Mode: Identity
| Records | What you get |
|---|---|
| Users | Every user in the directory: sign-in enabled or not, member or guest. |
| Groups | Every group: security, mail-enabled or Microsoft 365, and its visibility. |
| Group members | Who is in each group. |
| Directory role members | Who holds each activated directory role, such as Global Administrator. |
| Enterprise applications | Every enterprise application: enabled or not, and whether users need an assignment to sign in. |
| OAuth grants | Delegated permission grants: which application may act for which users, and with what scopes. |
| Application permission grants | Applications holding app-only Microsoft Graph permissions. |
| Conditional access policies | Each policy, whether it is enforced, and what it grants or blocks. |
| Sign-ins | Sign-in events, fetched forward from a watermark. |
| Directory audits | Directory changes (consents, role assignments, app changes), fetched forward from a watermark. |
Mode: Microsoft 365
| Records | What you get |
|---|---|
| Sites | Every SharePoint site. |
| File changes | Files and folders that changed in tracked sites since the last sync, by name and size. Contents are never read. |
| Sharing links | Sharing links and permissions on files that changed since the last sync. |
| Teams apps | Apps installed in each team and where each came from. |
| Organisation apps | Apps and agents the organisation published to its own catalogue. |
Mode: Copilot
| Records | What you get |
|---|---|
| Copilot usage | Each licensed user's last Copilot activity, from the 28-day report. |
| Copilot interactions | Off by default. "Prompts of licensed Copilot users are read from Microsoft Graph, checked by the engines and never stored; matches appear as Alerts." |
What it can do
All need the matching Graph write permission.
| Action | Consequence | Reversible |
|---|---|---|
| Disable the account | They cannot sign in to Microsoft 365 until a directory admin enables the user again. | Yes |
| Revoke sign-in sessions | Every refresh token and session cookie is invalidated within a few minutes; they sign in again. External users are not affected. | No |
| Remove from group | They lose whatever the group grants: access, licences and Teams membership. | Yes |
| Revoke OAuth grant | The application loses this delegated permission once its current tokens expire. | No |
| Remove application permission | The application loses this app-only Microsoft Graph permission. | No |
| Disable enterprise application | Nobody in the tenant can sign in to this application until it is enabled again. | Yes |
| Remove sharing link | Anyone using this link or permission loses access to the file. | No |
| Remove Teams app | The app is uninstalled from the team until somebody installs it again. | Yes |
What it checks
Twelve posture checks, no inspections.
| Rule | Severity | Action offered |
|---|---|---|
| Conditional access policy in report-only mode | Medium | None |
| Conditional access policy disabled | Low | None |
| Guest user | Low | None |
| Global Administrator | High | None |
| Enterprise application open to all users | Medium | Disable enterprise application |
| Tenant-wide delegated permission grant | Medium | Revoke OAuth grant |
| Application holds app-only Microsoft Graph permissions | Low | None |
| Sign-in from a legacy client | Medium | None |
| Application consent granted | Medium | None |
| Anonymous sharing link | High | Remove sharing link |
| Sideloaded Teams app | Medium | Remove Teams app |
| Copilot licence unused for 60 days | Low | None |
What it needs to be Readable
Reads need these Microsoft Graph application permissions: User.Read.All, Group.Read.All, GroupMember.Read.All, RoleManagement.Read.Directory, AuditLog.Read.All, Policy.Read.All, Sites.Read.All, Files.Read.All, TeamsAppInstallation.Read.Group, AppCatalog.Read.All, Application.Read.All, Directory.Read.All and Reports.Read.All. Copilot interactions also need AiEnterpriseInteraction.Read.All.
Actions need: User.EnableDisableAccount.All, User.RevokeSessions.All, GroupMember.ReadWrite.All, AppRoleAssignment.ReadWrite.All, Application.ReadWrite.All, Files.ReadWrite.All, TeamsAppInstallation.ReadWriteForTeam.All and DelegatedPermissionGrant.ReadWrite.All.
Copilot usage and Copilot interactions also need Microsoft 365 Copilot in the plan. Without it the row reads "Not readable — the organisation's plan does not include this (Microsoft 365 Copilot)."
Sync period
1 h, 6 h and 1 d. There is no 15-minute period.
When it goes wrong
The messages are the shared ones on How connectors work. The ones specific to this sign-in:
| What you see | What it means |
|---|---|
| A global admin has not registered this platform with Oxelone, so the Oxelone app cannot be installed. Connect with your own registration or token instead. | No Oxelone app is registered. Use Your own registration. |
| Oxelone's registration for this platform is not available, so this install cannot be finished. | The registration was removed while you were signing in. |
With the API
Not available with an API key.