스프링 시큐리티 쓰면 된다는 이야기도 있는거같은데

아직은 시큐리티를 공부하지 않아서

없이도 가능한 방법이 있을까요?


흐름은 이렇습니다


관리자 페이지 -> 로그아웃 -> 뒤로가기버튼 (누르면 관리자 페이지 보임)


이게 서버단에서 캐시를 아예 안넘기게 관리자페이지쪽 request에는

필터이용해서 response에서 헤더에 no-cache, no-store 설정해서 관리자페이지쪽을 전부 캐시막아놔도


브라우저 단에서 bfcache 라고 해서 지 멋대로 페이지 자체를 전부 캐싱한다고 하더라구요


그래서 자바스크립트로 히스토리 불러오는 경우 리로드하는 식으로 해서 처리하면

뒤로가기 누르면 새로고침되어서 접근이 안되게 막을 수 있긴하더라구요.


근데 제가 궁금한건 그냥 자바스크립트로 막아버리면 그만인데

왜 필터를 써서 서버단에서도 no-cache no-store 설정을 해줘야하는지 잘 모르겠습니다.


아니, no-cache no-store을 해도 브라우저 자체가 그냥 bfcache로 다 저장해버리는데 이게 뭔 의미가 있나 싶습니다.


css같은 정적 파일들이나 다른 정보를 캐싱하지 않는다는데 이게 뭐 눈에 안보이니 잘 감이 안옵니다.

뒤로가기 했는데 그냥 페이지 다 보이는데
개발자도구 이용해서 network 쪽 살펴봐도 no-cache no-store 설정 하나 마나 뒤로가기 버튼 누르면 받아오는 css같은것도 하나 없는건 매한가지입니다.


직접 브라우저 bfcache를 브라우저 상에서 막아버려서 확인하고 싶어서

브라우저 back-forward 캐시 비활성화 하는방법도 찾아봤는데 제대로 된 정보가 없더라구요