Fabric Extensibility Toolkit 的工作负载依赖于与 Microsoft Entra ID 的集成,用于身份验证和授权。 该工具包使用仅限前端的体系结构,与具有单独的后端组件的传统工作负荷相比,该体系结构简化了身份验证流。
工作负荷前端与 Fabric、Azure 或外部服务之间的所有交互都必须附带适当的身份验证支持。 该工具包通过与 Fabric 平台无缝集成的 JavaScript API 处理令牌获取和管理。
建议在开始使用 Fabric 工作负载之前熟悉 Microsoft标识平台 。 此外,建议查看 Microsoft 标识平台的最佳做法和建议。
前端专用的身份验证流程
Extensibility Toolkit 使用简化的身份验证模型,其中前端应用程序通过各种服务直接进行身份验证:
- Fabric API的前端:工作负载的前端使用令牌直接调用Fabric REST API
- Azure 服务的前端:使用相同的令牌对存储、Key Vault 和其他受 Entra 保护的应用程序等 Azure 服务进行身份验证
- 外部服务的前端:使用获取的令牌对任何受 Entra 保护的应用程序进行身份验证
令牌的多功能特性
通过扩展性工具包获取的令牌可用于对以下目标进行身份验证:
- Fabric API:访问工作区、项目和平台功能
- Azure 服务:存储帐户、Key Vault、数据库和其他 Azure 资源
- 自定义应用程序:你拥有或已被授予访问权限的任何受 Entra 保护的应用程序
- 第三方服务:支持 Entra ID 身份验证的外部服务
范围抽象
Extensibility Toolkit 通过客户端库提供抽象身份验证:
- Fabric 作用域:Fabric API 所需的作用域由工具包的客户端库自动地进行管理。
- Azure 范围:以透明方式处理标准 Azure 服务范围
- 自定义范围:可以为自己的应用程序指定其他范围
身份验证 JavaScript API
Fabric 前端为扩展性工具包工作负载提供 JavaScript API,用于获取用于身份验证的令牌。 API 处理:
- 工作负载的令牌获取
- 所需权限的许可管理
- 令牌刷新和过期处理
- 与 Fabric 的安全上下文集成
有关使用身份验证 API 的详细信息,请参阅 身份验证 JavaScript API。
若要了解为什么需要同意,请在 Microsoft Entra ID 中查看用户和管理员同意。
扩展性工具包工作负载中的许可工作原理
Extensibility Toolkit 简化了许可管理:
- 自动同意提示:当工作负荷需要访问服务时,平台会自动提示同意
- 重定向处理:工具包自动管理同意重定向和弹出窗口关闭
- 许可缓存:授予后,将缓存同意并重复使用后续请求
- 精细权限:可以根据需要请求不同服务的特定范围
身份验证设置
在工作负荷中使用身份验证之前:
- 在 Microsoft Entra ID 中注册应用程序
- 为工作负荷配置重定向 URI
- 为 Fabric 和任何外部服务设置所需的权限
- 在开发环境中测试身份验证流
有关分步身份验证设置说明,请参阅 身份验证指南。