SAML Single Sign-On with Microsoft Entra ID (Azure AD)
Who this guide is for: The IT administrator who manages your organization’s Microsoft Entra ID tenant (formerly Azure Active Directory). You will need Global Administrator or Application Administrator access. See also: SAML SSO Admin Guide for the embaylms side.
Overview
This guide walks through registering embaylms as an Enterprise Application in Microsoft Entra ID and configuring SAML 2.0 SP-initiated SSO.
Protocol: SAML 2.0, SP-initiated, HTTP-POST binding
Prerequisites
- Microsoft Entra ID tenant with Global Administrator or Application Administrator role
- embaylms admin access
- embaylms tenant slug (e.g.,
acmeforacme.embaylms.com)
Step 1 — Get SP values from embaylms
In embaylms: Admin Panel → Settings → Single Sign-On → View SP Metadata.
Note these values (replace {slug} with your actual tenant slug):
| Value | Pattern |
|---|---|
| SP Entity ID (Identifier) | https://{slug}.embaylms.com/api/auth/saml/{slug}/metadata |
| ACS URL (Reply URL) | https://{slug}.embaylms.com/api/auth/saml/{slug}/acs |
| SP Metadata URL | Same as Entity ID |
Step 2 — Create an Enterprise Application
- In the Azure portal, navigate to Microsoft Entra ID → Enterprise applications → New application.
- Click Create your own application.
- Name it (e.g.,
EmbayLMS) and select Integrate any other application you don’t find in the gallery (Non-gallery). - Click Create.
Step 3 — Configure single sign-on
- On the application overview page, click Single sign-on.
- Select SAML as the sign-on method.
- Click the edit pencil on Basic SAML Configuration:
| Entra Field | Value |
|---|---|
| Identifier (Entity ID) | https://{slug}.embaylms.com/api/auth/saml/{slug}/metadata |
| Reply URL (ACS URL) | https://{slug}.embaylms.com/api/auth/saml/{slug}/acs |
| Sign on URL | https://{slug}.embaylms.com/login |
| Relay State | Leave blank |
| Logout URL | Leave blank |
Click Save.
Step 4 — Configure attributes and claims
Click the edit pencil on Attributes & Claims.
Entra ID sends a default set of claims. Ensure the following are present:
| Claim name | Value | Required |
|---|---|---|
| Unique User Identifier (NameID) | user.mail (Email address format) | Yes |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress | user.mail | Recommended |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname | user.givenname | Optional |
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname | user.surname | Optional |
To set the NameID format to Email:
- Click Unique User Identifier (Name ID).
- Set Name identifier format to
Email address. - Set Source attribute to
user.mail. - Click Save.
Step 5 — Get IdP values from Entra ID
On the SAML-based Sign-on page, scroll to SAML Certificates and Set up EmbayLMS sections.
Collect:
| Value | Where to find it |
|---|---|
| Azure AD Identifier (Entity ID) | “Set up EmbayLMS” → Azure AD Identifier |
| Login URL (SSO URL) | “Set up EmbayLMS” → Login URL |
| Certificate (Base64) | SAML Certificates → Certificate (Base64) → Download |
Download the Base64 certificate (not the Raw/PEM option). The downloaded
.cerfile contains a PEM-encoded certificate — you can paste its contents directly into embaylms.
Step 6 — Enter IdP values in embaylms
- In embaylms: Admin Panel → Settings → Single Sign-On → Add Identity Provider.
- Select SAML 2.0.
- Enter the values from Step 5:
| embaylms Field | Value from Entra ID |
|---|---|
| Entity ID (Issuer) | Azure AD Identifier from Step 5 |
| SSO URL | Login URL from Step 5 |
| Certificate | Paste the full certificate content (include -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----) |
- Under JIT Provisioning, confirm:
- Enabled: ON (recommended)
- Default role:
learner
- Click Save and enable the configuration.
Step 7 — Assign users or groups
- In Entra ID, go to Enterprise applications → EmbayLMS → Users and groups.
- Click Add user/group.
- Search for and select the users or groups who should have access to embaylms.
- Click Assign.
Only assigned users or group members can sign in via SSO.
Step 8 — Test
- Open a private / InPrivate browser window.
- Navigate to
https://{slug}.embaylms.com/login. - Click Sign in with SSO.
- You should be redirected to Microsoft’s login page.
- Sign in with a test user who is assigned to the application.
- You should land on the embaylms dashboard.
Troubleshooting
“AADSTS50105: The signed-in user … is not assigned to a role for the application” The user is not assigned to the Entra ID enterprise application. Go to Entra ID → Enterprise applications → EmbayLMS → Users and groups and add the user.
“The SSO response from your identity provider was invalid” (in embaylms) The certificate stored in embaylms doesn’t match Entra ID’s current signing certificate. Download the current Base64 certificate from the SAML Certificates section in Entra ID and update it in embaylms.
NameID is not an email address
Ensure the Name ID claim in Entra ID is set to user.mail with format
Email address (Step 4). If user.mail is empty for guest users, use
user.userprincipalname instead.
“Your account was not found” (in embaylms) JIT provisioning is disabled. Enable it in embaylms or pre-create the user account.