SQL Server Management Studio를 이용하여 쉽고 빠르게
사용자를 생성하고, 생성된 사용자에게 특정 뷰, 또는 테이블에만
접근이 가능하도록 하는 방법을 알아보도록 하겠습니다.
1. 사용자 생성
관리자 계정으로 보안 -> 로그인 트리에 마우스 우클릭 하여 "새 로그인"을 클릭합니다.
암호만료강제적용을 체크해제한다.
체크한 경우 1개월 지나면 로그인을 하기 위해서는 패스워드 변경이 필요하게되니 주의하시기 바랍니다.
사용자 매핑에서는 필요한 데이터베이스만 지정하여 체크 하고, 기본스키마는 별도로 지정하지
않아도 됩니다. (지정하지 않으면 알아서 나중에 dbo라고 지정됨)
데이터베이스 역할 멤버 자격도 별도 체크 없이 진행합니다.
여기까지 진행을 하게된 경우, 새로 생성된 계정으로 로그인은 가능하지만 어떤 테이블, 뷰에도
접근할 수는 없습니다. (새로 생성된 계정으로 로그인 해보면 압니다.)
2. 사용자 권한 부여
특정 테이블 또는 특정 뷰에만 접근 할 수 있도록 권한을 부여합니다.
사실 이 부분이 가장 햇갈리는 부분이라 저도 매번 햇갈리다보니 이렇게 블로그에 정리하고 있습니다.
저는 뷰에 권한을 부여할 건데, 권한을 부여할 뷰를 선택하고 우클릭하여 속성으로 이동합니다.
사용 권한 -> 사용자 또는 역할 검색 -> 개체 찾아보기 생성한 계정의 사용자를 체크 후
확인, 확인, 후 다시 뷰 속성에서 사용 권한을 체크해줘야 합니다.
권한은 필요한 권한을 선택하시면 되는데,
저같은 경우는 외부에 제공할 뷰이기 때문에 수정이나 삭제가 있으면 안되기 때문에
“선택(select)” “정의 보기” 할수 있는 권한 2가지만 부여합니다.
테이블에도 View에 권한 주는 것과 같은 방식으로 권한을 부여하면 됩니다.
마지막으로 새로 생성된 계정으로 DB에 로그인 하여, 권한을 부여한 뷰와 테이블만 조회되는 것을
확인하면 끝납니다. 참 쉽죠?
댓글