해결된 질문
24.05.28 19:51 작성
·
160
0
안녕하세요 선생님
자주... 문의드려 죄송합니다.
로그인에서 가져온 Session 값을 활용하는 방법
DAL 부분의 활용 여부
로그인에서 가져온 Session 값을 활용하는 방법
public async Task<IActionResult> GetUser(GetUserDTO getUserDTO)
{
if (ModelState.IsValid)
{
}
else
{
return Redirect("/login/SearchUserId");
}
GetUserResponseDTO dto = await loginService.GetUser(getUserDTO);
HttpContext.Session.Set("LoginUser", dto);
return Redirect("/home/index");
}
"LoginUser"으로 세션값을 사용하는 것은 이해했습니다.
controller
public async Task<IActionResult> GetUserList ()
{
if (ModelState.IsValid)
{
}
else
{
return Redirect("/home/UserList");
}
GetUserResponseDTO ? user =
HttpContext.Session.Get<GetUserResponseDTO>("LoginUser");
GetUserListResponseDTO dto = await UserListService.GetUserList();
return Redirect("/home/index");
}
service
public async Task<GetUserListResponseDTO> GetUserList(GetUserListDTO getUserListDTO)
{
var configuration = new MapperConfiguration(cfg => { });
Mapper mapper = new Mapper(configuration);
Dictionary<string, object> dc = mapper.Map<GetUserListDTO,
Dictionary<string, object>>(getUserListDTO);
ProcCall procCall = new ProcCall();
DataTable dt = await procCall.RequestProcedure("SP_UserList", dc);
GetUserListResponseDTO dto = new GetUserListResponseDTO();
return dto;
}
구현하고자 하는 내용.
로그인 해서 나온 데이터를 활용하여 조회 화면을 구성하고자 함
A 등급을 가진 사람한테 -> A-1 화면만 조회하도록 구현하고자 합니다.
Session 값을 가져와서 구현하고자 했는데.. 그럼 DTO를 거치면 안 될까요...?
DAL 부분의 활용 여부
SP_ 형식을 차용하는데 DAL.Mapper와 DAL.Model 추가적인 사용은 필요가 없을 것 같습니다...?
DB와 소통하는 부분으로만 남겨도 될까요?
답변 1
1
2024. 05. 28. 21:30
안녕하세요.개발자park입니다.
1.만들기 나름입니다.
DB에서 권한조회후 if문으로 분기시키거나 또는 회원정보에 권한을 담아 Session에 저장 할 수도 있겠습니다.
정석으로 하는 방법은 아래에 해당합니다.
키워드는 authorization claim입니다.
https://learn.microsoft.com/en-us/aspnet/core/security/authorization/claims?view=aspnetcore-8.0
해당 내용은 asp.netcore강의가 아니지만 2주안으로 신규강의로 출시될 예정입니다.
2.넵.
감사합니다.
2024. 05. 29. 08:37
설명 감사합니다!!
강의 나오면 꼭 수강하겠습니다!