2017-11-21 9 views
0

달성하고자하는 것 : 목록의 소유자와 추가 된 멤버를 저장하는 모델이 있습니다. . 소유자와 멤버는 객체로 나타냅니다. 각 멤버 개체에는 사용 권한 필드가 있습니다. 멤버가 목록에 추가 될 때 SUGGEST로 표시되는 기본 사용 권한이 있습니다. 목록 소유자는 나중에 회원의 권한을 변경할 수 있습니다.서버 쪽 컨트롤러에서 클라이언트 측 JavaScript로 변수 전달 클라이언트 측 JavaScript에서 사용하기 위해

경로를 통해 목록 페이지에 액세스 할 때 사용자의 권한을 전달하려고합니다.

내가 뭘 알아낼 수 없습니다 : 나는 사용자가 특정 목록에서 수행 할 수있는 작업을 제한 할 권한을 사용하게되므로 내가, 내 클라이언트 측 자바 스크립트의 사용 권한에 액세스 할 수 있어야 그들이 자신의 또는 회원입니다. 내 클라이언트 측 JavaScript에서는 목록을 변경하는 함수를 실행하기 전에 검사 대상 사용자 권한 변수를 설정하려고합니다.

사용자 권한을 어떻게 처리 하시겠습니까?

답변

1

사용자가 제한을 극복하기 위해 수행해야하는 유일한 작업은 렌더링 된 javascript 파일을 편집하는 것이므로 클라이언트 측 JavaScript를 사용하여 사용자의 액세스를 제한하면 안됩니다.

사용자에게 허용 된 옵션 만 렌더링하려면 Pug와 같은 템플릿 라이브러리를 사용해야하며 그 후에도 제한된 컨트롤러에 대한 백 엔드 검사를 수행해야합니다.

예 :. 사용자가 로그인 한 경우에만 프로필 링크를 렌더링

// app.js 
... 
Router.get('/', (req, res, next) => { 
    res.render('indexPage', {loggedIn: true}); 
}); 

// indexPage.pug 
html 
    head 
    //- ... head stuff 
    nav 
     if(loggedIn) 
     a.nav-item(href='/profile') Profile 
     else 
     a.nav-item(href='/signin') Sign In 
+0

나는 흙을 사용하고 그리고 난 당신이 보안 문제를 위로 가져 기뻐요. 나는 당신이 시연했던 것과 거의 같은 방법으로 pug를 사용하고 있습니다. 그러나 실제로 당신이 말한 것을 읽고 나에게 필요한 답을주었습니다. 나는 서버 쪽에서 권한을 처리 할 것이다. 그래서 분명하지만 감사합니다! –