Skip to content

Conversation

@docsautomation
Copy link
Contributor

@docsautomation docsautomation bot commented Dec 5, 2025

This PR updates the content of the file: msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/enable-sso-for-your-adaptive-cards-universal-action.md.

Submitted by: @yashy797

…s-for-adaptive-cards/enable-sso-for-your-adaptive-cards-universal-action.md by yashy797
@microsoft-production-github-app

Acrolinx Scorecards

We currently enforce a minimum score of 80.

Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article Score Issues Scorecard Processed
msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/enable-sso-for-your-adaptive-cards-universal-action.md 93 6 link

More info about Acrolinx

Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

@learn-build-service-prod
Copy link
Contributor

PoliCheck Scan Report

The following report lists PoliCheck issues in PR files. Before you merge the PR, you must fix all severity-1 and severity-2 issues. The AI Review Details column lists suggestions for either removing or replacing the terms. If you find a false positive result, mention it in a PR comment and include this text: #policheck-false-positive. This feedback helps reduce false positives in future scans.

✅ No issues found

More information about PoliCheck

Information: PoliCheck | Severity Guidance | Term
For any questions: Try searching the learn.microsoft.com contributor guides or post your question in the Learn support channel.

@learn-build-service-prod
Copy link
Contributor

Learn Build status updates of commit 2f0e38d:

💡 Validation status: suggestions

File Status Preview URL Details
msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/enable-sso-for-your-adaptive-cards-universal-action.md 💡Suggestion View Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/enable-sso-for-your-adaptive-cards-universal-action.md

  • Line 5, Column 11: [Suggestion: value-deprecated-replace - See documentation] The 'ms.topic: conceptual' you used is now deprecated and can no longer be used. We suggest you replace it with 'ms.topic: article'.

For more details, please refer to the build report.

Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.

# Enable SSO for Adaptive Cards Universal Actions in your bot

With Single sign-on (SSO) in Teams, app users have the advantage of using Teams to access Adaptive Cards Universal Actions in a bot. After logging in to Teams using Microsoft or Microsoft 365 account, app users can use your app without the need to sign in again. Your app is available to app users on any device with access granted through Microsoft Entra ID.
SSO in Teams allows app users to use Teams to access Adaptive Cards Universal Actions in a bot. After signing in to Teams using Microsoft or Microsoft 365 account, app users use your app without signing in again. App availability spans any device with access granted through Microsoft Entra ID.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Meaning of the sentence changed. It should be with Single sign-on (SSO), app users can use Teams to acess..allows means asking for permission, so meaning is getting changed.

For more information about Universal Actions for Adaptive Cards, see [Universal Actions for Adaptive Cards](Overview.md).

Adaptive Cards Universal Actions uses the bot as the common backend for handling actions and introduces a new action type. Bot uses Bot Framework to handle communication with the app users and to send and receive access token to the bot for SSO authentication. Similarly, Adaptive Cards Universal Actions also uses Bot Framework to enable SSO authentication.
Adaptive Cards Universal Actions use the bot as a common backend for handling actions and introduce a new action type. Bot uses Bot Framework to communicate with app users and to send and receive access tokens for SSO authentication. Similarly, Adaptive Cards Universal Actions use Bot Framework to enable SSO authentication.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

grammatically incorrect sentence. Adaptive Cards Universal Actions is the name so uses is right.

Adaptive Cards Universal Actions use the bot as a common backend for handling actions and introduce a new action type. Bot uses Bot Framework to communicate with app users and to send and receive access tokens for SSO authentication. Similarly, Adaptive Cards Universal Actions use Bot Framework to enable SSO authentication.

Ensure that you enable the SSO for your bot before you enable SSO for your Adaptive Cards Universal Actions.
Ensure you enable SSO for your bot before enabling SSO for Adaptive Cards Universal Actions.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grammatically wrong sentence. Ensure that you enable is correct..the original sentence is correct.

Copy link
Collaborator

@NehaHEDAU-MSFT NehaHEDAU-MSFT left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Line 28, as per the style guide, we avoid using complex words. So illustrates should be replaced with shows.

## SSO in Teams at runtime

SSO for Adaptive Cards Universal Actions in a bot can be enabled by obtaining access token for the Teams app user who's signed in. This process involves the bot app client and server, Teams client, Bot Framework, and Microsoft Entra ID. During this interaction, the app user must give consent to obtain the access token in a multitenant environment.
SSO for Adaptive Cards Universal Actions in a bot activates by obtaining an access token for the Teams app user who signs in. This process involves bot app client and server, Teams client, Bot Framework, and Microsoft Entra ID. During this interaction, the app user must consent to obtain the access token in a multitenant environment.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

meaning of the sentence has changed,, activates is incorrect.

| 2 | Microsoft Entra ID → Teams client | For the app user using Adaptive Cards Universal Actions in a bot for the first time, token exchange occurs only after the app user consents. Teams client displays a message prompting app user consent. <br> If consent fails: <br> 1. Authentication falls back to the sign-in prompt and the app user signs in to use the bot app. A sign-in button appears in Teams client and when the app user selects it, Microsoft Entra sign-in page appears. <br> 2. The app user signs in and grants access to Bot service. |
| 3 | Teams Client → Bot service | Teams client resends the invoke `Action.Execute` request to the bot along with the token. <br> Bot service sends an invoke response with an OAuth card in reply to the `adaptiveCard/action` invoke call. Teams client sends the original `adaptiveCard/action` again to the bot along with the token. |
| 4 | Microsoft Entra ID → Teams client | Microsoft Entra ID sends an invoke response with an Adaptive Card to Teams client. Bot returns a nonerror response to Teams client using either a card or message. |

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

all the lines from 34-36 are grammatically wrong.

SSO authentication within `Action.Execute` activates authentication within the context of a group chat or channel conversation where the Adaptive Card appears.

Bots can respond with sign-in request in response to `Action.Execute` for:
Bots respond with a sign-in request in reply to `Action.Execute` for:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

response to is correct. reply is wrong usage

| 4 | Microsoft Entra ID → Teams client | Microsoft Entra ID sends an invoke response with an Adaptive Card to Teams client. Bot returns a nonerror response to Teams client using either a card or message. |

For an Adaptive Cards Universal Actions in a bot, the bot app sends an OAuth card to Teams client. This card is used to get access token from Microsoft Entra ID using `tokenExchangeResource`. Following app user's consent, Teams client sends the token received from Microsoft Entra ID to the bot app using `tokenExchange`. The bot app can then parse the token to retrieve the app user's information, such as email address.
For Adaptive Cards Universal Actions in a bot, bot app sends an OAuth card to Teams client. This card obtains an access token from Microsoft Entra ID using `tokenExchangeResource`. Following the app user's consent, Teams client sends the token received from Microsoft Entra ID to the bot app using `tokenExchange`. Bot app then parses the token to retrieve app user information, such as email address.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The article 'the' is incorrectly removed. Original sentence is correct.

Bots respond with a sign-in request in reply to `Action.Execute` for:

* Adaptive Cards sent by bot in a one-on-one chat, group chat, or a channel.
* Adaptive Cards sent by bot in a one-on-one chat, group chat, or channel.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

original sentence is correct.

* Adaptive Cards sent by bot in a one-on-one chat, group chat, or channel.
* Adaptive Cards sent by app user via message extension app (backed by bot) in one-on-one chat, group chat, or channel.
* Adaptive Cards present in compose or preview area while the app user is composing the message. In the compose area, refresh in Adaptive Card works and the bot might want to use a token to provide user-specific view to the app user before they send the card to the chat.
* Adaptive Cards present in compose or preview area while the app user composes the message. In the compose area, refresh in Adaptive Card operates and the bot may use a token to provide user-specific view before the app user sends the card to the chat.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Acrolinx suggests the usage of might and not may.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants