共用方式為


使用 Microsoft Entra ID 設定單一登入

重要

在對生成式 AI 進行大量投資並增強 Microsoft Copilot 的整合後,Power Virtual Agents 的功能和特性現已成為 Microsoft Copilot Studio 的一部分

當我們更新文件和培訓內容時,某些文章和螢幕擷取畫面可能會參考 Power Virtual Agents。

Copilot Studio 支援單一登入 (SSO)。 如果客戶已登入部署副手的頁面或應用程式,則 SSO 可讓您網站上的副手登入客戶。

先決條件

注意

若要使用其他 OAuth 2.0 提供者設定 SSO,請參閱使用通用 OAuth 提供者設定單一登入

例如,副手是託管在公司內部網站或在使用者已經登入的應用程式中。

為 Copilot Studio 設定 SSO 有四個主要步驟:

  1. 在 Microsoft Entra ID 中建立自訂畫布的應用程式註冊。

  2. 為您的副手定義自訂範圍。

  3. 在 Copilot Studio 中設定驗證以啟用 SSO。

  4. 設定您的自訂畫布 HTML 代碼以啟用 SSO。

支援的管道

下表詳細描述目前支援 SSO 的管道。 您可以在 Microsoft Copilot Studio 構想論壇中,建議支援其他管道。

通道 已支援
Azure Bot Service 管道 不支援
自訂網站 已支援
示範網站 不支援
Facebook 不支援
Microsoft Teams1 已支援
行動應用程式 不支援
Customer Service 全通路2 已支援

1 如果您也已啟用團隊管到,則需要遵循為 Teams 管道設定 SSO 文件的設定指示。 如果無法根據該頁面上的指示設定 Teams SSO 設定,會導致您的使用者在使用 Teams 管道時一直無法通過驗證。

2 只支援即時聊天管道。 如需其他資訊,請參閱設定移交至 Dynamics 365 Customer Service

重要

當副手處於以下任一狀態時,目前不支援 SSO:

但是,已作為 SPFx 元件發佈到 SharePoint 網站的副手支援 SSO。

建立自訂網站的應用程式註冊

若要啟用 SSO,您需要建立兩個不同的應用程式註冊:

  • 驗證應用程式註冊,可為您的副手啟用 Microsoft Entra ID 使用者驗證
  • 畫布應用程式註冊,這會為自訂網頁啟用 SSO

出於安全原因,不建議您的副手和自訂網站重複使用相同的應用程式註冊。

  1. 依照使用 Microsoft Entra ID設定使用者驗證中的說明建立驗證應用程式註冊。
  2. 再次按照相同的說明建立第二個應用程式註冊,做為畫布應用程式註冊。

設定畫布應用程式註冊

  1. 建立畫布應用程式註冊之後,移至驗證,然後選取新增平台

  2. 平台設定底下,選取新增平台,然後選取 Web

  3. 重新導向 URL 底下,輸入網頁的 URL;例如,http://contoso.com/index.html

    設定網頁的螢幕擷取畫面。

  4. 隱含授與和混合流程區段中,開啟存取權杖 (用於隱含流程)識別碼權杖 (用於隱含和混合流程)

  5. 選取設定

尋找副手的權杖端點 URL

  1. 在 Copilot Studio 中,移至設定,然後選取管道

  2. 選取行動裝置應用程式

  3. 權杖端點底下,選取複製

    在 Copilot Studio 中複製權杖端點 URL 的螢幕擷取畫面。

在網頁中設定 SSO

使用 Copilot Studio GitHub 存放庫提供的程式碼,建立重新導向 URL 的網頁。 複製 GitHub 存放庫中的程式碼,並使用以下指示進行修改。

  1. 前往 Azure 入口網站中的概觀頁面,並複製畫布應用程式註冊中的應用程式 (用戶端) 識別碼目錄 (租用戶) 識別碼

    Azure 入口網站中 [應用程式註冊概觀] 頁面的螢幕擷取畫面,其中反白顯示概觀、應用程式識別碼和目錄識別碼。

  2. 若要設定 Microsoft 驗證庫 (MSAL):

    • 指派 clientId 給您的應用程式 (用戶端) 識別碼
    • 指派 authorityhttps://login.microsoftonline.com/ 並將目錄 (租用戶) 識別碼新增至結尾。

    例如:

    var clientApplication;
        (function (){
        var msalConfig = {
            auth: {
                clientId: '692e92c7-xxxx-4060-76d3-b381798f4d9c',
                authority: 'https://login.microsoftonline.com/7ef988bf-xxxx-51af-01ab-2d7fd011db47'     
            },
    
  3. theURL 變數設定為先前複製的權杖端點 URL。 例如:

    (async function main() {
    
        var theURL = "https://1c0.0.environment.api.powerplatform.com/powervirtualagents/bots/5a099fd/directline/token?api-version=2022-03-01-preview"
    
  4. 編輯 userId 的值以加入自訂首碼。 例如:

    var userId = clientApplication.account?.accountIdentifier != null ? 
            ("My-custom-prefix" + clientApplication.account.accountIdentifier).substr(0, 64) 
            : (Math.random().toString() + Date.now().toString()).substr(0,64);
    
  5. 儲存您的變更。

使用您的網頁測試副手

  1. 在瀏覽器中打開網頁。

  2. 選取登入

    使用驗證代碼登入的螢幕擷取畫面

    注意

    如果您的瀏覽器封鎖快顯視窗,或者您使用的是無痕瀏覽或私密瀏覽視窗,系統會提示您登入。 否則,將使用驗證碼完成登入。

    新的瀏覽器索引標籤會開啟。

  3. 切換至新的索引標籤,並複製驗證代碼。

  4. 切換回副手索引標籤,然後將驗證碼貼到副手對話中。