Splash Access merges with Purple – Read more →

Azure AD Authentication URL: Complete Captive Portal Guide

You're usually standing in front of a Meraki dashboard or a captive portal builder when the trouble starts. The guest splash page works, the SSID is broadcasting, but the azure ad authentication url still needs to do real work, and that means tenant scope, redirect handling, and token exchange have to line up cleanly or the login just stalls.

For hotels, campuses, retail floors, and BYOD corporate sites, the authentication URL isn't a decorative link. It's the front door into Microsoft's identity flow, and in captive portal deployments that front door has to cooperate with Cisco Meraki, splash pages, and the guest Wi-Fi experience without leaking secrets or breaking the redirect chain.

Understanding Azure AD Authentication URLs

A lot of teams still say Azure AD, while current Microsoft materials often say Microsoft Entra ID. Microsoft announced the rename on July 11, 2023, but the service role stayed the same, and older guides, admin screens, and code comments still use the legacy name, so both terms show up in real projects (Microsoft's name change notice).

Why the name change matters in the field

A Meraki captive portal often inherits whatever naming is already in the tenant documentation, and that creates avoidable confusion during setup. If one guide says Azure AD and the Entra admin center uses the newer label, the integration can still be correct as long as the tenant, redirect URI, and protocol version line up.

Practical rule: validate the endpoint path and tenant scope, not the branding around it.

The Azure AD authentication URL is also not a single login page. In Microsoft's standards-based identity platform, the URL starts a redirect sequence built on OAuth 2.0 and OpenID Connect 1.0, which means the browser is sent to Microsoft, Microsoft signs the user in, and then the application gets an authorization response it can redeem for tokens (Microsoft identity platform protocols).

For guest Wi-Fi, that difference changes how the portal behaves. A hotel splash page or campus captive portal is not just sending someone to sign in, it is starting a standards-defined exchange that has to survive redirects, state checks, and token validation before access is granted to a guest, a student, or a contractor.

That is why the URL matters operationally in Cisco Meraki deployments. The portal has to hand off cleanly to Microsoft, then accept the return path without breaking the user's Wi-Fi session. If the redirect chain or tenant scope is off, the browser may reach the sign-in screen, but the network handoff never completes.

A modern black wireless internet router with glowing blue status lights and a security shield icon.

Core Endpoint Patterns and Structure

A Meraki captive portal usually needs two Microsoft endpoints working together, the authorize endpoint at https://login.microsoftonline.com/<tenant>/oauth2/v2.0/authorize and the token endpoint at https://login.microsoftonline.com/<tenant>/oauth2/v2.0/token. The tenant segment is where many deployments go wrong, because it tells Microsoft which directory authority to use.

Tenant choice is not just a formatting detail

For guest Wi-Fi, use the directory ID or a verified tenant domain unless you have a deliberate reason to support multiple account types. Microsoft does allow broader values such as common, but that fits a multi-account application model, not every captive portal flow.

In practice, the authorize call runs in the user's browser while the token call has to run from your portal backend. That split matters in Cisco Meraki deployments because the browser can reach Microsoft directly, but the backend still needs stable network access and correct return handling to redeem the code.

The discovery document removes guesswork during rollout. Microsoft publishes https://login.microsoftonline.com/{tenant}/v2.0/.well-known/openid-configuration, which exposes the current endpoint URLs, issuer, claims, and signing-key metadata, so portal settings can follow the tenant's live configuration instead of an old export.

That approach matters in hotels, universities, and retail chains where portal settings are often copied between sites. One stale tenant value or hard-coded authority can break sign-in even when the rest of the Wi-Fi flow looks correct.

For a practical implementation pattern, the authorization flow described in the Splash Access setup notes is a useful companion reference for portal configuration: Azure AD authentication and authorization.

Configuring the Authorization Code Flow

A captive portal sign-in starts with a correctly shaped authorization request. Microsoft's authorization code flow uses client_id, response_type=code, redirect_uri, scope, and state, then returns an authorization code to the registered redirect URI before your portal exchanges it at the token endpoint (Microsoft OAuth 2.0 auth code flow).

The parameters that have to line up

The redirect_uri is the first place to check when a Meraki portal sends the user back to the SSID without granting access. Compare the redirect_uri in the authorize request character by character against the app registration, including the https scheme, path, and trailing slash, because Microsoft only returns the authentication response to an exact match (Microsoft app registration redirect URI guidance).

A slash in the wrong place, a callback registered on the wrong host, or a path typo will stop the handoff even after the user signs in successfully. In guest Wi-Fi rollouts, I usually verify the browser redirect first, then confirm the portal is listening on the same callback path the app registration expects.

Field note: if the callback URL changes during testing, update the app registration first, then test the portal again.

For OIDC sign-in, Microsoft expects the openid scope, and practical deployments often request scope=openid profile email plus any additional API scopes the portal needs (Microsoft OIDC protocol guidance). When you add PKCE, include code_challenge and code_challenge_method=S256, which reduces the risk of authorization-code interception in browser-based or captive-portal-style flows.

Keep the exchange server-side. In a Meraki guest Wi-Fi deployment, the browser can handle Microsoft sign-in, but the portal backend should redeem the code so secrets stay out of browser-delivered code.

For a step-by-step portal setup reference that matches these mechanics, see the practical Azure AD Wi-Fi authentication walkthrough.

Integrating Authentication with IPSK and EasyPSK

Once the code exchange succeeds, the portal has an authenticated identity session it can use to enable Wi-Fi access. In Cisco Meraki environments, that session can feed into IPSK or EasyPSK handling so guests don't just get “signed in,” they get the right network path for the device and the site policy.

Where identity meets network access

IPSK, or individual pre-shared keys, fits better where access needs to be unique per user or device. That makes sense in education, healthcare, and controlled BYOD corporate spaces where you want traceability and tighter lifecycle management than a shared password gives you.

EasyPSK fits a different operational problem, high-volume onboarding. Retail teams often want a smoother experience at the counter, in the fitting room, or across short dwell-time visits, and EasyPSK-style onboarding reduces the friction of issuing access without forcing every visitor through a heavy manual process.

The useful design pattern is to let Azure sign-in prove identity and then let the portal decide which Wi-Fi entitlement belongs to that identity. That can be a guest session, a device-specific pre-shared key, or a role-based network assignment, depending on what the site needs.

A portal that can authenticate identity but can't translate that identity into a usable wireless policy isn't finished yet.

That's why the integration layer matters more than the login page itself. Cisco Meraki handles the wireless side, while the portal and identity flow decide what happens after the user is trusted, and that's where IPSK, EasyPSK, and guest Wi-Fi policy become one operational workflow.

For implementation patterns around these access models, this reference is the relevant one: IPSK with RADIUS authentication.

Choosing Between Social Login and Azure AD

Azure sign-in and social login solve different guest problems. Azure AD / Microsoft Entra ID works best when identity already exists and you need accountability, while social login works better when speed matters more than enterprise identity assurance.

Match the login method to the site type

In education and BYOD corporate environments, Azure sign-in usually makes more sense because the user already belongs to an organization or is expected to authenticate with an organizational identity. That creates a cleaner fit for campus access, staff Wi-Fi, and segmented guest policies.

In retail and hospitality, the tolerance for friction is lower. A social login or similar guest path can feel faster for short visits, especially when the visitor just wants internet access and doesn't need a managed identity trail tied back to an organization.

Azure sign-in also comes with more configuration overhead. You have app registration, redirect URI validation, tenant selection, and token handling to think about, while social login tends to optimize for convenience and a quicker first-time experience.

Scenario Azure AD style sign-in Social login style sign-in
Education Strong fit for managed identities Useful as an optional fallback
BYOD corporate Strong fit for access control Usually secondary
Retail Useful for loyalty or managed guest flows Often preferred for quick access
Hospitality Good for policy-driven guest access Good for fast check-in style onboarding

For a broader SSO comparison in portal design, the implementation guide here is a useful companion: How to implement single sign-on.

Implementing with Splash Access and Cisco Meraki

A working deployment starts with tenant values and callback URLs, not the splash-page design. In a Cisco Meraki network, the guest SSID and portal flow need to let the browser leave the captive environment, complete Microsoft sign-in, and return to the exact redirect URI registered in Microsoft Entra.

What to configure first

Confirm the tenant-scoped authorize URL and the token endpoint path first. Then register the exact HTTPS callback address in the Microsoft app registration, since that redirect URI is what brings the browser response back to the portal in a predictable way.

After that, line up the portal logic with the Wi-Fi policy. The authenticated visitor should land in the right access state, whether that means a guest role, a managed PSK, or a device-specific key for a known user group.

QR-code onboarding helps in hospitality and campus settings because it shortens the path from physical arrival to sign-in without changing the identity flow. The browser still has to complete Microsoft's redirect and code exchange, but the front desk, reception desk, or help desk sees a lighter user journey.

Splash Access is one portal option for this setup, since it provides captive-portal and Azure sign-in workflows for guest Wi-Fi deployments across Meraki networks.

For teams using SAML instead of OIDC, the same operational discipline still applies, only the assertion and metadata handling change. The practical split between OIDC and SAML is worth keeping clear before rollout, because mixing the two flows in the same design document is one of the fastest ways to confuse installers. The Azure AD SAML integration notes cover that split in a way that maps cleanly to captive portal work.

Security Best Practices and Validation

A captive portal needs to validate more than whether the user clicked sign in. In OIDC flows, the nonce binds the returned token to the original request. In SAML flows, the portal should verify the signature, issuer, audience, recipient, destination, and time conditions where applicable, as covered in Microsoft SAML troubleshooting guidance.

Validation steps that reduce risk

Keep client secrets out of browser-delivered code. If the browser can read it, assume an attacker can too. For guest Wi-Fi portals, server-side code redemption is the safer pattern.

SAML metadata should be downloaded as XML and refreshed on a schedule, not assumed from a universal metadata URL. That matters in hotel, campus, and retail rollouts, because a certificate rollover can break authentication across every site at once. The SAML rollover and metadata handling guidance should be tested before production deployment.

For a broader hardening review of Azure environments, the Azure penetration testing guide is a useful companion when you are checking redirects, tokens, and sign-in surfaces for abuse.

Practical rule: if the redirect URI, issuer, or metadata source changes, test the flow before users see it.

Exact URI matching, TLS, state validation, nonce validation, and PKCE all help reduce redirect abuse and code interception in guest Wi-Fi flows. That is the difference between a portal that works in a lab and one that holds up under real site conditions.

Quick Reference and Cross-Linking

A guest portal fails fast when the identity pieces do not line up. The authorize URL starts the redirect, the token URL completes the exchange, the tenant sets the authority, and the redirect URI must match what is registered in Microsoft Entra.

SAML-based flows need the sign-in URL, issuer, ACS URL, and metadata handling to match with the same precision. For OIDC, the discovery document at the tenant-scoped metadata endpoint is the safer place to confirm current values than a copied screenshot or an old deployment note.

RFC 8910 and RFC 8908 also matter in guest Wi-Fi environments because they standardize captive-portal discovery and JSON state reporting (RFC 8910, RFC 8908). That helps client devices understand whether sign-in is still required, which matters in education, retail, BYOD corporate, and hospitality deployments where the portal has to announce itself instead of waiting on a browser redirect alone.

For Meraki teams, the practical sequence is straightforward. Validate the identity flow first, then map it to the Wi-Fi entitlement. That keeps Azure sign-in, guest access, IPSK, and EasyPSK aligned without turning the portal into a brittle one-off.

If you are cleaning up a guest Wi-Fi flow that has to work across Meraki, Azure sign-in, and role-based wireless access, Splash Access can help tie the portal, identity redirect, and access policy together in one workflow. Visit Splash Access to review portal options, Azure integration paths, and guest Wi-Fi setup details for your environment.

Previous Post

Related Posts