管理内容安全策略

备注

从 2022 年 10 月 12 日起,Power Apps 门户更名为 Power Pages。 详细信息请参阅:Microsoft Power Pages 现已正式发布(博客)
不久后我们将迁移 Power Apps 门户文档并将其与 Power Pages 文档合并在一起。

内容安全策略 (CSP) 是一个额外的安全层,有助于检测和缓解某些类型的 Web 攻击,如数据盗窃、站点污损或恶意软件分发。 CSP 提供了一组广泛的策略指令,可帮助控制允许站点页面加载的资源。 每个指令定义特定资源类型的限制。

为门户网站启用 CSP 后,它通过阻止来自未知或恶意来源的连接、脚本、字体和其他类型的资源来帮助增强安全性。 CSP 在门户中默认关闭;但是,很多网站可能需要 CSP 来增强其他安全性。

有关 CSP 的详细信息,请转到内容安全策略参考

配置 CSP

  1. 登录到 Power Apps

  2. 确保您处于门户所在的环境中。

  3. 在左侧窗格中,选择应用,然后选择门户管理应用

    Power Apps 的应用菜单选项,选择了门户管理应用。

  4. 在左侧窗格中,选择站点设置

  5. 创建(或更新)HTTP/Content-Security-Policy 站点设置,并从 CSP 参考页面设置您需要的值,用分号分隔。

    示例

    script-src 'self' https://js.example.com;style-src 'self' https://css.example.com

    Power Apps 的站点设置菜单选项。

启用随机数

启用随机数(使用一次的数字)将阻止所有内联脚本的执行,除了内联脚本中指定的执行。 一个唯一的加密随机数将生成,并被添加到 CSP 标头中指定的每个脚本。 在门户中,随机数仅支持内联脚本和内联事件处理程序。 有关随机数的详细信息,请转到在 CSP 中使用随机数

要在门户中启用随机数,将 script-src 'nonce'; 值添加到 HTTP/Content-Security-Policy 站点设置。

示例

如果您需要严格的策略并且不想允许从门户之外的源加载脚本,使用以下方法:

script-src 'self' content.powerapps.com 'nonce'

如果您想要从任何安全来源加载脚本,使用以下方法:

script-src https: 'nonce'

备注

  • 启用随机数后,会自动注入 unsafe-eval 来支持不安全代码的自动求值。 要禁用 unsafe-eval 的自动注入,将站点设置 HTTP/Content-Security-Policy/Inject-unsafe-eval 更新为 false
  • 如果禁用 unsafe-eval 注入,基本高级窗体上自动生成字段的验证可能无法再正常工作。