투케이2K

102. (TWOK/WORK) [업무 이슈] [Ios] http 요청 시 ios 기기에서 Cookie 쿠키 samesite 샘사이트 정책 관련 쿠키 및 세션 연동 되지 않는 이슈 본문

투케이2K 업무정리

102. (TWOK/WORK) [업무 이슈] [Ios] http 요청 시 ios 기기에서 Cookie 쿠키 samesite 샘사이트 정책 관련 쿠키 및 세션 연동 되지 않는 이슈

투케이2K 2024. 10. 1. 10:54

[제 목]

[업무 이슈] [Ios] http 요청 시 ios 기기에서 Cookie 쿠키 samesite 샘사이트 정책 관련 쿠키 및 세션 연동 되지 않는 이슈

 

[내 용]

 

------------------------------------------------------------------------------
[이슈 사항]
------------------------------------------------------------------------------

1. ios 기기에서 http 요청 후 전달 받은 쿠키 및 세션으로 추가 웹브라우저 연동 시 samesite 정책 관련으로 쿠키 및 세션이 연동 되지 않는 이슈 접수

------------------------------------------------------------------------------
[원인 파악 및 증상 재현]
------------------------------------------------------------------------------

1. 증상 확인을 위해 테스트 진행 한 아이폰 os 버전 확인 (16 + / 17 + / 18 버전에서 모두 동일 증상 확인)

  >> IOS 14 이상 기기 인 경우 2020년 2월 4일 크롬 80 버전이 배포되면서 SameSite의 기본값이 Lax로 변경 되어 None 명시 필요


2. 웹 서버 소스 코드 점검 http response 응답 데이터 반환 시 samesite 값 none 설정 확인


3. ios 사파리 브라우저 디버깅을 사용해 http 요청 후 실제로 response 응답 헤더에 저장된 쿠키 값 확인

  >> samesite strict 모드로 반환 된 것 확인 (none 옵션이 적용 되지 않음)


4. ios 기기에서 http 요청 도메인 점검 실시 (이슈 발견)

  >> cookie samesite none 값을 적용하기 위해서는 보안 정책에 따라 ssl 적용이 필요한데, 기본 http 설정이 되어 있어 none 설정이 적용 되지 않음 확인

------------------------------------------------------------------------------
[조치 내용]
------------------------------------------------------------------------------

필수 : 쿠키 samesite none 옵션을 적용하기 위해 ssl 적용 실시 (https)

쿠키 설정 방법 [1] : 클라이언트 (ios) 에서 웹뷰 로딩 및 http 요청 시 사전 헤더 값 설정 및 cookie string 값을 evaluateJavaScript 로 강제 추가 실시

쿠키 설정 방법 [2] : 웹프론트에서 웹 리다이렉트 및 http 요청 시 사전 헤더 값 설정 및 cookie string 값을 강제 추가 실시

쿠키 설정 방법 [3] : Was 설정에서 CookieProcessor sameSiteCookies none 설정 실시

  >> 이경우 , IOS 12 이하 기기에서 strict 로 전송 되는 webkit 버그가 있음 (IOS 13 에서 수정 됨)

------------------------------------------------------------------------------
[참고 사이트]
------------------------------------------------------------------------------

[http 쿠키 samesite 옵션 설명 참고 사이트]

https://blog.naver.com/kkh0977/223595018272?trackingCode=blog_bloghome_searchlist


[ios 12 기기에서 samesite 설정 이슈 관련 참고 사이트]

https://blog.naver.com/kkh0977/223249103418?trackingCode=blog_bloghome_searchlist


[PG 사 외부 서드 파티 업체 라이브러리 연동 시 세션 끊김 이슈 참고 사이트]

https://blog.naver.com/kkh0977/223249678946?trackingCode=blog_bloghome_searchlist


[IOS 웹뷰 쿠키 스트링 형식 만들기 및 evaluateJavaScript 쿠키 삽입 코드]

https://blog.naver.com/kkh0977/223248630743?trackingCode=blog_bloghome_searchlist

https://blog.naver.com/kkh0977/222687800341?trackingCode=blog_bloghome_searchlist

------------------------------------------------------------------------------

 

반응형
Comments