标签: app-transport-security

使用客户端SSL证书并生成HTTP 403错误时iOS 9中的错误

我认为我们刚刚发现iOS 9(2015年10月23日版)的一个错误,当时使用客户端SSL证书与后端API通信.与许多REST服务一样,我们的API生成4xx错误代码以传达状态.其中一个是当客户端尝试访问特定客户端ID无权访问的路径时出现403 Forbidden错误.请注意,在客户端SSL证书设置了有效连接并且客户端ID已经过身份验证之后,会发生此HTTP错误.

在iOS 9中,此序列将生成无效的客户端SSL错误:

FAILED: Error Domain=NSURLErrorDomain Code=-1206 "The server “our.server.here” requires a client certificate."

(注意:这是我的推文的后续内容:https://twitter.com/ckmaresca/status/657576686318256128 - 我认为SO是大多数人会搜索的地方)

ssl client-certificates http-status-code-403 ios app-transport-security

7
推荐指数
1
解决办法
1055
查看次数

WKWebView如何显示http:pages的链接

我有一个WKWebView将使用在线收集的链接显示用户的网页.有时这些链接http:被阻止ATS.我尝试过简单地将链接更改为https:有时可用的链接.

但是,我经常收到错误" SSL发生了错误,无法与服务器建立安全连接".

有时页面只是重定向到http:,再次被阻止.其他时候https:页面只是"未找到".http:仅删除会导致"Unsupported URL"错误.

有没有办法WKWebView显示这些页面?

请不要"建议NSAllowsArbitraryLoads,甚至是每个域的例外(我事先都不知道域名是什么).这些页面在Safari上完全加载,甚至是移动游戏,所以它必须是可能的.

ios wkwebview app-transport-security

7
推荐指数
2
解决办法
3505
查看次数

AFNetworking - HTTP加载失败(错误代码:-999)swift iOS

我在iOS 11中使用AFNetworking.我收到的错误如下:

任务<2EC9C49F-1889-4BFF-83B4-2047ED6E5F2A>.<1> HTTP加载失败(错误代码:-999 [1:89])错误(countries.php):错误域= NSURLErrorDomain代码= -999"已取消"UserInfo = {NSErrorFailingURLStringKey = https://www.plrc.us/api/countries.php,NSLocalizedDescription =已取消,NSErrorFailingURLKey = https://www.plrc.us/api/countries.php }

我已经尝试了所有可能的方式.

info.plist中

请帮我解决这个问题.

谢谢

ios afnetworking swift app-transport-security

7
推荐指数
1
解决办法
1万
查看次数

中断kCFStreamErrorDomainSSL

我正在尝试调试一个可以进行大量HTTP调用的应用程序.我在控制台中看到了这个:

2015-09-08 17:21:01.458 MyApp[3186:3064431] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
Run Code Online (Sandbox Code Playgroud)

我理解如何向我的plist添加异常,但有没有办法添加断点,这些请求无法查看请求的内容?

nsurlsession ios9 app-transport-security

6
推荐指数
2
解决办法
1277
查看次数

iOS 9 ATS - 禁用所有域的前向保密

在iOS 9中启用ATS后,我的许多客户无法满足前向保密要求.但是,它们可以满足https和TLS 1.2要求.因此,我希望放宽前向保密要求,同时保持https和TLS 1.2.

我想知道是否有人想出了一种方法来使用NSExceptionRequiresForwardSecrecy或NSThirdPartyExceptionRequiresForwardSecrecy来禁用所有域的前向保密.

我尝试使用*用于NSExceptionDomains或*.com但是当我使用它时问题链接不起作用.当我使用其domain.com时,问题链接将加载.我正在查看Apple Docs,但没有看到任何方法来实现我的目标.

是否可以通过将NSAppTransportSecurity/NSAllowsArbitraryLoads设置为true来完全禁用所有域的前向保密?

谢谢!

ios app-transport-security nsapptransportsecurity

6
推荐指数
1
解决办法
977
查看次数

https上的React-native加载图像在http不起作用时起作用

我想在iOS模拟器中通过http uri作为源加载图像.但是屏幕上没有显示任何可以通过检查员看到的线框.如果你在Android中加载相同的代码它工作正常,如果你使用https uri而不是http它也可以正常工作.

示例代码:

render() { 
  return ( 
   <View> 
     <Image 
       source={{uri:https://facebook.github.io/react/img/logo_og.png'}} // works  
    // source={{uri: http://facebook.github.io/react/img/logo_og.png'}}  // doesn't work
       style={{width: 400, height: 400}}   
     />   
  </View>  
 );  
}
Run Code Online (Sandbox Code Playgroud)

https info.plist ios react-native app-transport-security

6
推荐指数
2
解决办法
8562
查看次数

应用传输安全,异常域问题

在 iOS 应用中,我遇到了应用传输安全性问题:

我在网上阅读了很多帖子,但由于某种原因,我在 Info.plist 中设置的内容似乎被忽略了。我尝试了几种可能性,这是最后一种:

<plist version="1.0">
<dict>
    ……..
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>mydomain.net</key>
            <dict>
                <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
                <true/>
                <key>NSIncludesSubdomains</key>
                <true/>
                <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                <false/>
            </dict>
        </dict>
    </dict>
    ……..
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

但是无论我在 Info.plist 中设置什么,我都会收到此消息:

2016-03-25 13:21:17.234 MyApp[3587:1285514] App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.
Run Code Online (Sandbox Code Playgroud)

我可能会错过什么?

info.plist ios app-transport-security nsapptransportsecurity

5
推荐指数
1
解决办法
1452
查看次数

在iOS应用中从http切换到https会在发布时出现导出合规性问题

我们最近决定在今年夏天更新我们的几个应用程序,将它们从http切换到https,以便遵循2017年1月生效的新Apple指南.

转移到应用程序和从应用程序转移的唯一内容是产品信息,没有用户信息或任何甚至远程敏感的东西 但我们希望尽早遵守,以便我们以后不必担心.

问题:

Apple 似乎迫使我们处理美国出口合规法,该法要求我们获得出口商注册号(ERN)SNAP-R的批准,该法需要公司识别号(CIN).我想,我不是律师.

现在这个问题在这里有所回答,但这已经超过3年了,如果我了解发生了什么,每个与他们的应用程序建立http连接并且在美国境外可用的人都会经历这个问题.

如果是这种情况那么我会期望对大多数iOS应用程序开发人员需要切换到https所需的内容有一个非常明确的解释.

但是我对此并没有太多了解,我对确切的要求(如果有的话)感到困惑.

任何律师都表示赞赏.

https publishing ios app-transport-security

5
推荐指数
1
解决办法
7063
查看次数

应用传输安全阻止 HTTPS

我的 ATS 有问题。我使用的是 XCode 9.1,我的开发目标是 11.0。我正在使用 react-native 0.49 进行开发

我的程序正在获取具有有效(谷歌浏览器)letsencrypt 证书的https ( https://www.xxxx.com ) 资源。获取仅在 NSAllowsArbitraryLoads 设置为 true 时有效,当设置为 false 时获取被阻止(调试出)?

我正在使用临时域 ( https://xxxx.no-ip.org )进行一些测试。此域也有一个有效的 Letencrypt 证书。在这种情况下,一切正常。

我能看到两个主机之间的唯一区别是测试域是单域主机,生产主机是多域主机。有人有建议吗?

问候,

哈利


调试出来: CFNetwork Diagnostics [1:1187] 12:38:08.258 { Did Fail: (null) Loader: {url = https://.... Error: Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null) " UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFNetworkCFStreamSSLErrorOriginalValue=-9802, _kCFStreamErrorDomainKey=3, _kCFStreamErrorCodeKey=-9802}

这是我的info.plist部分

<key>NSAppTransportSecurity</key>
  <dict>
  <key>NSAllowsArbitraryLoads</key>
  <false/>
  <key>NSExceptionDomains</key>
  <dict>
  <key>xxxx.no-ip.org</key>
  <dict/>
  <key>localhost</key>
  <dict>
  <key>NSExceptionAllowsInsecureHTTPLoads</key>
  <true/>
  </dict>
  <key>xxxx.com</key>
  <dict>
  <key>NSIncludesSubdomains</key>
  <true/>
</dict>  </dict>  </dict>
Run Code Online (Sandbox Code Playgroud)

ios app-transport-security

5
推荐指数
1
解决办法
1691
查看次数

WKWebView 自定义 URL 方案不适用于 https?(混合内容被阻止)

我有一个 WKWebView 来加载一个网站,该网站具有使用 WKURLScheme 实现的自定义 url 方案 (mycustomurl://),该网站将使用 GET 调用该方案。当网站位于 http:// 时,一切都按预期工作,但是当我切换到 https:// 时会中断,并出现以下错误

[blocked] The page at https:// (url snipped) was not allowed to display insecure content from mycustomurl://(url snipped). 
Run Code Online (Sandbox Code Playgroud)

WKURLScheme 回调从未被命中,所以我怀疑 Safari 或更高的功率阻止了它:/

我已经梳理了关于 ATS 的 SO 讨论,但都没有奏效。我确实看到了一些像这样的讨论,提到这是因为Safari 阻止了混合内容,当我直接在 Safari 上尝试时,它确实生成了相同的结果(被阻止)。

这个好像没有解决办法?似乎我们无法关闭 Safari 的混合内容限制。那么应该如何使用和实现自定义 URL 方案,因为 https 应该总是比 http 更好的选择?

我确实注意到大多数自定义 URL 方案教程都有 http 而不是 https ...

safari ios swift wkwebview app-transport-security

5
推荐指数
2
解决办法
3874
查看次数