inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ASP.NET Core MVC +ASP.NET Core +REST API +.NET 8.0

로그인에서 받아온 Session을 활용하고 자 할 때

해결된 질문

312

wltn07551

작성한 질문수 4

0

안녕하세요 선생님

자주... 문의드려 죄송합니다.

  1. 로그인에서 가져온 Session 값을 활용하는 방법

  2. DAL 부분의 활용 여부

  1. 로그인에서 가져온 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를 거치면 안 될까요...?

 

  1. DAL 부분의 활용 여부

SP_ 형식을 차용하는데 DAL.Mapper와 DAL.Model 추가적인 사용은 필요가 없을 것 같습니다...?

DB와 소통하는 부분으로만 남겨도 될까요?

 

C# mvc rest-api 아키텍처 mssql ef-core asp.net-core

답변 1

1

개발자Park

안녕하세요.개발자park입니다.

1.만들기 나름입니다.

DB에서 권한조회후 if문으로 분기시키거나 또는 회원정보에 권한을 담아 Session에 저장 할 수도 있겠습니다.

 

정석으로 하는 방법은 아래에 해당합니다.

키워드는 authorization claim입니다.

https://www.google.com/search?q=authentication+claim&oq=authentication+claim&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIJCAEQABgTGIAEMggIAhAAGBMYHjIICAMQABgTGB4yCggEEAAYDxgTGB4yCggFEAAYBRgTGB4yCggGEAAYBRgTGB4yCggHEAAYBRgTGB4yCggIEAAYBRgTGB4yCggJEAAYBRgTGB7SAQg3Njc5ajBqN6gCALACAA&sourceid=chrome&ie=UTF-8

 

https://learn.microsoft.com/en-us/aspnet/core/security/authorization/claims?view=aspnetcore-8.0

해당 내용은 asp.netcore강의가 아니지만 2주안으로 신규강의로 출시될 예정입니다.

2.넵.

감사합니다.

0

wltn07551

설명 감사합니다!!

강의 나오면 꼭 수강하겠습니다!

20) 16. 저장프로시저 쪽 new MapperConfiguration(cfg => { })

1

56

1

using (SqlConnection ~)을 하는 이유가 뭔가요?

0

115

2

이후 예정된 강의 문의를 드립니다

0

68

1

12_3강 AutoMapper 설명 중에 MapperConfiguration

2

87

1

Business Layer 종속성 추가 불가 문제

0

106

3

Console.WriteLine

0

62

1

iis 배포 후 view페이지 수정

0

132

2

8장 Controller 질문

0

80

2

DTO 여러개 대신 하나로

0

174

2

CS0618 SqlConnection

0

262

1

EF로 만든 프로젝트를 개발서버에 올리니, 처음 로딩속도가 많이 느리네요.

0

184

2

SqlConnection관련 질문

0

124

2

12강 듣던중...Controller.cs 질문입니다.

0

128

1

ASP.NET Core MVC를 비동기로 처리하는 이유가 무엇일까요?

0

221

1

프로젝트 배포 질문있습니다

0

147

2

MSSQL 설치 시 오류 발생

0

632

2

클래스 라이브러리 추가시

0

239

1

DB에서 조회된 다건의 데이터를 처리할 때

0

209

1

cshtml.css, cshtml.cs 비하인드 코드 추가 방법

0

416

1

Request.Query는 배열로는 받을 수 없나요?

0

369

2

Single View Engine은 뭘까요?

0

195

1

Results API가 뭔가요?

0

231

1

QueryString 대소문자 구분

0

455

1

화면 단이 아닌 서비스 단에서 파라미터 추가

0

231

1