使用 Microsoft Entra ID 配置用户身份验证

为您的助手添加身份验证允许用户登录,让您的助手能够访问受限资源或信息。

本文介绍如何将 Microsoft Entra ID 配置为您的服务提供程序。 要一般了解其他服务提供程序和用户身份验证,请参阅在 Copilot Studio 中配置用户身份验证

如果您具有租户管理权限,可以 配置 API 权限。 否则,您需要请租户管理员为您完成这项工作。

先决条件

了解如何向主题添加最终用户身份验证

您在 Azure 门户中完成了前几个步骤,并在 Copilot Studio 中完成了最后两个步骤。

创建应用注册

  1. 使用与您的助手在同一租户中的管理员帐户登录 Azure 门户网站

  2. 转到 应用注册

  3. 选择新建注册,然后输入注册的名称。 不要 alter 现有应用注册。

    稍后使用您助手的名称可能会有所帮助。 例如,如果您的助手名为“Contoso 销售帮助”,您可以将应用程序注册命名为“ContosoSalesReg”

  4. 在“支持的帐户类型 ”下,选择 任何组织租户(任何 Microsoft Entra ID 目录 - 多租户)和个人 Microsoft 帐户(例如 Xbox Skype)中的帐户。

  5. 目前将重定向 URI 部分留空。 在接下来的步骤中输入该信息。

  6. 选择注册

  7. 注册完成后,转到概览

  8. 复制应用程序(客户端)ID,将其粘贴到一个临时文件中。 您在后面的步骤中需要它。

添加重定向 URL

  1. 在 Manage (管理) 下 ,选择 Authentication (身份验证 )。

  2. 平台配置下,选择添加平台,然后选择 Web

  3. 在 Redirect URIs(重定向 URI)下 ,输入并选择 https://token.botframework.com/.auth/web/redirect Configure(配置 )。

    此操作将带您返回到 Platform configurations 页面

  4. 在 Redirect URI for the Web platform(重定向 Web 平台的 URI )下 ,选择 Add URI(添加 URI)。

  5. 输入 https://europe.token.botframework.com/.auth/web/redirect,然后选择 保存

    备注

    Copilot Studio 中的身份验证配置窗格可能会显示以下重定向 URL:https://unitedstates.token.botframework.com/.auth/web/redirect。 使用该 URL 会导致身份验证失败;请改用 URI。

  6. 在 隐式授权和混合流 部分中,选择 访问令牌 (用于隐式流)ID 令牌 (用于隐式流和混合流)。

  7. 选择保存

生成客户端密码

  1. 在管理下 ,选择证书和密钥

  2. 客户端密码部分中,选择新建客户端密码

  3. (可选)输入说明。 如果留空,则提供一个。

  4. 选择到期时间。 选择与您的助手的生命周期相关的最短时间段。

  5. 选择添加创建机密。

  6. 将机密的存储在一个安全的临时文件中。 当您稍后配置助手的身份验证时,您将需要此值。

小费

在复制客户端密码的值之前,请勿离开页面。 如果您离开页面,该值将被混淆,您将需要生成一个新的客户端密码。

配置手动身份验证

  1. 在中 Copilot Studio,转到 Copilot 的 “设置 ”,然后选择 “安全性”。

  2. 选择身份验证

  3. 选择手动进行身份验证

  4. 将 Require users to log in (需要用户登录) 保留 为打开状态。

  5. 为属性输入以下值:

    • 服务提供商:选择 Azure Active Directory v2

    • 客户端 ID:输入之前从 Azure 门户复制的应用程序(客户端)ID。

    • 客户端密码:输入之前从 Azure 门户生成的客户端密码。

    • 范围:Enter profile openid

  6. 选择保存完成配置。

配置 API 权限

  1. 转到 API 权限

  2. 选择为 <您的租户名称> 授予管理员同意,然后选择。 如果该按钮不可用,您可能需要让租户管理员为您输入该按钮。

    突出显示租户权限的 API 权限窗口的屏幕截图。

    备注

    为避免用户必须同意每个应用程序,全局管理员、应用程序管理员或云应用程序管理员可以授予租户范围内的应用注册同意。

  3. 选择添加权限,然后选择 Microsoft Graph

    突出显示 Microsoft Graph 的“请求 API 权限”窗口的屏幕截图。

  4. 选择委托的权限

    突出显示委托的权限的屏幕截图。

  5. 展开 OpenId 权限,打开 openidprofile

    突出显示 OpenId 权限、OpenId 和配置文件的屏幕截图。

  6. 选择添加权限

为您的助手定义自定义范围

范围 允许您确定用户和管理员角色以及访问权限。 您将为要在后面的步骤中创建的画布应用注册创建自定义范围。

  1. 转到公开 API,然后选择添加范围

    突出显示“公开 API”和“添加范围”按钮的屏幕截图。

  2. 设置以下属性。 您可以将其他属性留空。

    属性 价值
    范围名称 输入在环境中有意义的名称,如 Test.Read
    谁可以同意? 选择管理员和用户
    管理员同意显示名称 输入在环境中有意义的名称,如 Test.Read
    管理员同意说明 输入 Allows the app to sign the user in.
    选择已启用
  3. 选择添加范围

在 Microsoft Copilot Studio 中配置身份验证

  1. 在 Copilot Studio“设置 ”下,选择 “安全>身份验证”。

  2. 选择手动进行身份验证

  3. 将 Require users to log in (需要用户登录) 保留 为打开状态。

  4. 选择 A Service provider 并提供所需的值。 请参阅 配置手动身份验证。 Copilot Studio

  5. 选择保存

小费

令牌交换 URL 用于为请求的访问令牌交换代表 (OBO) 令牌。 有关详细信息,请参阅使用 Microsoft Entra ID 配置单一登录

备注

范围应包括 profile openid 和 以下内容,具体取决于您的使用案例:

  • Sites.Read.All Files.Read.All 为 SharePoint
  • ExternalItem.Read.All 针对 Graph Connection
  • https://[OrgIDName].crm10.dynamics.com/user_impersonation 对于 Prompt 节点和 Dataverse 结构化数据
  • 例如, Dataverse Structure Data 或 Prompt Node 的范围应为以下内容: profile openid Sites.Read.All Files.Read.All https://myorg123.crm10.dynamics.com/user_impersonation

测试您的助手

  1. 发布您的助手。

  2. 测试助手窗格中,向您的助手发送一条消息。

  3. 当助手响应时,选择登录

    此时将打开一个新的浏览器标签页,要求您登录。

  4. 登录,然后复制显示的验证码。

  5. 将代码粘贴到助手中以完成登录过程。

    助手对话中成功的用户身份验证的屏幕截图,突出显示验证代码。