Skip to content

Commit 1ad2b1e

Browse files
adileiadilei
andauthored
restoring SSO for Web and Entra ID, consolidating SSO samples under one folder (#306)
Co-authored-by: adilei <[email protected]>
1 parent 6e00d51 commit 1ad2b1e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+372
-4
lines changed

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,20 +40,22 @@ Older samples and labs, largely focused on Power Virtual Agents, have been moved
4040
| Dataverse Indexer | Index the content of a SharePoint library into a Copilot Studio Agent as knowledge source files, along with citations that point to the source files in SharePoint | [View][cs#7]|
4141
| Load Testing | JMeter test plan to use as a starting point for load testing conversational agents built with Copilot Studio | [View][cs#8]|
4242
| RelayBotSample | Demonstrates how to connect your bot to existing Azure Bot Service channels | [View][cs#3] |
43-
| SharePointSSOComponent | A SharePoint component demonstrating how copilots can be deployed to SharePoint sites with SSO enabled | [View][cs#4] |
43+
| SharePointSSOComponent | A SharePoint component demonstrating how custom agents can be deployed to SharePoint sites with SSO enabled | [View][cs#4] |
44+
| SSOwithEntraID | Single Sign-On for Web and Entra ID | [View][cs#10] |
4445
| Type Ahead Suggestions | Demonstrates typeahead suggestion functionality for your custom copilot that can assist users finding things like frequently asked questions, auto correcting typos and showing a list of menu items like product names or topic names before sending a message to the copilot | [View][cs#9] |
4546
| WebChat Customization | Shows the Customization Options from the Azure AI Bot Services as well as some CSS to drastically change the look of your Copilot agent | [View][cs#6]|
4647

4748

48-
[cs#1]:./3rdPartySSOWithOKTA
49+
[cs#1]:./SSOSamples/3rdPartySSOWithOKTA
4950
[cs#2]:./ImplementationGuide
5051
[cs#3]:./RelayBotSample
51-
[cs#4]:./SharePointSSOComponent
52+
[cs#4]:./SSOSamples/SharePointSSOComponent
5253
[cs#5]:./AdaptiveCardSamples
5354
[cs#6]:./CustomExternalUI
5455
[cs#7]:./DataverseIndexer
5556
[cs#8]:./LoadTesting/JMeterMultiThreadGroup
5657
[cs#9]:./TypeaheadSuggestions
58+
[cs#10]:./SSOSamples/SSOwithEntraID
5759

5860
## Contributing
5961

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 3rd Party SSO with OKTA
1+
# Description
22

33
This custom canvas demonstrates how an access token obtained from a 3rd party identity provider, like OKTA, can be used in the context of a single sign-on (SSO) login flow with Copilot Studio.
44

File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

SSOSamples/README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## Single Sign-On with WebChat
2+
3+
WebChat supports sharing a user's access token over Direct Line. This allows the agent to "act on behalf of the user", by passing the token to a downstream API.
4+
5+
This pattern requires the application hosting WebChat to obtain an access token using a library like MSAL (or equivalent for non-Entra providers), and post it over Direct Line.
6+
7+
8+
| Sample Name | Description | View |
9+
| --- | --- | --- |
10+
| SSOwithEntraID | SSO on Web with Entra ID | [View][cs#1]|
11+
| 3rdPartySSOWithOKTA | Demonstrates how to implement a seamless SSO experience with a 3rd party authentication provider | [View][cs#2]|
12+
| SharePointSSOComponent | A SharePoint component demonstrating how copilots can be deployed to SharePoint sites with SSO enabled | [View][cs#3] |
13+
14+
15+
[cs#1]:./SSOwithEntraID
16+
[cs#2]:./3rdPartySSOWithOKTA
17+
[cs#3]:./SharePointSSOComponent
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Description
2+
3+
This sample demonstrates how to retrieve an Entra ID access token for a signed-in user, and share the token with Copilot Studio over Direct Line, thus enabling seamless SSO.
4+
5+
## Getting started
6+
7+
1. Follow the instructions on how to [configure user authentication with Microsoft Entra ID](https://learn.microsoft.com/en-us/microsoft-copilot-studio/)
8+
2. Follow the instructions on how to configure a second [app registration for a canvas app](https://learn.microsoft.com/en-us/microsoft-copilot-studio/configure-sso?tabs=webApp). Set the redirect URI in your app registration based on where the sample will be deployed (e.g. localhost, static web app, etc.)
9+
3. Replace the values for Client ID, Tenant ID and Token Endpoint under `TODO` in [index.html](./index.html)
10+
4. Deploy index.html to a host of your choice
11+
12+
<br>
13+
14+
> **IMPORTANT:** This sample requires users to click on a sign-in button. This behavior is just for demonstration purposes, while in production, the initial sign-in should be managed by your application.

0 commit comments

Comments
 (0)