¿Cómo puedo agregar NSAppTransportSecurity a mi archivo info.plist?

Resuelto chris P asked hace 54 años • 13 respuestas

https://developer.apple.com/videos/wwdc/2015/?id=711 @5:55

Parece que no puedo agregar esto a mi info.plist. No tiene ningún valor. Estoy ejecutando XCode versión 7.0 beta (7A121l) y probando en iOS9.

Debido a que no puedo declarar específicamente qué URL quiero como se ve en el video, sigo recibiendo "App Transport Security ha bloqueado una carga de recursos HTTP (http://) de texto sin cifrar porque no es segura. Se pueden configurar excepciones temporales a través de la URL de su aplicación". Errores del archivo Info.plist.

Sin embargo, parece que no puedo configurarlo. ¿Algunas ideas?

chris P avatar Jan 01 '70 08:01 chris P
Aceptado

prueba con esto --- funcionó para mí en Xcode-beta 4 7.0

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>yourdomain.com</key>
        <dict>
            <!--Include to allow subdomains-->
            <key>NSIncludesSubdomains</key>
            <true/>
            <!--Include to allow HTTP requests-->
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <!--Include to specify minimum TLS version-->
            <key>NSTemporaryExceptionMinimumTLSVersion</key>
            <string>TLSv1.1</string>
        </dict>
    </dict>
</dict>

También una opción más, si quieres desactivar ATS puedes usar esto:

<key>NSAppTransportSecurity</key>  
 <dict>  
      <key>NSAllowsArbitraryLoads</key><true/>  
 </dict>

Pero esto no es nada recomendable. El servidor debe tener los certificados SSL y que no haya fugas de privacidad.

Ashish avatar Jul 25 '2015 05:07 Ashish

Debe agregar solo la clave NSAllowsArbitraryLoads a YES en el diccionario NSAppTransportSecurity en su archivo info.plist.

Por ejemplo,

 <key>NSAppTransportSecurity</key>
 <dict>
      <key>NSAllowsArbitraryLoads</key>
     <true/>
 </dict>

ingrese la descripción de la imagen aquí

Hiren Varu avatar Sep 24 '2015 06:09 Hiren Varu

Eso no funcionó para mí, pero esto funcionó:

<key>NSAppTransportSecurity</key>  
     <dict>  
          <key>NSAllowsArbitraryLoads</key><true/>  
     </dict>  
Bobby avatar Jul 25 '2015 18:07 Bobby