Single Sign-On (SSO) allows employees and fulfillers to access the Salesforce IT Service and Salesforce IT Desk applications within Microsoft Teams using their Microsoft Entra ID (formerly Azure AD) identity, without a separate Salesforce login prompt. When SSO is misconfigured, affected users are unable to sign in seamlessly and may be repeatedly prompted for Salesforce credentials, encounter redirect failures, or receive authentication errors. The root cause is almost always a configuration mismatch in one of the connected components between Salesforce and Microsoft Entra ID.
After clicking the Single Sign-On button in either the Salesforce IT Service or Salesforce IT Desk app in Microsoft Teams, the following error is displayed:
We couldn't connect to your org right now. Ask your Salesforce admin for help.
In some cases the browser or Teams network logs may show a Microsoft Graph error such as:
Error code: ResourceNotFound — "Extension with given id not found."
Other observed behavior includes:
The following configurations should be validated in the order presented, as earlier items are prerequisites for later ones. All values must match exactly, including protocol, case, and the absence of trailing slashes.
Navigate to Salesforce Go → Feature Sets → Deliver IT Services Across Channels → Microsoft Teams for Employee Service and confirm the feature is turned On. SSO cannot function unless this feature is enabled.
Navigate to Setup → External Client App Manager and confirm an application named ServiceCloudTeamsEca exists.
If it is missing:
Navigate to Setup → Digital Experiences → All Sites and confirm:
If misconfigured, configure and publish the preferred site and ensure it is Live.
Navigate to Setup → Auth. Providers → microsoft_auth_provider and confirm the following values:
| Field | Expected value |
|---|---|
| Provider Type | Microsoft |
| Consumer Key (Client ID) | Set — the Microsoft Entra ID application Client ID |
| Consumer Secret (Client Secret) | Set (not blank) |
| Registration Handler | MsTeamsItsmSSOHandler (Apex class) |
| Execute Registration As | A user with the System Administrator profile |
Note: The Registration Handler and Execute Registration As values are specific to SSO and are the most commonly overlooked settings.
If misconfigured:
This step requires the Microsoft Entra ID Tenant ID and access to the Microsoft Entra admin center (Azure Portal). Navigate to App Registrations and open the Teams application, then confirm:
If misconfigured:
Note: If the Tenant ID is unavailable, this validation must be performed manually in the Microsoft Entra admin center.
These configurations allow Salesforce to call Microsoft Graph.
Navigate to Setup → Named Credentials → MSGraphApplicationNC and confirm:
| Setting | Expected value |
|---|---|
| URL | https://graph.microsoft.com |
| Linked External Credential | MSTeamsClientCredentialsEC |
Navigate to Setup → Named Credentials → External Credentials → MSTeamsClientCredentialsEC and confirm:
| Setting | Expected value |
|---|---|
| Authentication Protocol | OAuth 2.0 |
| Flow Type | Client Credentials with Client Secret Flow |
| Scope | https://graph.microsoft.com/.default |
| Identity Provider (Token) URL | https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token |
| Principal Type | Named Principal (Client Credentials) |
| Authentication Status | Configured |
Important: In the Identity Provider (Token) URL, the <tenant-id> placeholder must be replaced with the actual Microsoft Entra ID Tenant ID (for example, https://login.microsoftonline.com/22d62500-afdf-49d5-9bcf-c9341bb96c51/oauth2/v2.0/token). This is a common oversight — if the literal <tenant-id> text is left in place, authentication to Microsoft Graph will fail.
If the Authentication Status is not "Configured":
If other settings are incorrect (URL, scope, linked External Credential, or token endpoint), correct each value to match the tables above.
Navigate to Setup → Apex Classes → MsTeamsItsmSSOHandler and confirm the class exists and its Status is Active.
This step requires the affected user's Salesforce username. The SSO registration handler maps the Microsoft identity to the Salesforce user by matching the email address returned by Microsoft Entra ID against the Salesforce Username field. The user must already exist in Salesforce — the handler does not create new users. Navigate to Setup → Users and open the affected user, then confirm:
If the Username does not match the Microsoft email address, the mapping fails and the user cannot sign in. Ensure the Salesforce Username is set to the exact email address the user authenticates with in Microsoft Entra ID.
Note: When SSO fails for only a subset of users, this is the most likely cause and should be verified for each affected user. The Federation ID field is not used by this handler and does not need to be set for SSO mapping.
The SSO backend configuration is shared, but the target application has additional prerequisites. If all SSO validations above pass, the following application-specific settings should also be confirmed.
005390131

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.