Copilot Studio 支援針對發佈到 Microsoft Teams 1:1 聊天的 Agents 使用單一登入 (SSO)。 在此支援下,Agents 可以自動使用使用者的 Microsoft Teams 憑證為其登入。 SSO 僅在使用 Microsoft Entra ID 時受到支援。 其他服務提供者 (例如 Azure AD v1) 不支援在 Microsoft Teams 中使用 SSO。
重要
您可以在 Microsoft Teams 聊天中使用 SSO,而不需要手動驗證。 若要對先前已發佈的 Agent 使用此方法,請重新將 Agent 設定為使用 Authenticate with Microsoft,然後再次將其發佈到 Microsoft Teams。 此變更可能需要幾個小時才能生效。 如果使用者正處於對話途中,而變更尚未生效,他們可以在聊天中輸入「start over」,以強制重新開始對話並使用最新版本的 Agent。 這些更改現在可用於使用者和 Agent 之間的 Teams 一對一聊天。 它們尚不可用於群聊或頻道訊息。
當您的機器人與 Agent Dynamics 365 Customer Service 整合時,不支援 SSO。
除非必要,否則請勿繼續執行以下文件。 如果您想為 Agent 使用手動驗證,請參閱使用 Microsoft Entra ID 設定使用者驗證。
注意
如果您在使用 Teams SSO 驗證並選擇手動驗證選項,同時又在自訂網站上使用該 Agent,則必須透過應用程式資訊清單部署 Teams 應用程式。
有關詳細資訊,請參閱下載 Agent 的 Teams 應用清單。
其他設定 (例如非 Manual 的驗證選項,或透過 Copilot Studio 一鍵部署至 Teams 的方式) 將無法運作。
先決條件
設定應用程式註冊
在為 Teams 設定 SSO 之前,請先使用 Microsoft Entra ID 設定使用者驗證。 此流程會建立一個應用程式註冊,您需要它來設定 SSO。
建立應用程式註冊。 請參閱使用 Microsoft Entra ID 設定使用者驗證中的說明。
新增重新導向 URL。
產生用戶端密碼。
設定手動驗證。
找到您的 Teams 頻道應用程式 ID
在 Copilot Studio 中,開啟您想要設定 SSO 的 Agent。
前往您的 Agent 通道頁面,選擇 Teams 與 Microsoft 365 Copilot 的磚。
在 Teams 與 Microsoft 365 Copilot 設定面板中,選取編輯詳細資料,展開更多,然後在應用程式 ID 欄位旁選取複製。
將您的 Teams 頻道應用程式 ID 新增至您的應用程式註冊中
前往 Azure 入口網站。 開啟您在為 Agent 設定使用者驗證時建立的應用程式註冊執行個體。
在側邊窗格選取公開 API。 對於 應用程式識別碼 URI,請選取 設定。
輸入
api://botid-{teamsbotid},並將{teamsbotid}取代為您先前找到的 Teams 管道應用程式識別碼。
選取儲存。
授與管理員同意
當使用者或管理員在同意流程中授予權限時,應用程式即可獲授權呼叫 API。 若要深入了解同意,請參閱 Microsoft 身分識別平台端點中的權限和同意。
如果管理員同意選項可用,請授予同意:
在 Azure 入口網站中,於您的應用程式註冊中前往 API 權限。
選取代表 <您的用戶名稱> 授與管理員同意然後選擇是。
重要
為了避免使用者必須同意每個應用程式,獲指派應用程式管理員或雲端應用程式管理員角色的人員可以向您的應用程式註冊授予全租用戶範圍的同意。
新增 API 權限
在 Azure 入口網站中,於您的應用程式註冊中前往 API 權限。
選取新增權限,並選擇 Microsoft Graph。
選取委派的權限。 權限清單隨即出現。
展開 OpenId 權限。
選擇 openid 和設定檔。
選取新增權限。
定義 Agent 的自訂範圍
在 Azure 入口網站中,於您的應用程式註冊執行個體前往公開 API。
選取新增範圍。
設定下列屬性:
屬性 數值 範圍名稱 輸入 Test.Read誰可以同意? 選取管理員和使用者 管理員同意顯示名稱 輸入 Test.Read管理員同意描述 輸入 Allows the app to sign the user in.州/省 選取已啟用 注意
範圍名稱
Test.Read為佔位值。 將其取代為對您環境有意義的名稱。選取新增範圍。
新增 Microsoft Teams 用戶端識別碼
重要
在以下步驟中,應按字面意思使用 Microsoft Teams 用戶端 ID 提供的值,因為它們在所有租用戶中都相同。
在 Azure 入口網站中,於您的應用程式註冊實例前往公開 API,然後選擇新增客戶端應用程式。
在用戶端識別碼欄位中,輸入 Microsoft Teams 行動裝置/桌上型電腦的用戶端識別碼,即
1fec8e78-bce4-4aaf-ab1b-5451cc387264。 選取您先前所建立的範圍的核取方塊。
選取新增應用程式。
重複前述步驟,但在 客戶端 ID 欄位中輸入 Microsoft Teams 網頁版的 客戶端 ID,其為
5e3ce6c0-2b1f-4285-8d4b-75ee78787346。確認公開 API 頁面列出 Microsoft Teams 用戶端應用程式識別碼。
總結來說,新增到公開 API 頁面的兩個 Microsoft Teams 客戶端 ID 分別為:
1fec8e78-bce4-4aaf-ab1b-5451cc3872645e3ce6c0-2b1f-4285-8d4b-75ee78787346
將權杖交換 URL 新增至 Agent 的驗證設定中
要在 Copilot Studio 中更新 Microsoft Entra ID 驗證設定,您必須新增權杖交換 URL,以便 Microsoft Teams 與 Copilot Studio 能共享資訊。
在 Azure 入口網站中,於您的應用程式註冊執行個體前往公開 API。
在範圍下,選擇複製到剪貼簿圖示。
在 Copilot Studio 中,於 Agent 的設定下,選取安全性,然後選取驗證區塊。
在權杖交換 URL (SSO 的必要項) 中,將先前複製的範圍貼上。
選取儲存。
將 SSO 新增至 Agent 的 Teams 頻道
在 Copilot Studio 中,於 Agent 的設定下,選取通道。
選擇 Teams 和 Microsoft 365 Copilot 磚。
選取編輯詳細資料,然後展開更多。
在 AAD 應用程式的用戶端識別碼中,輸入應用程式註冊中的應用程式 (用戶端) 識別碼。
若要獲取此值,請打開 Azure 入口網站。 接著,在您的應用程式註冊中,前往概觀。 複製應用程式 (用戶端) 識別碼方塊中的值。
在資源 URI 中,輸入應用程式註冊中的應用程式識別碼 URI。
若要獲取此值,請打開 Azure 入口網站。 接著,在您的應用程式註冊中,前往公開 API。 複製應用程式識別碼 URI 方塊中的值。
選取儲存,然後關閉。
再次發佈 Agent,以使最新變更可供您的客戶使用。
選擇在 Teams 中查看 Agent,在 Teams 中與 Agent 開始新的交談,並驗證它是否會自動為您登入。
已知問題
如果首次在沒有 Teams SSO 的情況下使用手動身份驗證發佈 Agent,則 Teams 中的 Agent 會持續提示用戶登錄。