안녕하세요
안녕하세요 강의를 다 완강하고 프론트가 SSR인 템플릿 엔진으로 구성되어 있던 노드 서버를 리팩토링 중에 있습니다.
궁금한게 있어서 여쭈어 봅니다.
관리자 페이지를 따로 구성하려고 하는데, SPA 에서는 접근 권한을 어떻게 설정하는게 좋은가요?
유저의 role 을 다르게 설정하여 라우팅을 관리하는것 같은데, SPA의 특성상 모든 페이지를 다 받아 오는것이니 충분히 클라이언트에서 state에 있는 role 을조작이 가능할 것 같다는 생각이 드는데, 이 경우 백엔드에서 한번 더 필터링이 필요하다 생각됩니다. 선생님은 어떠한 식으로 실무에서 서버에서 거르시는지 궁급합니다.
연장선에 있는 이야기 같은데, 현재 passport를 이용하여 session을 캐싱하여 사용하고 있습니다. 이 경우 hoc를 이용하여 페이지 라우팅 마다 Axios를 통한 http response 값에서 리덕스 스토어에 dispatch 할 때, body 값인 payload: request 뿐만 아니라 cookie 값도 따로 리덕스 스토어에 저장해서 관리하면 되는 걸까요?
감사합니다!
답변 2
0
안녕하세요 ^^
되게 멋있으시네요 !!
우선 프론트에서 필터링 같은경우는 현재 하고 있듯이 라우팅 제한으로 하시면 되시고,
백엔드에서는 따로 middleware를 만드셔서 필터링이 가능합니다 ^^
현재 여기서는 auth 라는 미들웨어를 만들었잔아요 ?
거기에 하나더 admin이라는 미들웨어를 만들수 있겠네요 !
middleware 폴더 안에
admin.js 라는 파일을 만든후에
이런식으로 role에 따라서 관리해주시면 됩니다.
그래서 이 미들웨어를
이런식으로 적용해주시면 됩니다 !
아 그리고 cookie 는 저장 위치는 개인의 선호에 따라 달리 하셔도 됩니다.
리덕스에 저장하셔도 되고 기본적으로 저장되는 곳에 해서 관리하셔도 됩니다 ~ !
강의 내용은 훌륭하나, 환경 설정 오류 때문에 진도를 나갈 수 없습니다. 20년 버전 강의.
0
60
1
강의자료는 어디서 볼 수있나요??
0
66
1
이 쇼핑몰 만들기 강의는 관리자페이지 만드는건 없나요
0
113
2
웹에서 실시간 코드반영이 안돼요
0
120
1
app.use질문
0
64
1
강사님께 어떻게 직접질문할수있어요??
0
75
1
const함수같은거 기초강의는 어디있나요
0
81
2
리덕스 참조챕터가 어딨어요? 미리듣고오라는데요
0
81
2
강의가완전 오래되서 다 틀리네 app.jsx도 tailwind css 다틀림 무책임함
0
68
1
개발자도구에 redux란이 없어요
0
88
1
npx tailwindcss init -p 에서 계속 에러나요
0
92
1
쇼핑몰기능중 찜하기 기능은 어떻게 구현하나요
0
138
2
강의하다 줌으로 설명가능한지좀 정확히 알려주세요. 이 선생님 정책이 어떻게 되는데요. 직접 연락할 메일이라도 알려주세요
0
43
1
도표 강의 자료 열람 불가능
0
109
1
tailwindcss를 vite에서 이용하는 방식이 바뀐것 같습니다.
0
1130
2
eslint 설정 후 오류가 납니다.
0
221
1
오버로드 오류
0
149
1
VSCode에서 save를 할 때, landingpage의 useEffect가 실행되는 문제에 대하여
0
169
1
dispatch(logoutUser()) 실행시 dispatch(authuser())도 함께 실행되는 문제
0
228
2
logout할 때, server로 요청을 보내서 authUser middleware를 통과하도록 하는 이유?
0
195
1
webkit-text-size-adjust 오류
0
314
1
does not provide an export named 'userReducer'
0
216
2
빌드 배포
0
140
1
삭제 예정 강의는 언제 삭제 되나요? 저것때문에 수강완료를 못하면 회사에서 비용을 청구한다고 합니다~
0
220
2





