로그아웃 후 브라우저 뒤로가기 버튼 클릭시 이전 페이지 접속 안되게 하는 방법
안녕하세요.
asp.net core 3.1 로 개발 중에 이전 웹페이지가 로그인 후 볼 수 있는 페이지임에도 불구하고
로그아웃 후 브라우저의 뒤로가기 버튼 클릭시 이전 페이지 접속이 됩니다..
Cookie로 로그인/로그아웃 기능을 구현하였고,
_Layout.cshtml 상단에 캐쉬관련 코드는 추가되어 있습니다.
<meta http-equiv="cache-control" content="no-cache" /> <meta http-equiv="expires" content="-1" />
<로그인처리 코드>
var identity = new ClaimsIdentity(claims: new[] { new Claim(type:ClaimTypes.Name, value:userInfo.ID), new Claim(type:ClaimTypes.Role, value:userTopRole.RoleName), new Claim("User_ID", userInfo.User_ID.ToString()), new Claim("User_Name", userInfo.Name), new Claim("User_Name_Eng", userInfo.Name_Eng), new Claim("Role_Code", userTopRole.RoleCode), new Claim("Role_Priority", userTopRole.RolePriority.ToString()), new Claim("Signature_ID", userInfo.Signature_ID.ToString()) }, authenticationType: CookieAuthenticationDefaults.AuthenticationScheme); await HttpContext.SignInAsync(scheme: CookieAuthenticationDefaults.AuthenticationScheme, principal: new ClaimsPrincipal(identity), properties: new AuthenticationProperties() { ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(60), IssuedUtc = DateTimeOffset.UtcNow, IsPersistent = true });
<로그아웃 처리 코드>
public async Task<IActionResult> LogOut()
{
await HttpContext.SignOutAsync(scheme: CookieAuthenticationDefaults.AuthenticationScheme);
return RedirectToAction("Login", "Account");
}
브라우저 뒤로가기 버튼 클릭 시 로그인 Cookie 정보가 없는 경우,
로그인 페이지로 이동 시키고 싶은데 방법이 있을까요?
Câu trả lời 1
0
Hye Rim Park 님, 반갑습니다.
강의 소스에 로그아웃 처리한 부분을 적용해 놓았는데요.
강의 소스를 먼저 새로 받으신 후에, NetCore.Web.V5 프로젝트를 시작 프로젝트로 세팅해 주세요.
그리고 실행해서 테스트하신 후에 질문을 다시해 주시겠어요?
Membership 컨트롤러의 LogOutAsync 메서드를 중점적으로 확인하시기 바랍니다.
변경된 소스 내용을 간단히 설명드리면 다음과 같습니다.
기존에는 로그아웃 링크가 HttpGet으로 지정되어 있었는데, HttpPost로 처리되도록 Controller와 View들을 변경했습니다.
또한, 로그인이 필요한 View에서는 기존에 정해진 링크로만 이동하던 것에서 로그인을 요구하도록 변경했습니다.
소스링크 : https://www.inflearn.com/course/%EB%8B%B7%EB%84%B7-%EC%BD%94%EC%96%B4/lecture/35408?tab=curriculum
P.S. 제가 NetCore.Web.V5 프로젝트만 수정해 놓았으니 NetCore.Web.V31 프로젝트와 비교해 보면 둘 간의 차이점을 아실 수 있습니다.
DB Azure 활용 방법 문의 & UI 구성
0
121
1
Email Unique Index 지정 update 오류
0
147
2
03 보고 있는데 VS2022로 뭘 어째야 하는건지 감이 안와요... 인터페이스가 너무 달라요
0
323
1
ADO.NET 엔터티 데이터 모델이 없어요
0
617
1
두번째 강의 의존성주입에서 startup 클래스가 없습니다.
0
701
2
Login 뷰에서 MembershipController연결 방식문의
0
370
1
14일만에 배우는 ASP.NET CORE 질문
1
411
1
안녕하세요 강사님.
0
375
2
안녕하세요.
0
355
1
질문이 있습니다.
0
331
1
AccessFailedCount 추가 시 NULL값 문제
0
424
1
마이그레이션 완료 후 Update DB 에서 에러가 납니다 ㅠ
0
859
2
시작페이지 바꿀수있을까요?
0
254
1
강사님 레이아웃이 없습니다.
0
334
1
.NET 5.0 FromSql 질문
0
322
1
질문있어요 . 마지막에 나오는 파일xml
0
232
2
Add-Migration ~~ 사용시 add-migration : 'add-migration'이라는 용어는 cmdlet, 함수, 스크립트 파일 또는 작동 가능한 프로그램의 이름으로 인식되지 않습니다.
1
1466
3
2019 비주얼스튜디오 쓰고있습니다. 아무리 찾아봐도 c# 기반 mvc가 없습니다.
0
284
1
03. MVC패턴 강의 질문입니다.
0
345
1
세션1 뷰 생성에서 막히고 있습니다..
0
309
1
하위 도메인 쿠키 공유 관련
0
975
2
DbContext를 찾을 수 없습니다.
0
308
1
Model Validation에 관해
0
269
2
Controller에서 프로세스 처리 완료 후 alert 띄우는 방법이 있을까요?
0
1055
1

