fdkoe
167
2019-12-03 11:49:52
7
646

선배님들은 혹시 게시판 관리자 권한을 줄 때 어떤 방식으로 주시나요??


그냥 단순히 특정 아이디(관리자 아이디)로 로그인했을 경우 권한을 주려고하는데(모든 글에대한 CRUD)

이건 좀 가라가 아닌가.. 싶어서요 ㅠㅠ


0
0
  • 댓글 7

  • fdkoe
    167
    2019-12-03 11:50:23

    검색해봐도 이런 방식이 대부분인데 이게 맞는걸까요?? 면접관이 봤을 때 너무 무식해보이진 않을까요??

    0
  • 비지비즈비
    25
    2019-12-03 11:54:51

    특정 아이디를 관리자 아이디로 두고 그 아이디냐 아니냐 판단하기보단

    DB에서 사용자 계정 테이블에 권한 컬럼을 추가하여서 일반 사용자인지 관리 계정인지 구분 값을 넣어주고 CRUD 상황에서 그 값으로 판단하는게 더 낫지 않을까요?

    0
  • fdkoe
    167
    2019-12-03 11:55:27

    @비즈비즈비

    사실 그런 방식도 꽤 보였지만... 제가 아직 미숙한지라 DB쪽은 이해가 잘 안가서요 ㅠㅠ 혹시 제가 위에 말

    한 방법도 이상할 게 없다고 하면 그냥 저대로 하려고 했지만 역시 비지비즈비님 말씀대로 해야겠죠?

    0
  • 비지비즈비
    25
    2019-12-03 12:01:57

    @fdkoe

    더 좋은 방법이 있다면 그걸 쓰면 되겠고 상황마다 if ( ID == 관리자계정) 을 거는 것 보다는 어떤 아이디가 관리자가 될지 일반 사용자가 될지 알 수 없는 법이니까 DB에 구분값을 넣어주고 거기서 판단하는게 좀 더 추후 관리 측면에서 좋을 것 같습니다.


    아이디로 관리하는 경우 : 관리자 아이디가 추가/삭제 될때마다 소스를 수정해야하는 번거로움이 존재

    DB로 관리하는 경우 : 예를 들어 권한 컬럼에 값 A = 관리자, 값 N = 일반 으로 데이터를 넣어뒀다면 소스 상에서는 A 이면 CRUD 모두 가능하게 소스를 짜놓고 필요에 따라 DB의 특정 아이디의 권한 컬럼 값만 바꾸면 되겠지요.

    1
  • onimusha
    7k
    2019-12-03 12:35:40

    유저 * 권한 엔티티 구조로 데이터를 구성하시면 좋습니다.

    0
  • 극한초보
    34
    2019-12-03 13:22:02 작성 2019-12-03 13:22:21 수정됨

    권한을 직접 사용자한테 주면 나중에 손이 많이 갑니다.

    사용자를 중간매개체인 Role 을 생성하여 부여하는 것이 차후에 관리하기 편할껍니다.


    그리고 권한이 단순한 접근 권한이 있을것이고

    워크플로우에 따른 변화에 의한 권한도 있을것입니다.


    변화되는 권한은 매트릭스로 그려서 설계하시면

    좀더 수월하게 적용할수 있을것입니다.


    0
  • fdkoe
    167
    2019-12-03 13:40:42

    다들 감사합니다 !

    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.