iOS 공부하는 감자

iOS) ATS (App Transport Security) 본문

iOS

iOS) ATS (App Transport Security)

DongTaTo 2022. 7. 20. 18:19
반응형

ATS란

애플리케이션과 웹 서비스 사이에 통신에서 보안 향상을 위해 iOS 9.0부터 도입된 보안 정책으로,

보안이 취약한 네트워크를 차단하고, 모든 인터넷 통신 시 안전한 프로토콜을 사용하는 것을 보장한다.

 

프로젝트를 생성하면 자동 적용되며, 암호화 처리되지 않는 HTTP를 사용하여 네트워크 통신을 시도하면 아래와 같은 에러 로그를 띄우며 통신이 실패한다.

(+ ImageURL을 사용하여 이미지를 불러올 때, URL 주소가 HTTPS가 아니라면 이미지를 불러올 수 없다.)

 

"App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Use HTTPS instead or add Exception Domains to your app's Info.plist."

 

 


 

ATS를 비활성화하는 법

HTTP 통신을 허용하도록 ATS를 비활성화할 수 있긴 하지만, 암호화 처리되지 않는 통신이므로 가능한 사용하지 않는 것이 좋다.

 

Info.plist 파일에서 아래의 설정 추가

 

Allow Arbitrary Loads의 설정값을 YES로 변경하면 ATS를 비활성화할 수 있다.

 

 

 

Exception Domains 옵션을 통해 일부 주소에 대해서만 예외적으로 ATS를 비활성화할 수 있다.

URL주소 전부를 입력하지 않고, 일부만 작성해도 된다.

NSIncludesSubdomains

NSExceptionAllowsInsecureHTTPLoads

반응형

'iOS' 카테고리의 다른 글

iOS) ViewController에서 TableViewCell 내부의 Button Action 처리하기  (2) 2022.07.27
iOS) CollectionView - FlowLayout  (0) 2022.07.20
iOS) UserDefaults  (0) 2022.07.16
iOS) Sandbox  (0) 2022.07.15
iOS) 라이브러리와 의존성 관리 도구  (0) 2022.07.14