• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Next.js 게시판 안녕하세요 선생님 OAuth 소셜관해서 질문드립니다

안녕하세요 선생님 OAuth 소셜관해서 질문드립니다

3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 글쓴이
  • #99549

    김규헌
    참가자
    먼저 즐거운 추석 연휴 되시길 바랍니다 :)!
    
    credential 일 경우에는 직접 DB에 넣을때 
    role : 'norm'을 따로 넣어줘서 잘 저장을 했습니다.
    
    Github 소셜 로그인일땐 
    구글에서 검색해서 events라는 것도 써보았는데.. 
    users 컬렉션에는 role이 따로 저장이 안되더라구요 ㅠ..
    
    그래서.. 콜백함수에
    jwt: async ({ token, user }) => {
          if (user) {
            token.user = {};
            token.user.name = user.name;
            token.user.email = user.email;
            if (!user.role) {
              token.user.role = 'norm';
            } else {
              token.user.role = user.role;
            }
          }
          return token;
        },
    이런식으로 해서 해결은 했는데.. 좋은 방법은 아닌거 같아서요
    소셜회원에 role을 추가하려면 다른 방법이 있을까요..?
    
    
    ++ 추가질문 입니다
    커스텀 로그인 페이지로 구현한다 했을때,
    소셜 로그인 같은 경우에는
    social
    CSR에 이런식으로 signIn 안에다가 해당 소셜 로그인 이름을 넣어주면 되는부분일까요??
    #99554

    codingapple
    키 마스터
    https://authjs.dev/guides/basics/role-based-access-control#persisting-the-role
    profile 함수 집어넣으면 그 안에서 role 설정가능하다는거같은데 
    내 이메일이 아닌 경우 role을 일반으로 설정합시다 
    
    signIn()에 provider이름 채우는건 맞는데 google이 맞는 이름인지는 모르겠군요
    #99569

    김규헌
    참가자
    123
    오... 답변 주셔서 감사합니다!
    말씀하신대로 profile함수 넣어서 설정하니 잘 됩니다!!
    충성 충성 ^^7
    
3 글 보임 - 1 에서 3 까지 (총 3 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠