允许或阻止自定义脚本
作为 Microsoft 365 中的 SharePoint 管理员 ,您可以允许自定义脚本,让用户更改网站和页面的外观和行为,以满足组织目标或个人需求。 如果允许自定义脚本,则对网站或页面具有 “添加”和“自定义页面” 权限的所有用户都可以添加所需的任何脚本。 (默认情况下,创建网站的用户是网站所有者,因此具有此权限。)
注意
有关更改网站外观的简单方法,请参阅 更改 SharePoint 网站的外观。
默认情况下,在管理员使用 SharePoint 管理中心创建的大多数站点以及使用 New-SPOSite PowerShell 命令创建的所有网站上,都不允许使用脚本。 同样适用于 OneDrive、用户自行创建的网站、新式团队和通信网站以及组织的根网站。 有关自定义脚本的安全影响的详细信息,请参阅 允许自定义脚本的安全注意事项。
重要
如果在 2015 年之前为组织设置了 SharePoint,则自定义脚本设置可能仍设置为 “未配置” ,即使在 SharePoint 管理中心中,这些设置似乎已设置为阻止用户运行自定义脚本。 在这种情况下,用户将无法在 SharePoint 网站之间以及 OneDrive 和 SharePoint 之间复制项目。 在 SharePoint 管理中心的“设置”页上,若要在自定义脚本设置出现时接受这些设置,请选择“ 确定”,然后启用跨网站复制。 有关在 OneDrive 和 SharePoint 之间复制项目的详细信息,请参阅 在 OneDrive 和 SharePoint 网站之间复制文件和文件夹。
在 OneDrive 或用户创建的网站上允许自定义脚本
注意
此功能将在 2024 年 H1 日历年中删除。 删除后,将无法再允许 OneDrive 网站上的自定义脚本。
在 SharePoint 管理中心,可以选择允许用户在 OneDrive (称为 个人网站) 或他们创建的所有经典团队网站上运行自定义脚本。 有关让用户创建自己的网站的信息,请参阅 在 SharePoint 中管理网站创建。
警告
在允许在组织中的网站上使用自定义脚本之前,请确保了解 安全隐患。
转到 SharePoint 管理中心中的设置,并使用对组织管理员权限的帐户登录。
注意
如果使用的是由世纪互联(中国)运营的 Office 365,请登录 Microsoft 365 管理中心,然后浏览到 SharePoint 管理中心并打开“设置”页面。
在页面底部,选择“经典设置页面”。
在“自定义脚本”下,选择:
允许用户在个人网站上运行自定义脚本。
允许用户在自助式创建的网站上运行自定义脚本。
注意
由于自助网站创建默认指向组织的根站点,因此更改自定义脚本设置允许在组织的根网站上使用自定义脚本。 有关更改网站创建位置的信息,请参阅 在 SharePoint 中管理网站创建。
选择“确定”。 更改最长可能需要 24 小时才能生效。
允许其他 SharePoint 网站上的自定义脚本
警告
在允许在组织中的网站上使用自定义脚本之前,请确保了解 安全隐患。
若要立即允许特定网站上 (以前称为 网站集) 自定义脚本,请执行以下步骤:
-
注意
如果安装了早期版本的 SharePoint Online 命令行管理程序,请转到添加或删除程序并卸载 SharePoint Online 命令行管理程序。
以 Microsoft 365 中的 SharePoint 管理员身份连接到 SharePoint 。 若要了解具体操作步骤,请参阅 SharePoint 在线管理壳入门。
运行以下命令:
Set-SPOSite <SiteURL> -DenyAddAndCustomizePages 0
或通过 PnP.PowerShell cmdlet Set-PnPSite
Set-PnPSite -Identity <SiteURL> -NoScriptSite $false
如果为经典团队网站更改此设置,则会在 24 小时内由管理中心的自定义脚本设置覆盖该设置。
注意
不能允许或阻止单个用户的 OneDrive 使用自定义脚本。
从 SharePoint 管理中心管理自定义脚本
注意
如果在 SharePoint 租户管理中心中看不到新选项,则租户中尚未启用该功能。 每个客户将在 2024 年 6 月底之前启用这一组新功能
租户管理员在 SharePoint 租户管理中提供了一组工具来管理其组织中的自定义脚本。 具体而言,租户管理员可以执行以下操作:
- 验证自定义脚本状态
- 更改自定义脚本设置
- 持久化自定义脚本设置
验证自定义脚本状态
现在,“活动网站”页的“网站”下提供了新的“自定义脚本”列。
可以将列添加到任何视图中。 还可以使用新的 自定义脚本允许站点 轻松访问启用了自定义脚本的所有站点:
更改自定义脚本设置
在 “活动网站 ”页中,选择站点后,在 “设置”下,“ 自定义脚本 ”设置可供管理员使用:
管理员可以控制特定网站的自定义脚本设置;决定他们是否要允许或阻止特定网站上的自定义脚本:
默认情况下,对特定网站的自定义脚本设置所做的任何更改最多只能持续 24 小时。 之后,设置将重置为该特定站点的原始值。
保留自定义脚本设置
若要防止 SharePoint 将自定义脚本设置重置为整个租户的原始值,请执行以下步骤:
-
注意
如果你已安装早期版本的SharePoint Online Management Shell,请进入添加或删除程序并卸载 "SharePoint Online Management Shell"。
以 Microsoft 365 中的 SharePoint 管理员身份连接到 SharePoint 。 若要了解具体操作步骤,请参阅 SharePoint 在线管理壳入门。
运行以下命令:
Set-SPOTenant -DelayDenyAddAndCustomizePagesEnforcement $True
注意
此设置会影响所有站点。 没有选项可以仅在某些特定网站上保留对自定义脚本设置的更改。 此参数将在 2024 年 11 月之前可用。 在该日期之后,将无法再阻止 SharePoint 将所有网站的自定义脚本设置重置为其原始值。 运行在 OneDrive 和 SharePoint 上配置了多地理位置功能的 命令只会影响运行命令的当前地理位置。 若要在整个租户中持久保存自定义脚本设置,必须在每个地理位置上运行 命令。
自定义脚本被阻止时受影响的功能
阻止用户在 OneDrive 或他们创建的经典团队网站上运行自定义脚本时,网站管理员和所有者将无法创建新项,例如模板、解决方案、主题和帮助文件集合。 如果过去允许自定义脚本,则已创建的项仍将有效。
阻止用户运行自定义脚本时,以下网站设置不可用:
网站功能 | 行为 | 注释 |
---|---|---|
将网站另存为模板 | 网站设置中不再可用 | 用户仍然可以从自定义脚本被阻止之前创建的模板生成网站。 |
将文档库另存为模板 | 库设置中不再可用 | 用户仍可以根据在阻止自定义脚本之前创建的模板生成文档库。 |
将列表另存为模板 | 列表设置中不再可用 | 用户仍可以根据在阻止自定义脚本之前创建的模板生成列表。 |
解决方案库 | 网站设置中不再可用 | 用户仍可以使用在阻止自定义脚本之前创建的解决方案。 |
主题库 | 网站设置中不再可用 | 用户仍然可以使用在阻止自定义脚本之前创建的主题。 |
帮助设置 | 网站设置中不再可用 | 在阻止自定义脚本之前,用户仍然可以访问可用的帮助文件集合。 |
沙盒解决方案 | 解决方案库在“网站设置”中不再可用 | 用户无法添加、管理或升级沙盒解决方案。 它们仍然可以运行在阻止自定义脚本之前部署的沙盒解决方案。 |
SharePoint Designer | 不能再更新不是 HTML 的页面。 处理列表: 创建表单 和 自定义操作 将不再有效。 子网站: 新建子网站 和 删除网站 重定向到浏览器中的 “网站设置” 页。 数据源: “属性” 按钮不再可用。 |
用户仍然可以打开某些数据源。 若要在 SharePoint Designer 中打开不允许自定义脚本的网站,必须首先打开允许自定义脚本的网站。 |
上传可能包含脚本的文件 | 无法从库打开以下文件类型 .asmx .ascx .aspx .宏达 。罐 .master .swf .xap .xsf |
库中的现有文件不受影响。 |
将文档上传到内容类型 | 尝试将文档模板附加到内容类型时访问被拒绝的消息。 | 建议使用文档库文档模板。 |
SharePoint 2010 工作流的发布 | 尝试发布 SharePoint 2010 工作流时访问被拒绝的消息。 |
当阻止网站管理员和所有者运行自定义脚本时,以下 Web 部件和功能对网站管理员和所有者不可用。
Web 部件类别 | Web 部件 |
---|---|
业务数据 | 业务数据操作 业务数据项目 业务数据项生成器 业务数据列表 业务数据相关列表 Excel Web Access 指标详细信息 状态列表 Visio Web Access |
社区 | 关于此社区 加入 我的成员资格 工具 发生了什么事情 |
内容汇总 | 类别 项目摘要 相关文档 RSS 查看器 网站聚合器 类别中的网站 术语属性 日程表 WSRP 查看器 XML 查看器 |
Document Sets | 文档集内容 文档集属性 |
高级 | 嵌入 |
Forms | HTML 表单 Web 部件 |
媒体和内容 | 内容编辑器 脚本编辑器 Silverlight Web 部件 |
搜索 | 优雅 搜索框 搜索导航 搜索结果 |
搜索驱动的内容 | Catalog-Item 重用 |
社会协作 | 联系人详细信息 记事板 组织浏览器 网站源 标记云 用户任务 |
母版页样式库 | 无法创建或编辑母版页 |
发布网站 | 无法创建或编辑母版页和页面布局 |
此外, 将 requiresCustomScript 值设置为 true 的 SharePoint 框架 Web 部件的行为将如下所示:
- Web 部件在 Web 部件选取器中不可用
- 在允许运行的自定义脚本时添加到页面的每个 Web 部件实例将不再出现在这些页面中。 作者在编辑页面时仍可将其删除
将脚本设置更改传达给用户的最佳做法
在之前允许的网站上阻止自定义脚本之前,我们建议提前传达更改,以便用户可以了解其影响。 否则,习惯于更改主题或在其网站上添加 Web 部件的用户将突然无法看到并看到以下错误消息。
提前传达更改可以减少用户挫折感和支持呼叫。