GCT Utilities

  • Title 쿠키 - 대시보드가 필요한 쿠키만 남기고 지우기
  • Writer Minwoo, Song Date 2023-11-01/15:13 Read 40
  • Att.#1 4.6.1 - bin.7z - 4.64KB[6]
  • Att.#2 4.7.2 - bin.7z - 4.64KB[3]
안녕하십니까, 여러분.

----작업내용을 상세히 설명드리면...

한화건설의 경우, 쿠키가 1KB를 초과할때 VizStream server가 응답하지 않는 오류입니다.
오류로 추정하는 메시지는 "AcceptSecurityContext failed with error: 80090331"입니다.
첨부파일[ConnectionServer1-20230524.txt]이 당시 VizStream Server의 로그입니다.
그래서 쿠키의 다이어트가 필요했는데,
업무포탈인 Circle에서 부여한 쿠키는 대시보드에서 로그인 이후에는 불필요하므로
랜딩페이지에서 자바스크립트로 삭제하려 했습니다.
그러나 HttpOnly속성을 갖는 쿠키는 웹브라우저의 자바스크립트에서는 제어가 불가능했습니다.
그런데 모든 요청패킷은 IIS의 모듈을 거치고나서 처리기 매핑을 통해 응답을 하는 점에 착안하여
로그인 완료전에는 서클에서 생성된 쿠키를 허용하고
로그인이 완료된 후에는 해당 쿠키를 만료시키는 모듈을 새로 만들어
web.config에 등록하여 처리완료하였습니다.

---프로그래밍은
서버에 설치된 .net framework의 버전에 맞는 파일을 다운받으세요.
(bin - 4.6.1.7z 권장)

.net framework가 서버에 설치되지 않은 경우에 다음 링크에서 다운받으시기 바랍니다.
[net4.8] https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

---DLL의 서버 반영은
DLL을 저장할 경로는 대시보드의 Bin폴더입니다. 예를 들면 [c:\inetpub\Dashboard\Bin]입니다.

web.config에서 <configuration/system.webServer/modules>노드에
<add name="CookieSorter" type="CookieSorter.CookieSorter" />를 추가하여 모듈을 활성화합니다.


참조1
https://docs.devexpress.com/AspNet/11912/common-concepts/cookies-support
로그인 하시면 댓글을 남길 수 있습니다.