스프링 시큐리티 쓰면 된다는 이야기도 있는거같은데
아직은 시큐리티를 공부하지 않아서
없이도 가능한 방법이 있을까요?
흐름은 이렇습니다
관리자 페이지 -> 로그아웃 -> 뒤로가기버튼 (누르면 관리자 페이지 보임)
이게 서버단에서 캐시를 아예 안넘기게 관리자페이지쪽 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 캐시 비활성화 하는방법도 찾아봤는데 제대로 된 정보가 없더라구요
js를 안 쓸 수도 있으니까? 템플릿 엔진이면 다 ssr로 던져주니까
뒤로가기 하면 자바스크립트 설정 만져주지 않으면 요청을 새로하는게 아니라 브라우저에서 캐싱된걸 보여줘서 그냥 다 보여지긴하더라구요 근데 머 뒤로가기 자체가 원래 권한이 있던 사람이 뒤로가기한거라 솔직히 딱히 문제는 없어 보이긴 하지만 그래도 그냥 궁금했어요
js프레임워크는 프론트가 알아서 하면되고
js를 안쓴다면 브라우저에서 bfCache한걸 서버단에서 막는 방법은 없는건가요?
몰루? 근데 그 기기는 원래 어드민에 접근 가능했을거고, 뒤로가기해서 요청 보내봐야 401 403 뜰건데 뭐 문제있나
js안쓰는 환경은 고려안해도됨
뒤로가기 하면 자바스크립트 설정 만져주지 않으면 요청을 새로하는게 아니라 브라우저에서 캐싱된걸 보여줘서 그냥 다 보여지긴하더라구요 근데 머 뒤로가기 자체가 원래 권한이 있던 사람이 뒤로가기한거라 솔직히 딱히 문제는 없어 보이긴 하지만 그래도 그냥 궁금했어요
해당 댓글은 삭제되었습니다.
서버사이드 렌더링으로 페이지 대충 만드는중인데 서버에서는 그럼 이 현상을 근본적으로 해결 못하나요??
백엔드임? 그럼 니가 신경쓸거 없음 - dc App
페이지갈때마다 체크하게 하던지