Microsoft Entra ID Integration
Enable enterprise Single Sign-On (SSO) with Microsoft Entra ID and optionally sync users from your directory.
Overview
This integration enables:
- One-click SSO using Entra ID credentials
- Automatic user provisioning (optional)
- Deprovisioning when users leave
- Role mapping between Entra and Noxys
- MFA support (inherits from Entra)
Benefits:
- Reduce password management burden
- Enforce organization's identity policies
- Automatic offboarding
- Audit trail of all authentications
Prerequisites
- Azure AD / Microsoft Entra ID tenant
- Global Administrator or Application Administrator role in Entra
- Admin role in Noxys
- HTTPS enabled (required for OAuth redirects)
Architecture
User → Noxys Login → Redirect to Entra → User authenticates → Token issued → User logged in
Step 1: Register Noxys in Entra ID
Create an app registration for Noxys in your Azure directory.
- Go to Azure Portal → Entra ID → App registrations
- Click New registration
- Configure:
- Name:
Noxys - Supported account types:
Accounts in this organizational directory only - Redirect URI: Platform: Web
- URI:
https://api.noxys.cloud/auth/callback
- URI:
- For self-hosted:
https://your-domain.com/auth/callback
- Name:
- Click Register
- Note the Application ID (Client ID)
Step 2: Create Client Secret
Generate credentials for Noxys to authenticate with Entra.
- In app registration → Certificates & secrets
- Click New client secret
- Configure:
- Description:
Noxys SSO - Expires: 24 months
- Description:
- Click Add
- Copy the Value (this is shown only once!)
- Store securely — you'll need it in Noxys
Step 3: Configure API Permissions
Grant Noxys permission to read user data.
- In app registration → API permissions
- Click Add a permission
- Select Microsoft Graph
- Choose Application permissions (for user sync) or Delegated permissions (for SSO only)
For SSO only:
Delegated permissions:
- openid
- profile
- email
- User.Read
For user sync:
Application permissions:
- User.Read.All
- Group.Read.All
- Click Grant admin consent for [Organization]
Step 4: Get Tenant ID
Find your Entra tenant ID.
- Entra ID → Overview
- Copy Tenant ID (GUID format:
00000000-0000-0000-0000-000000000001)
Step 5: Configure SSO in Noxys
Enable Entra ID SSO in Noxys admin panel.
- Noxys Admin Panel → Settings → Single Sign-On
- Click Enable SSO
- Choose Microsoft Entra ID
- Configure:
| Field | Value |
|---|---|
| Tenant ID | From step 4 |
| Client ID | From step 1 |
| Client Secret | From step 2 |
- Click Test Connection
- Should show: "✓ Successfully connected to Entra ID"
- Click Enable
Step 6: Test SSO Login
Verify SSO is working before rolling out to users.
- Logout of Noxys (clear session)
- Go to Noxys Login Page:
https://api.noxys.cloud/auth/login - Click Sign in with Microsoft
- Should redirect to Entra login
- Enter your Entra credentials
- Grant permissions if prompted
- Should redirect back and log you in
If this fails:
- Check redirect URI matches exactly in Entra app registration
- Verify client secret is correct
- Check browser console for errors
Step 7: User Provisioning (Optional)
Automatically sync users from Entra when they first log in.
- In Noxys → Settings → SSO → User Provisioning
- Enable: Auto-provision users on first login
- Configure default role:
admin— Full permissionsviewer— Read-only (recommended)
- Choose which fields to sync:
- ✓ Display name
- ✓ Department
- ✓ Job title
- Click Save
Now when users log in via SSO, they're automatically created in Noxys with the configured role.
Step 8: Test with Users
Invite a test user to verify the flow.
- In Entra ID, add a test user to your organization
- Have the user go to:
https://api.noxys.cloud/auth/login - Click Sign in with Microsoft
- User should be auto-provisioned and logged in
Configuration Reference
SSO Settings
| Setting | Options | Default | Description |
|---|---|---|---|
| Type | OIDC, SAML, Entra | - | Authentication protocol |
| Tenant ID | UUID | - | Entra tenant identifier |
| Client ID | UUID | - | Application ID in Entra |
| Client Secret | String | - | Application secret (secure) |
| Redirect URI | URL | - | Where to send users after login |
| Auto-provision | true/false | false | Create users on first login |
| Default Role | admin/viewer | viewer | Role for new users |
| Sync Fields | Array | email, name | Which fields to copy from Entra |
Attribute Mapping
By default, Noxys maps Entra attributes to user fields:
| Entra Attribute | Noxys Field | Example |
|---|---|---|
mail | alice@contoso.com | |
displayName | display_name | Alice Martin |
department | metadata.department | Engineering |
jobTitle | metadata.job_title | Security Engineer |
officeLocation | metadata.office | Paris |
To customize mappings, contact support.
Advanced: Group-Based Role Assignment
Map Entra security groups to Noxys roles.
-
In Entra ID, create security groups:
Noxys AdminsNoxys Viewers
-
Add users to groups
-
In Noxys → Settings → SSO → Role Mapping:
Group: Noxys Admins → Role: admin
Group: Noxys Viewers → Role: viewer -
Enable: Assign role based on group membership
Now users' roles are automatically assigned based on their Entra groups.
Deprovisioning
When a user is deleted from Entra ID:
Option 1: Manual (default)
- User remains in Noxys with
inactivestatus - Admin must manually delete in Noxys if needed
Option 2: Automatic
- Enable: Settings → SSO → Auto-deprovision users
- When deleted from Entra, automatically deactivated in Noxys after 24 hours
Troubleshooting
"Invalid client secret"
- Verify you copied the secret value (not the ID)
- Secret expires after 24 months — regenerate if needed
- Check no extra whitespace in secret
"Redirect URI mismatch"
- In Noxys:
https://api.noxys.cloud/auth/callback - In Entra app registration: Must match exactly (including https://)
- For self-hosted: Use your domain instead
"User not found in directory"
- Verify user has mail attribute set in Entra
- Check user account is enabled
- Verify in Entra: Users → User → Verify Mail field is populated
"SSO button not appearing"
- SSO must be enabled in Noxys: Settings → SSO → Enabled = ✓
- Clear browser cache
- Try incognito window
Users can't log in after SSO enabled
- Check Settings → SSO → Enable SSO for all users = ✓
- Verify email/password login is disabled (if desired)
- Users must use Sign in with Microsoft button
MFA Support
Entra ID automatically enforces your organization's MFA policies.
If MFA is enabled in Entra:
- User clicks Sign in with Microsoft
- Entra prompts for MFA (authenticator app, SMS, security key)
- After MFA verification, user is logged into Noxys
No additional MFA configuration needed in Noxys.
Audit & Compliance
All SSO logins are logged in Noxys audit log:
Event: "user.sso_login"
Details: {
"provider": "entra_id",
"email": "alice@contoso.com",
"timestamp": "2026-03-20T14:32:00Z"
}
Export audit logs for compliance:
- Settings → Audit Log → Export
Best Practices
-
Test with pilot group first
- Enable SSO for admins first
- Verify working before rolling out to all users
-
Set email as identifier
- Ensure all users have mail attribute in Entra
- Use email for both Entra and Noxys
-
Use group-based role assignment
- Simplifies role management at scale
- Aligns with org structure
-
Enable auto-deprovisioning
- Removes access when users leave
- Reduces manual admin work
-
Monitor MFA adoption
- Encourage MFA in Entra policies
- Check audit logs for successful logins
-
Review permissions quarterly
- Audit Entra app permissions
- Remove unnecessary scopes
Disabling SSO
If you need to disable SSO:
- Settings → SSO → Disable SSO
- Users can still log in with email/password
- No data is lost
To re-enable:
- Go through configuration steps again
- Users can use either SSO or email/password
Monitoring
Monitor SSO health in Settings → SSO → Status:
Provider: Microsoft Entra ID
Status: Connected ✓
Last sync: 2026-03-20 14:32:00
Users synced: 42
Failed logins (24h): 0
If status shows Disconnected:
- Verify client secret hasn't expired
- Check network connectivity to Azure
- Review Noxys error logs
- Contact support@noxys.eu
Support
- Entra ID Docs: https://learn.microsoft.com/en-us/entra/identity/
- OAuth 2.0 Guide: https://learn.microsoft.com/en-us/entra/identity-platform/
- Noxys Support: support@noxys.eu
- Status: status.noxys.cloud