ATS 应用程序传输安全:Webview 内的 HTTP url

2024-04-06

我们有一个在 Webview 中显示 HTML 内容的应用程序。目前提供给 Webview 的内容来自非安全域。从 iOS10 开始,它应该从安全域提供服务,因此在迁移之前需要消除一些疑虑。

  1. 安全的 HTML 页面 (https) 是否也应该具有来自安全服务器的 CSS 和 JS 链接?因为一些 CSS 和 JS 可能来自第三方服务器。

  2. 如果安全的 HTML 页面 (https) 加载到 Webview 中,并且有一些不安全的链接 (http),当用户点击时,这些链接会加载到 Webview 中吗?

在此先感谢您的帮助。


我做了一个快速测试,似乎需要由UIWebView要正确显示页面,必须遵守 ATS 规则,但也要遵循您在Info.plist为您的项目。如果我尝试点击指向非 https 站点的链接UIWebView,它也给了我错误。

我认为你最好的选择是使用SFSafariViewController有条件地适用于 iOS 9 用户。您可以继续使用UIWebView适用于不严格执行 ATS 的 iOS 7 和 iOS 8 设备。这会增加一些额外的代码,但应该是最少的。

另外,只是对 Apple 在应用程序传输安全执行方面所做的更改进行澄清。他们宣布应用程序需要应用程序传输安全2016年12月31日后提交。这意味着影响并不主要取决于用户的设备操作系统,而是取决于提交的开发人员。另外,苹果仍然允许例外可以添加,只要你有理由。我们尚不知道苹果会允许哪些类型的理由。最后,Apple 在 WWDC 会议上表示,应用程序仍然可以包含 ATS 要求的前向保密部分的例外情况,而无需单独的理由。不过,直到 2017 年 1 月 1 日,我们才确切知道这将如何运作。

Edit:Apple 似乎添加了一个新的例外,您可以使用它来允许非 ATS 连接UIWebview and WKWebview实例。这是NSAllowsArbitraryLoadsInWebContent。这应该完全符合您的要求。以下是 ATS 最新动态的精彩总结:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ATS 应用程序传输安全:Webview 内的 HTTP url 的相关文章

  • 如何检测应用程序是否在越狱设备上运行? [复制]

    这个问题在这里已经有答案了 我刚刚发布了适用于 iOS 的应用程序 但我不确定如何确保我的应用程序不被越狱者使用 我可以采取措施阻止我的应用程序在越狱设备上运行吗 您可以通过代码检测应用程序是否在越狱设备上运行 通过这种方式 您可以弹出警报
  • 在 iOS4 中视图控制器即将弹出时收到通知

    这个问题以前有人问过 但我能找到的答案是 2009 年的 不适合我的问题 让我重申一下这个问题 我有一个UINavigationController产生并推动许多不同的UIViewControllers 入栈 其中之一涉及一些核心数据操作
  • Xcode 6 Bug:Interface Builder 文件中的未知类

    我升级到 Xcode 6 beta 4 现在我的应用程序不断崩溃并显示以下消息 Interface Builder 文件中存在未知的类 X 它崩溃是因为据说 Xcode 找不到我在故事板中链接的自定义类 但它显示它们在 Xcode 界面中正
  • 如何在 iOS (safari) 中获取 mailto 链接以打开 Outlook 应用程序?

    我注意到 在使用 Outlook 应用程序且未配置本机邮件应用程序的 iPhone 用户上 当他们单击 mailto 链接时 系统会提示他们在 iOS 中创建新的电子邮件帐户 而不是打开 Outlook 应用程序 是否可以将 Outlook
  • 管理一堆具有依赖关系的 NSOperation

    我正在开发一个创建内容并将其发送到现有后端的应用程序 内容是标题 图片和位置 没有什么花哨 后端有点复杂 所以这是我必须做的 让用户拍照 输入标题并授权地图使用其位置 为帖子生成唯一标识符 在后台创建帖子 上传图片 刷新用户界面 我使用了几
  • Xcode 9 - 框架断点

    在 Xcode 7 和 8 中 我已经能够通过在也包含框架项目的 xcworkspace 中运行包含应用程序来调试我一直在开发的框架 如果我在框架中设置断点 它们就会在运行时被触发 在 Xcode 9 beta 6 中 情况不再如此 到目前
  • 导航栏隐藏在 SwiftUI 中不起作用

    我有三观 我想隐藏第三个视图中的导航栏 即使我给 navigationBarHidden true 导航栏正在显示 我找不到我哪里做错了 我已在下面附上我的代码和生成的屏幕截图 Xcode 版本 11 1 struct ContentVie
  • 文件夹“Images.xcassets”不存在

    当我在最新的 xcode 版本中打开项目文件时 我在两个弹出窗口中收到错误 文件夹 Images xcassets 不存在 我必须多次单击 确定 才能使弹出窗口消失 我没有采取任何措施来删除此类文件夹 有谁知道我为什么会得到它们 Updat
  • 如何在 iOS 上捕获的视频中添加水印[重复]

    这个问题在这里已经有答案了 我想知道是否有人可以告诉我如何实现这一目标 如果一直在考虑几个解决方案 从捕获的视频创建单独的图像 然后将它们合并到每个图像中 然后创建一个新的 AVAsset 听起来有点复杂 您不觉得吗 合并2个视频 一个是透
  • 如何在 IOS safari 上禁用缓存?

    有没有办法禁用 ipad iphone 上的缓存 我想针对非缓存体验运行一些自动化测试 我刚刚偶然发现了一种在 iOS 上禁用 Safari 缓存的方法 iOS Open Settings 导航Safari gt 高级 Enable 网页检
  • 为什么我的 UIPickerView 崩溃了?

    当我使用 UIPickerView 加载视图时出现以下错误 由于未捕获的异常 NSInvalidArgumentException 而终止应用程序 原因 NSCFNumber isEqualToString 无法识别的选择器发送到实例 0x
  • 如果两个本地通知具有相同的触发时间并且应用程序位于后台,则 didReceive Local notification 仅被调用一次

    这很容易重现 看起来像是 iOS 的一个错误 如果它是一个功能 那么如何判断第二个通知是否已被接受 更新 这不限于具有相同触发日期的两个或多个通知 它们可以有任何触发日期 但如果它们在应用程序处于后台时都过期 那么它仍然是相同的结果 did
  • UITableView行高不变

    我创建了一个自定义单元格 我有一系列字典 对于我需要创建的字典值UILables 每个单元可能包含不同数量的UILabels 所以按照我的习惯UITableViewCell类我就是这样做的 void generateCell BOOL is
  • 当前图像选择模式会擦除 UI

    我下面有一个非常简单的视图控制器 UI 实际上只是一个带有底部标签栏的按钮 import UIKit class ImageAdderViewController UIViewController override func viewDid
  • 我可以在 Swift 3 项目中使用 Swift 2.3 框架吗?

    在我的项目中 我将所有私有 swift 2 3 文件迁移到 swift 3 我想使用用 swift 2 3 编写的遗留框架 直到它们有 swift 3 版本 我尝试添加 使用旧版 Swift 版本 是 清除 构建我的项目 但我仍然遇到一些麻
  • 使用 Swift 在 Sprite Kit 中构建棋盘游戏? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在使用 Swift 的 Sprite Kit 中 我试图构建一个国际象棋棋盘 实际上是一个类似国际象棋的棋盘 平铺网格 那么一般来说
  • 如何检测按下的返回键并使用 UIKeyInput 协议对其进行响应?

    我有一个表视图 显示我希望用户能够编辑的列表 为了节省空间 并且让我的视图更容易看清 我创建了一个符合 UIKeyInput 协议的自定义工具栏 这样我就可以拉起键盘而无需使用任何文本字段 到目前为止 一切都很好 我有一个可变字符串正在处理
  • 如何在UiView中添加UIImagePickerController

    如何在TabBarApplication中的UiView中添加UIImagePickerController 无论您是否在选项卡中 此代码都会进入您视图的 ViewController 类 当您需要时创建一个选择器 UIImagePicke
  • 将UIWebView显示的PDF保存到本地

    我有一个UIViewController与UIWebView显示一个 pdf 文件 具体取决于之前单击的行UITableView 现在我想添加一个按钮 供用户在本地保存此 pdf 文件以供离线使用 然后还有第二个UITableView它应该
  • 如何在iPhone中将字节数组转换为base64字符串?

    我有一段vb代码 我需要将字节数组转换为 Base 64 字符串 下面是vb代码 如果 arrLicence Count gt 0 那么 LicenseBytes CType Array CreateInstance GetType Byt

随机推荐

  • linq to sql loadwith 与 Associatewith

    loadwith 和 Associatewith 之间有什么区别 从我读到的文章看来 loadwith 用于加载附加数据 例如客户的所有订单 而AssociateWith用于过滤数据 这是正确的理解吗 如果有人可以用基于示例的解释来解释这一
  • Laravel 4:发布包的资产

    如何发布包资源 我在这里找到了一个教程 http laravel recipes com recipes 279 http laravel recipes com recipes 279 但是当我尝试从工作台发布资产时 出现以下错误 Run
  • PHP、MySQL:接收电子邮件,在数据库中自动搜索并根据结果发送电子邮件

    访客可以通过联系表联系工作人员 访客还需要提交电子邮件 这将存储在数据库中 现在考虑到工作人员回复此消息 工作人员的回复将直接发送到访客的电子邮件中 假设用户想要跟进工作人员发送的消息 我希望访问者只需点击电子邮件服务中的回复按钮 然后向我
  • 标准化整数与浮点的转换

    我需要将标准化整数值与实际浮点值相互转换 例如 对于 int16 t 值 1 0 用 32767 表示 1 0 用 32768 表示 尽管对每个整数类型 有符号和无符号 执行此操作有点乏味 但手动编写仍然很容易 然而 我想尽可能使用标准方法
  • 增加 Java 中主题的分区数量

    我正在使用名称 卡夫卡 2 12版本 2 3 0 根据我想更改的流量 负载最大分区某个主题的编号 Kafka启动后是否可以进行这种更改 并且可以通过代码完成吗 是的 您可以通过代码增加分区 使用AdminClient createParti
  • Android 当主题为深色时更改品牌启动背景颜色

    我在我的应用程序中实现了深色主题 一切正常 当系统处于深色模式时 应用程序也处于深色模式 反之亦然 问题是品牌启动 我有 2 个可绘制文件 Dark
  • 如何使用 ruby​​ 通过 ssl 通过 smtp 发送邮件(不使用 Rails,gmail 没有 TLS)

    我想要的只是使用 SSL 通过 SMTP 从我的 ruby 脚本发送电子邮件 我只找到了从 Rails 或使用 TLS 的 Gmail 执行此操作的示例 我发现人们谈论 ruby 1 8 5 的 SMTPS 支持 但是libdoc http
  • 显示没有索引的 pandas 数据框

    我想在没有索引列的情况下显示此数据框 我正在使用制表模块来更好地可视化数据 但不想在这里看到索引 我在 dftabulate 中尝试了index False 但它不接受这个参数 import pandas as pd from tabula
  • 如何在 jasper 报告中将文本字段旋转 90 度?

    我正在使用 iReport 设计器创建一些报告 在生成报告时 我遇到一个要求 必须以 90 度旋转显示静态文本字段 标签 如下图所示 我在互联网上搜索以获得解决方案 我发现 jaspersoft 不支持文本字段旋转 我在解决方案中读到了这个
  • 从 Admin SDK 调用 Firebase Callable Cloud 函数

    我有一个 Firebase 云函数 我想创建一个可调用函数 以便我可以从内置身份验证的 Web 客户端调用它 但我也想使用 Admin SDK 从我自己的后端代码调用它 特别是来自 Java 如果这很重要的话 我看到协议已记录 https
  • 在 Android 中的 Fragment 中使用 Google 地图

    我正在尝试在片段中加载 Google 地图 无论我尝试实现什么解决方案 我都会不断收到相同的错误 我已经解决了所有类似 如果不相同 的问题 并尝试按照前几个最佳答案的建议进行操作 但遗憾的是没有运气 因此 如果您能帮助我 我将不胜感激 我的
  • java 中像 read() 这样的 I/O 方法如何将线程置于阻塞状态?

    因此 如果我理解正确的话 当我们对对象调用 wait 时 线程会进入等待状态 而当它等待对象上的锁时 例如尝试进入同步块或方法时 线程会进入阻塞状态 像 read 这样的 I O 方法如何将线程置于阻塞状态 我理解为什么它必须处于阻塞状态
  • OpenGL - 固定管线着色器默认值(使用着色器模仿固定管线)

    谁能给我提供类似于固定功能管道的着色器 我最需要默认的片段着色器 因为我在网上找到了类似的顶点着色器 但如果你有一双应该没问题 我想使用固定管道 但具有着色器的灵活性 因此我需要类似的着色器 以便我能够模仿固定管道的功能 非常感谢 我是新来
  • 基本 javascript 警报在英特尔 XDK 代码编辑器中不起作用

    我正在从一个新的空白英特尔项目开始 我什至还没有开始编码 我只是设置文件树并确保 html 和 javascript 页面通过正确的锚点和脚本路径连接 但我的第一个 js 文件无法工作 我提供了测试代码和错误的屏幕截图 我知道语法是正确的
  • tkinter 中的框架未彼此堆叠

    我在 tkinter 中将 页面 堆叠在一起时遇到问题 我有一个主Frame包含两个子帧 两个子帧都包含不同的信息 第一个子帧包含Listbox和几个按钮 位于主框架的左侧 第二个框架应该包含不同的 页面 现在有两个 并让它们填满整个框架
  • 重定向到 HTTP 非 www 到 HTTPS www htaccess

    我想使用 HTTPS 协议从任何方向重定向到我们的网站 但有些重定向不起作用 我要这个 http www site co TO https www site co http site co TO https www site co 这是我的
  • 如何在同一页面(列表/创建)MVC3中使用@model IEnumerable<>和@model<>

    假设我有一个 Location 类 并且我正在使用 MVC3 创建一个脚手架列表 index cshtml 索引 html 页面使用 model IEnumerable 如果我想向列表中添加新位置 请按 创建 然后使用 model Proj
  • Android - 如何确定调用应用程序的包名称

    我最近遇到了这个问题 我找不到在我的活动中调用应用程序的包名称的方法 如果调用应用程序使用startActivityForResult 那就没问题了 我可以信赖Activity getCallingPackage 获取调用者的包名 但是当调
  • 如何使用 Rvest 抓取带有嵌套列的 HTML 表格?

    我在废弃带有嵌套列的 HTML 表时遇到了一个大问题 该表来自于香港入境事务处 https www immd gov hk eng stat 20220901 html 屏幕截图如下所示 我尝试用 rvest 来做 但结果很混乱 libra
  • ATS 应用程序传输安全:Webview 内的 HTTP url

    我们有一个在 Webview 中显示 HTML 内容的应用程序 目前提供给 Webview 的内容来自非安全域 从 iOS10 开始 它应该从安全域提供服务 因此在迁移之前需要消除一些疑虑 安全的 HTML 页面 https 是否也应该具有