适用于: ISV
在将 SharePoint Embedded 应用程序发送到客户租户之前,请使用本文。 SharePoint Embedded 仅限 API,因此客户安装依赖于容器类型注册、许可、权限和计费配置,而不是传统的 SharePoint 网站部署。 你的目标是为客户提供一个完整且可重复的载入包。
重要
在客户加入之前,在开发人员租户中准备生产容器类型。 试用容器类型用于探索,不能部署到其他使用租户。
客户安装流
客户就绪 SharePoint Embedded 应用程序通常遵循以下顺序:
- 为产品选择应用程序模型和租户模型。
- 在开发人员租户中注册或配置拥有的应用程序。
- 为该拥有的应用程序创建标准生产容器类型。
- 为容器类型选择标准计费或直通计费。
- 为客户管理员准备Microsoft Entra同意信息。
- 提供客户租户设置说明。
- 要求客户在需要时完成容器类型注册、管理员同意和计费设置。
- 验证应用程序是否可以在使用租户中创建和使用容器。
有关发布路径中的下一个决策,请参阅 为应用选择计费模型。
先决条件
在准备客户安装材料之前,请确认开发人员租户中的以下项。
| 领域 | 要求 |
|---|---|
| Microsoft 365 租户 | 活动 SharePoint 租户可用。 |
| 管理员角色 | 全局管理员或 SharePoint Embedded 管理员可以管理容器类型。 |
| 应用程序 | 你有一个将拥有容器类型的Microsoft Entra应用程序。 |
| 容器类型 | 你有生产标准容器类型,而不是试用版容器类型。 |
| 计费决策 | 你知道应用是使用标准计费还是直通计费。 |
| 客户包 | 可以提供应用 ID、重定向 URL、权限、支持联系人和验证步骤。 |
了解开发人员责任
开发人员管理 SharePoint Embedded 应用程序及其支持的容器类型。 容器类型定义 SharePoint Embedded 应用程序与存储内容的容器之间的关系。 每个容器类型都与一个拥有的应用程序相关联。 拥有的应用程序默认具有对该类型的容器的完全访问权限。
开发人员可以使用 SharePoint Embedded Visual Studio Code 扩展或Microsoft Graph fileStorageContainerType API 来创建、列出、更新和删除容器类型。 图形创建仅委托,不需要管理员角色。 有关详细信息,请参阅 创建和配置容器类型。
有关模型和租户决策,请参阅 选择应用模型。
打包应用程序配置
为客户提供评审和批准应用所需的确切标识符和 URL。 不要要求客户管理员从代码推断这些值。
在安装包中包含以下信息:
- 产品名称和发布者名称。
- 拥有应用程序 ID。
- 创建容器类型 ID 后。
- 容器类型名称。
- 计费模型:标准或直通。
- 应用程序重定向 URL(如果已在容器类型上配置)。
- 面向客户的登录 URL。
- 面向客户的支持 URL。
- 应用请求的Microsoft Entra权限列表。
- 应用是否使用委托的权限和/或应用程序权限。
- 来宾应用程序是否需要访问拥有的应用程序。
- 应用的数据驻留、保留和支持边界。
- 客户在设置后可以运行的验证步骤。
确认拥有的应用和容器类型关系
每个生产容器类型都必须有一个拥有的应用程序。 一个拥有的应用程序一次只能拥有一个容器类型。 不要在多个生产容器类型中重复使用一个拥有的应用程序。 如果需要多个隔离或计费边界,请计划单独的拥有应用程序和容器类型。
使用 SharePoint Embedded Visual Studio Code 扩展或 Microsoft Graph 创建 fileStorageContainerType API 创建生产容器类型。 Microsoft Graph 创建仅委托,不需要管理员角色。
配置生产容器类型
创建供客户使用的标准容器类型。 SharePoint Embedded 支持两种生产计费选项:
- Standard计费,其中向开发人员租户计费。
- 直通计费,其中使用租户在注册和设置后计费。
对于标准计费,开发人员在附加计费信息时必须提供Azure订阅、资源组和区域。 对于直通计费,开发人员创建启用了直通计费的容器类型,然后客户管理员会在使用租户中设置计费。
重要
创建容器类型后,无法转换Standard和直通计费选项。 如果选择了错误的计费模型,请使用预期的计费模型创建新的容器类型。
确定客户必须执行的操作
客户移交应将 ISV 任务与客户管理员任务明确分开。
ISV 任务
在客户开始设置之前完成以下任务:
- 创建或配置拥有Microsoft Entra应用程序。
- 创建生产容器类型。
- 配置适用于所有容器的容器类型设置。
- 记录Microsoft Entra同意要求。
- 记录是否需要直通计费。
- 准备验证清单。
- 提供安装失败的升级联系人。
客户管理员任务
要求客户管理员在其租户中完成以下任务:
- 查看应用发布者、权限和数据处理文档。
- 在需要时授予管理员同意。
- 通过应用的注册流在使用租户中注册容器类型。
- 如果应用使用直通计费,则设置计费。
- 验证应用是否显示在租户管理体验中。
- 确认可以创建和管理容器。
有关面向客户的步骤,请参阅 指导客户完成租户设置。
准备权限指南
记录应用请求的权限以及需要每个权限的原因。 使用特定于产品的说明,而不是复制没有上下文的权限显示名称。
至少,安装在使用租户上的 SharePoint Embedded 应用程序会请求以下Microsoft Graph 权限:
| 权限 | 类型 | 用途 |
|---|---|---|
FileStorageContainerTypeReg.Selected |
委托或应用程序 | 在使用的租户中注册容器类型。 使用委派权限时,执行注册的用户必须是 SharePoint Embedded 管理员 或全局管理员。 应用程序权限需要管理员同意;委托的权限不会。 |
FileStorageContainer.Selected |
委托或应用程序 | 与容器类型的 SharePoint Embedded 内容进行交互。 应用程序权限需要管理员同意;委托的权限不会。 |
重要
建议使用代表用户使用 SharePoint Embedded (委派访问) 。 它提高了应用程序执行的操作的安全性和可审核性。
对于单租户应用,可以构造管理员同意 URL 并将其提供给租户的Microsoft Entra管理员,例如:
https://login.microsoftonline.com/{tenant}/v2.0/adminconsent?client_id={client_id}&redirect_uri={redirect_uri}
确保应用的 重定向 URI 可以处理管理员同意流。 有关完整权限模型,请参阅 身份验证和授权。
如果应用使用来宾应用程序访问权限,请说明使用租户管理员如何在管理工具中查看来宾应用程序权限。
警告
不要在安装脚本中隐藏可选权限或提升的权限。 客户管理员应在授予同意之前查看请求的权限。
准备计费指南
在客户安装应用之前,告诉客户应用哪种计费模型。
对于标准计费:
- 说明开发人员租户拥有 SharePoint Embedded 消耗计费关系。
- 告知客户 SharePoint Embedded 使用情况是否包含在商业协议中。
- 确认客户无需为 SharePoint Embedded 计费配置Azure订阅。
对于直通计费:
- 说明消耗费用将计费给使用租户。
- 告知客户,在配置有效计费之前,任何用户都无法访问直通 SharePoint Embedded 应用。
- 发送客户以 指导客户完成租户设置 和 安装 SharePoint Embedded 应用。
准备管理员移交材料
创建一个简洁的管理移交数据包,其中包括:
- 安装概述。
- 发布者和应用标识信息。
- 安全性和符合性摘要。
- 计费模型摘要。
- Microsoft Entra同意步骤。
- 租户设置步骤。
- 验证清单。
- 回滚或卸载指南。
- 支持联系人和预期的响应时间。
使移交特定于一种产品和一种容器类型。 如果发布多个产品,请为每个应用提供单独的切换。
提供验证清单
包括客户在安装后可以随你完成的清单:
- 客户管理员可以标识租户中的 SharePoint Embedded 应用程序。
- 客户管理员已授予预期的同意。
- 必要时启用直通计费。
- 应用程序可以创建测试容器。
- 应用程序可以上传、读取和删除测试内容。
- 客户管理员可以查看容器详细信息。
- 外部共享行为与客户的策略匹配。
- 验证后将删除测试数据。
有关详细验证,请参阅 验证客户应用安装。
后续步骤
在向客户发送安装说明之前,请选择正确的计费选项: 为应用选择计费模型。