투케이2K
183. (TWOK/ERROR) [Server] : [Ios] : WAS 에서 sameSite 옵션 none 강제 설정 시 iOS 12 에서 strict 전송 이슈 본문
183. (TWOK/ERROR) [Server] : [Ios] : WAS 에서 sameSite 옵션 none 강제 설정 시 iOS 12 에서 strict 전송 이슈
투케이2K 2023. 10. 28. 19:14[환경 설정 및 설명]
프로그램 : Xcode
설 명 : [Server] : [Ios] : WAS 에서 sameSite 옵션 none 강제 설정 시 iOS 12 에서 strict 전송 이슈
[에러 원인]
1. Was (Tomcat , Jeus) 에서 쿠키 접근 관련 samSite 설정을 none 으로 해도 iOS 12 에서 http 요청 시 strict 으로 Response Header 응답 이슈
2. 해당 이슈로 인해 iOS 12 에서 웹뷰 세션이 끊기는 이슈 발생 (Was 에서 강제 설정 시 발생 이슈)
3. Was 설정 부분 :
<Context>
<CookieProcessor sameSiteCookies="none" />
</Context>
[해결 방법]
[방법] : [1] : Apache 설정 수정 (http.config >> mod_headers 를 활성화한 후 내 vhost 에 아래와 같은 지시문을 추가)
<IfModule headers_module>
Header edit Set-Cookie ^(.*)$ $1;SameSite=None;Secure;
</IfModule>
[방법] : [2] : 스프링 서버 설정 부분에서 Response 응답 반환 부분에서 Header 값 Catch 후 강제 SameSite=None;Secure; 반환 실시
[방법] : [3] : 웹 프론트 (Web JavaScript) 부분에서 http 요청 시 헤더에 SameSite=None;Secure; 설정 및 document.cookie 쿠키 값 SameSite=None;Secure; 설정
[방법] : [4] : iOS 네이티브 코드에서 웹뷰 로드 수행 (전) 헤더에 SameSite=None;Secure; 설정 및 브릿지를 통해 document.cookie 쿠키 값 SameSite=None;Secure; 설정