Microsoft Sign in usage: Difference between revisions
(Add troubleshooting section for SSO behind reverse proxy/SSL termination) |
No edit summary |
||
| (2 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
{{DISPLAYTITLE: | {{DISPLAYTITLE:Microsoft Sign-In (SSO) Configuration}} | ||
[[Category:Configuration]] | [[Category:Configuration]] | ||
[[Category:Authentication]] | [[Category:Authentication]] | ||
== Overview == | == Overview == | ||
Microsoft Sign-In allows VoIPmonitor GUI users to authenticate using their Microsoft Entra ID (formerly Azure AD) accounts, providing Single Sign-On (SSO) capability. | |||
<kroki lang="mermaid"> | <kroki lang="mermaid"> | ||
| Line 16: | Line 11: | ||
flowchart LR | flowchart LR | ||
subgraph Entra["Microsoft Entra"] | subgraph Entra["Microsoft Entra"] | ||
A[Register App] --> B[Get | A[Register App] --> B[Get IDs] | ||
B --> C | B --> C[Assign Users] | ||
end | end | ||
subgraph GUI["VoIPmonitor GUI"] | subgraph GUI["VoIPmonitor GUI"] | ||
D[Enable MS Sign-In] --> E[Enter IDs] | |||
E --> F[Map Users] | |||
end | end | ||
C --> D | |||
</kroki> | </kroki> | ||
== | === User Mapping Order === | ||
When a user signs in with Microsoft, VoIPmonitor maps them to a GUI user profile in this order: | |||
# '''Direct email match''' - Username in VoIPmonitor matches Microsoft email | |||
# '''Secure users list''' - Microsoft email is listed in user's "Microsoft Sign In emails" field | |||
# '''Default user''' - Falls back to the user marked as "Default Microsoft Sign In account" | |||
== Quick Reference == | |||
{| class="wikitable" | |||
|- | |||
! Parameter !! Where to Get !! Where to Enter | |||
|- | |||
| '''Client ID''' || Microsoft Entra > App registration > Overview > ''Application (client) ID'' || GUI > Settings > System configuration > Advanced | |||
|- | |||
| '''Tenant ID''' || Microsoft Entra > App registration > Overview > ''Directory (tenant) ID'' || GUI > Settings > System configuration > Advanced | |||
|- | |||
| '''Redirect URI''' || Your VoIPmonitor GUI URL || Microsoft Entra > App registration > Redirect URIs | |||
|} | |||
== | == Part 1: Microsoft Entra Configuration == | ||
=== Register the Application === | |||
# Go to [https://entra.microsoft.com entra.microsoft.com] > '''App registrations''' > '''+ New registration''' | |||
# Configure: | |||
#* '''Name:''' e.g., "VoIPmonitor SSO" | |||
#* '''Supported account types:''' "Accounts in this organizational directory only" | |||
#* '''Redirect URI - Platform:''' '''Single page application''' | |||
#* '''Redirect URI - URL:''' Your VoIPmonitor GUI URL | |||
# Click '''Register''' | |||
# Note the '''Application (client) ID''' and '''Directory (tenant) ID''' from the Overview page | |||
{{Note|1='''Redirect URI format:''' | |||
* Correct: <code>https://voipmonitor.example.com</code> | |||
* Wrong: <code>https://voipmonitor.example.com/</code> (trailing slash) | |||
* Wrong: <code>https://voipmonitor.example.com/admin.php</code> (page name)}} | |||
=== | === Assign Users === | ||
In Microsoft Entra, go to '''Users''' and add users who should have access to VoIPmonitor via Microsoft Sign-In. | |||
== Part 2: VoIPmonitor GUI Configuration == | |||
: | |||
=== Enable Microsoft Sign-In === | |||
# Go to '''Settings > System configuration > Advanced''' | |||
# Enable '''Enable Microsoft Sign in''' | |||
# Enter: | |||
#* '''Microsoft client ID''' - from Entra | |||
#* '''Microsoft tenant ID''' - from Entra | |||
#* '''Redirect URI''' - leave empty (auto-detected) | |||
=== Map Users === | |||
For each user who will use Microsoft Sign-In: | |||
# | # Go to '''Users & Audit > Users''' > edit user | ||
# '''Secure users''' tab > fill '''Microsoft Sign In emails''' with their Microsoft email | |||
=== Default User (Optional) === | |||
To set a fallback user for unmapped Microsoft accounts: | |||
# Edit the desired user > '''Basic data''' tab | |||
# Check '''Default Microsoft Sign In account''' | |||
== | == Troubleshooting == | ||
=== SSO Fails Behind Reverse Proxy === | |||
'''Symptom:''' Redirect loops or "too many redirects" errors when using AWS ALB, Nginx, or other reverse proxies with SSL termination. | |||
'''Cause:''' The proxy terminates HTTPS but forwards HTTP to the backend, breaking the OAuth callback flow. | |||
'''Solution:''' Pass the original protocol via <code>X-Forwarded-Proto</code> header: | |||
<syntaxhighlight lang="nginx"> | |||
# Nginx configuration | |||
proxy_set_header X-Forwarded-Proto $scheme; | |||
</syntaxhighlight> | |||
For AWS ALB, this header is automatic but ensure intermediate proxies pass it through. See [[Nginx]] for complete configuration. | |||
== See Also == | |||
== | |||
* [[Google_Sign_in_usage]] - Google OAuth integration | |||
* [[User_Management]] - User account management | |||
* [[WEB_API#Custom_Login|Custom Login]] - LDAP/custom authentication scripts | |||
== AI Summary for RAG == | == AI Summary for RAG == | ||
'''Summary:''' | '''Summary:''' Microsoft Sign-In (SSO) integration for VoIPmonitor GUI using Microsoft Entra ID (formerly Azure AD). Currently in development branch only. Setup requires: (1) Register application in Microsoft Entra as Single Page Application, get Client ID and Tenant ID. (2) Configure GUI in Settings > System configuration > Advanced with IDs. (3) Map users via Secure users tab or set default fallback user. User mapping order: direct email match, Secure users list, default user. Redirect URI must be exact GUI URL without trailing slash or page names. For reverse proxy setups (AWS ALB, Nginx), configure X-Forwarded-Proto header to prevent redirect loops. | ||
'''Keywords:''' Microsoft Sign-In, SSO, Single Sign-On, Microsoft Entra, Azure AD, Azure Active Directory, authentication, OIDC, OAuth, GUI login, enterprise authentication | '''Keywords:''' Microsoft Sign-In, SSO, Single Sign-On, Microsoft Entra, Azure AD, Azure Active Directory, authentication, OIDC, OAuth, GUI login, enterprise authentication, tenant ID, client ID, redirect URI, user mapping, X-Forwarded-Proto, reverse proxy, AWS ALB | ||
'''Key Questions:''' | '''Key Questions:''' | ||
| Line 150: | Line 126: | ||
* Is Microsoft Sign-In available in the stable GUI version? | * Is Microsoft Sign-In available in the stable GUI version? | ||
* How do I set up a default user for Microsoft Sign-In? | * How do I set up a default user for Microsoft Sign-In? | ||
* Why | * Why does Microsoft Sign-In fail behind a reverse proxy? | ||
* What is the user mapping order for Microsoft Sign-In? | |||
* | |||
Latest revision as of 17:06, 8 January 2026
Overview
Microsoft Sign-In allows VoIPmonitor GUI users to authenticate using their Microsoft Entra ID (formerly Azure AD) accounts, providing Single Sign-On (SSO) capability.
User Mapping Order
When a user signs in with Microsoft, VoIPmonitor maps them to a GUI user profile in this order:
- Direct email match - Username in VoIPmonitor matches Microsoft email
- Secure users list - Microsoft email is listed in user's "Microsoft Sign In emails" field
- Default user - Falls back to the user marked as "Default Microsoft Sign In account"
Quick Reference
| Parameter | Where to Get | Where to Enter |
|---|---|---|
| Client ID | Microsoft Entra > App registration > Overview > Application (client) ID | GUI > Settings > System configuration > Advanced |
| Tenant ID | Microsoft Entra > App registration > Overview > Directory (tenant) ID | GUI > Settings > System configuration > Advanced |
| Redirect URI | Your VoIPmonitor GUI URL | Microsoft Entra > App registration > Redirect URIs |
Part 1: Microsoft Entra Configuration
Register the Application
- Go to entra.microsoft.com > App registrations > + New registration
- Configure:
- Name: e.g., "VoIPmonitor SSO"
- Supported account types: "Accounts in this organizational directory only"
- Redirect URI - Platform: Single page application
- Redirect URI - URL: Your VoIPmonitor GUI URL
- Click Register
- Note the Application (client) ID and Directory (tenant) ID from the Overview page
ℹ️ Note: Redirect URI format:
- Correct:
https://voipmonitor.example.com - Wrong:
https://voipmonitor.example.com/(trailing slash) - Wrong:
https://voipmonitor.example.com/admin.php(page name)
Assign Users
In Microsoft Entra, go to Users and add users who should have access to VoIPmonitor via Microsoft Sign-In.
Part 2: VoIPmonitor GUI Configuration
Enable Microsoft Sign-In
- Go to Settings > System configuration > Advanced
- Enable Enable Microsoft Sign in
- Enter:
- Microsoft client ID - from Entra
- Microsoft tenant ID - from Entra
- Redirect URI - leave empty (auto-detected)
Map Users
For each user who will use Microsoft Sign-In:
- Go to Users & Audit > Users > edit user
- Secure users tab > fill Microsoft Sign In emails with their Microsoft email
Default User (Optional)
To set a fallback user for unmapped Microsoft accounts:
- Edit the desired user > Basic data tab
- Check Default Microsoft Sign In account
Troubleshooting
SSO Fails Behind Reverse Proxy
Symptom: Redirect loops or "too many redirects" errors when using AWS ALB, Nginx, or other reverse proxies with SSL termination.
Cause: The proxy terminates HTTPS but forwards HTTP to the backend, breaking the OAuth callback flow.
Solution: Pass the original protocol via X-Forwarded-Proto header:
# Nginx configuration
proxy_set_header X-Forwarded-Proto $scheme;
For AWS ALB, this header is automatic but ensure intermediate proxies pass it through. See Nginx for complete configuration.
See Also
- Google_Sign_in_usage - Google OAuth integration
- User_Management - User account management
- Custom Login - LDAP/custom authentication scripts
AI Summary for RAG
Summary: Microsoft Sign-In (SSO) integration for VoIPmonitor GUI using Microsoft Entra ID (formerly Azure AD). Currently in development branch only. Setup requires: (1) Register application in Microsoft Entra as Single Page Application, get Client ID and Tenant ID. (2) Configure GUI in Settings > System configuration > Advanced with IDs. (3) Map users via Secure users tab or set default fallback user. User mapping order: direct email match, Secure users list, default user. Redirect URI must be exact GUI URL without trailing slash or page names. For reverse proxy setups (AWS ALB, Nginx), configure X-Forwarded-Proto header to prevent redirect loops.
Keywords: Microsoft Sign-In, SSO, Single Sign-On, Microsoft Entra, Azure AD, Azure Active Directory, authentication, OIDC, OAuth, GUI login, enterprise authentication, tenant ID, client ID, redirect URI, user mapping, X-Forwarded-Proto, reverse proxy, AWS ALB
Key Questions:
- How do I enable Microsoft Sign-In in VoIPmonitor?
- How do I configure SSO with Microsoft Entra for VoIPmonitor?
- What is the correct Redirect URI format for Microsoft Sign-In?
- Where do I find the Microsoft client ID and tenant ID?
- How do I map VoIPmonitor users to Microsoft accounts?
- Is Microsoft Sign-In available in the stable GUI version?
- How do I set up a default user for Microsoft Sign-In?
- Why does Microsoft Sign-In fail behind a reverse proxy?
- What is the user mapping order for Microsoft Sign-In?