Microsoft Graph Toolkit 新版发布 - 新的 Microsoft Teams 身份验证提供程序和文件上传功能
Posted Justin-Liu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Microsoft Graph Toolkit 新版发布 - 新的 Microsoft Teams 身份验证提供程序和文件上传功能相关的知识,希望对你有一定的参考价值。
微软宣布 Microsoft Graph Toolkit 发布了新的 2.3 版本,这个版本包括一个新的 Microsoft Teams 身份验证提供程序,文件列表 (File List) 组件中的文件上传功能支持,一些特性更新和有关 Bug 的修复。
更新你的应用程序
要利用这些新特性,您需要更新应用程序以使用最新版本的 Microsoft Graph Toolkit。如果你是通过 npm 使用的 Toolkit,请转到你的项目目录并运行:
Npm i @microsoft/mgt@latest
如果通过 unpkg 使用 Toolkit,应用程序将自动更新到最新版本。
下面将介绍此次更新的主要内容
支持单点登录 (SSO) 的 Microsoft Teams 身份验证提供程序
版本 2.3 包括一个全新的提供程序 TeamsMsal2Provider,用于在 Microsoft Teams 应用程序中进行身份验证。这个新的提供程序构建在 msal-browser 和更安全的 PKCE 授权代码流之上,支持在 Microsoft Teams 选项卡应用程序中的单点登录和交互式登录。
TeamsProvider 和 TeamsMsal2Provider 的区别
构建在 msal.js 之上的 TeamsProvider 使用隐式授权流,并且只支持通过交互的客户端登录进行身份验证。新的 TeamsMsal2Provider 构建在 msal 浏览器之上,使用 PKCE 实现了 OAuth 2.0 授权代码流,这更加安全。此外,除了交互式登录外,TeamsMsal2Provider 现在还支持单点登录。
为什么要迁移?
对于web应用程序来说,授权代码流比原来 Teams 提供程序中使用的隐式授权流更安全,微软建议继续使用 TeamsMsal2Provider。
以前,最初的 Teams Provider 只提供了对交互式登录的支持。通过新的提供程序,您可以在 Teams 应用程序中利用单点登录,这意味着如果用户同意使用您的应用程序,他们无需在另一个设备上再次同意,因为他们是自动登录的。
需要注意的是,对于SSO,您将需要实现一个后端,允许用一个可用于通过代理流调用 Microsoft Graph 的令牌交换 Microsoft Teams 身份验证令牌。您可以通过查看微软的 Node SSO 示例来获得后端服务的参考实现,以及在 Microsoft Teams 应用程序中使用 Microsoft Graph Toolkit 启用单点登录的端到端示例。
还会继续支持现有的 TeamsProvider 吗?
是的,只要支持msal.js,微软就会继续支持原来的 Teams Provider。但是,微软不打算添加任何额外的特性,任何新特性的开发都将在新的 TeamsMsal2Provider 中进行。
如何迁移或开始使用新的提供者进行开发?
请访问 Team MSAL2 Provider 文档以获取迁移指令,以及 step-by step 文章构建Microsoft Teams选项卡 (交互式登录) 或构建Microsoft Teams SSO选项卡指南,以开始开发应用程序。
文件列表组件中的文件上传功能
微软更新了文件列表组件,以支持用户上传文件。你可以从 One Drive 或 SharePoint 显示文件和/或文件夹的列表,并允许用户通过一个属性从他们的设备上传项目到该位置。
下面是一个例子,显示了一个已登录的用户上传文件到他们的网盘根目录
关于 Bug 修复和相关的改进内容,不再赘述,请查看 Release Notes
以上是关于Microsoft Graph Toolkit 新版发布 - 新的 Microsoft Teams 身份验证提供程序和文件上传功能的主要内容,如果未能解决你的问题,请参考以下文章
Microsoft Graph Toolkit 新版发布 - 新的 Microsoft Teams 身份验证提供程序和文件上传功能
Microsoft Graph Toolkit 新版发布 - 新的 Microsoft Teams 身份验证提供程序和文件上传功能
微软开发者博客将发布Microsoft Graph Toolkit系列文章
如何更新 UWP Microsoft Toolkit DataGrid 中的单元格值?