2016-09-29 4 views
1

7.3.1에서 Xcode 8로 업그레이드 한 후 문제가 있습니다.
저는 직장에서 프록시를 사용하고 시뮬레이터는 시뮬레이터의 Safari가 작동하지만 내 앱을 통해 웹 서비스에 연결되지 않습니다.
내가 프록시 외부에서 시도 할 때 잘 작동하고 7.3.1 잘 작동합니다.

Xcode 8 & iOS 10을 변경해야하는 사람이 있습니까?iOS 10 시뮬레이터가 프록시에서 작동하지 않습니다.

+0

시험해보십시오. http://stackoverflow.com/questions/31254725/transport-security-has-blocked-a-cleartext-http – Jake

+0

감사합니다. Jake. 임의로드 허용이 이미 설정되었으며 도메인을 허용 목록에 추가했으나 여전히 작동하지 않습니다. – inosu812

답변

0

시뮬레이터는 별도의 iOS/watchOS/tvOS 사용자 공간을 실행하지만 호스트 macOS 커널을 공유합니다. 시뮬레이터의 NSURLSession에는 자체 캐시가 있지만 호스트 소켓 계층을 사용합니다.

시뮬레이터의 Safari에서 관련 URI를 시도하고 얻은 결과를 확인하십시오. 프록시가 SSL 연결에 man-in-the-middle 공격을 수행하는 경우 유효하지 않은 것으로 간주됩니다. 프록시에서 인증이 필요한 경우 Simulator 키 체인이 호스트 키 체인과 분리되어 있기 때문에 작동하지 않습니다 (Xcode 7에서 완료 되었기 때문에 호스트 키 체인은 새 것이 아니지만).

FTW : 프록시 MITM SSL 연결을 권장하지 않습니다. 요즘은 피싱 공격으로 인해 매우 위험한 기업 방화벽 내부에서 작동하는 공격자에게 위험에 처하게됩니다.

ATS 예외를 절대적으로 최소로 제한하는 것이 좋습니다. 웹 서비스가 안전하지 않은 SSL 설정을 사용하는 경우 취약한 연결로 사용자를 다운 그레이드하는 대신 웹 서비스를 업그레이드해야합니다. 연결할 필요가있는 하나 또는 두 개의 타사 호스트가있는 경우 ATS 예외를 해당 호스트로만 제한하십시오.

아무런 도움이되지 않으면 https://bugreporter.apple.com에 버그를 보내주십시오. sysdiagnose~/Library/Logs/CoreSimulator의 출력을 포함하십시오.

+0

시뮬레이터에서 시스템 키 체인을 사용하거나 암호를 묻고 기억하는 방법은 무엇입니까? 연결 내 일반 텍스트로 암호 제공 : willSendRequestForAuthenticationChallenge (또는 관련 NSURLSession 콜백)가 훌륭한 솔루션처럼 들리지 않습니다 (작동하는 경우 ...) – Mindaugas

+0

표준 HTTP 인증 문제에 대해 시뮬레이터에서 인증 할 수 있습니다. 인증되지 않은 인증 프록시입니다 현재 일하고 있습니다. – russbishop

관련 문제