inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ASP.NET Core MVC 기본편[ASP.NET Core Identity8]

5)ASP.NET Core Identity에 ROLE 추가

로그인 시 왜 계속 조회된 아이디가 없을까요ㅠ

85

JU Heo

작성한 질문수 2

0

강의 쭉 따라하면서 Privacy 권한 별 접근 해보고 있습니다.

 

틀린 부분이 없고 ,

DB에 계정도 잘 들어가있는데

사이트에서 로그인만 하면

OnPostAsync 함수에서 아이디 조회 쿼리 결과 받는 var result 부분에서

 

계속 Succeeded가 안뜨네요 ㅠㅠㅠㅠ

 

 

.net ef-core asp.net-core authentication aspnet-identity

답변 2

1

개발자Park

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

5강 23:04~23:14초 까지의 내용을 반영하셨는지 확인해주세요.

감사합니다.

0

JU Heo

답변 감사합니다!

말씀해주신 인증 속성은 false로 해두었습니다.

 

image.png

 

아래와 같은 값으로 다시 아이디를 생성해봤습니다.

image.png

 

SQL 개체 탐색기로 삽입 완료 확인했습니다. 작아서 잘 안보이실 것 같은데 이미지 넣어둘게요!

image.png

 

아래는 로그인 시 넘어온 파라미터 값들이고요.

image.png

 

var result 부분에서 계속 false가 나오네요ㅠ

 

조회 함수 처리 시에 발생하는 쿼리가 콘솔에 찍히는 쿼리를 쿼리창에서 직접 실행해보니 조회는 됩니다.

image.png

 

결과 :

image.png

 

슨생님 도움말씀 부탁드립니다 :)

 

만약 이 부분이 정상이라고 말씀해주시면,

1강부터 놓친것 없는지 다시 해보려고 합니다!

감사합니다

 

0

JU Heo

이어서 확인해보았습니다---------

음..
SeedData에서 생성된 아이디로 일반 로그인 처리도 안되어서

Register 통해서 가입해 보았습니다.

 

로그인은 되고 privacy페이지 접근하니, 권한 비허가 떴습니다.

DB 보니까 user role만 있었고,

DB에서 admin role도 추가하니

privacy 페이지로 접근이 가능했습니다.

 

SeedData에서 추가

Register 페이지에서 추가

DB에 삽입된 것의 차이 2가지입니다.

 

1.NormalizedUserName 컬럼값이

SeedData에서는 스트링으로 지정한 값으로 들어감 'Tester'

 

Register에서는 이메일 주소로 들어감.

'Test@email.com'

 

  1. Age 속성 여부..(이건 Nullable이라 상관없을듯 합니다.)
    SeedData에서 삽입된 것은 Age가 Null,
    Register 페이지에서 가입한건 입력한 Age 값 입니다.

    이런 차이가 있네요.
    강의에서 놓친 부분이 없는지 다시 확인해보겠습니다.

 

 

 

 

1

JU Heo

UserName과 Email이 동일해야 하네요..?

아래 SeedData.cs에서 UserName과 Email을 동일한 값, 다른 값으로 하였더니

동일한 값일 때만 로그인이 가능하네요.

image.png

 

DB에는 둘 다 정상으로 insert 되었는데 말이죠

image.png

 


(*찾았습니다)

Identity에서 제공되는 select 시 Where에서 Name의 동일 조건을 따지네요.

 

image.png

 

이 함수보니까 첫번째 파라미터가 Email이 아니고 userName이어서 그랬었네요.

1

개발자Park

해결되셨다니 다행입니다.

말씀하신대로 userName도 Email과 동일하게 변경해주시면 됩니다.

감사합니다.

0

JU Heo

마지막으로 질문이 있습니다.

 

5강 12:22초에 ApplicationUser의 속성

Email과 UserName 입력 시 "그냥" 복붙해서 사용하셨습니다.

 

통상 Email과 UserName은 다르게 입력들어올텐데,

 

기본 제공 함수에서 파라미터가 UserName이고,기본 제공 Select 쿼리에서 Where절이 UserName 동일 여부를 비교하기에 그렇게 하신걸까요?

1

개발자Park

안녕하세요.개발자park입니다.
기본 제공 함수에서 파라미터가 UserName이고,기본 제공 Select 쿼리에서 Where절이 UserName 동일 여부를 비교하기에 그렇게 하신걸까요?
네 맞습니다.

자동 생성되는 로그인,회원가입 페이지도 Email로 Id를 입력받도록 구성되어있습니다.

image.png


그렇기에 인자로 UserName대신, 사용자가 입력한 Email을 사용하였습니다.
Id,NickName등의 추가 Column을 두어서 사용하실 수도 있겠습니다.

예제 사이트로 VFUN을 참고하시면 도움이 되실 겁니다.
https://vfun.valofe.com/membership/signup
감사합니다.

ERP/MES 데스크톱 시스템 개발 시 WinForms vs WPF 선택 문의

0

80

3

LoadingControl 관련 질문입니다.

0

43

2

UI있는 Designer 오류 발생 질문입니다.

0

70

2

CancelationTokenSource 질문이있습니다.

0

51

2

비동기 2강 UI가 없는 환경 질문입니다.

0

65

1

6번 강좌 Program.cs 추가 필요

0

44

1

16_Collection 에서 Stack_ 후입선출에 질문입니다.

0

59

2

UGS 라이센스 및 요금제 관련

0

57

1

코드 공유

0

80

1

강의 커리큘럼 질문 드립니다

0

60

1

prisma 버전 변경

0

125

2

꼭 vs2022 로 다운받아야 하나요?

1

114

2

수업질문은 아닌데요^^

0

114

1

WinForm .NetFramework 버전 프로젝트의 패키지 설정 질문

0

73

2

WPF xaml 편집 시 투명 배경으로 보는 방법

0

71

1

공부 문의드립니다,,

0

77

2

자동 생성된 ViewModels.Pages에서 디버깅이 되지 않습니다.

0

47

1

WPF-UI프로젝트에서 dll 참조하는 방법

0

87

1

똑같이 따라서 ^1 했는데 에러가 떠요.

0

68

1

영상 구문 그대로 따라했는데 에러가 나요.

0

56

1

추가 강의 요청?

0

65

1

게시글 답변 관련 Group Order가 계속 0이 삽입되네요 ㅠ

0

84

2

개발자 파크형 궁금해~~

0

74

1

SendEmailAsync 클래스에서 빌드 에러가 발생합니다!

0

152

2