아래 "Management Studio에서 스크립트로 사용자 변경 가능한가요?" 에 대한 답변 감사드립니다.
EXECUTE AS... 찾아봤는데요..
제가 하고싶은대로 잘 안돼서 다시 문의드립니다.
특정 테이블(T1)을 User2가 직접 Select 를 못하도록 하려고합니다.
프로시저(usp_1)를 통해서만 T1을 Select 하도록 하고, usp_1에서 로그를 남기려구요..
그래서 생각해본 방법이..
User1을 만들어서 T1을 Select할 수 있는 권한을 주고..
User2는 usp_1을 실행하여 T1을 조회하도록 하면 되지않을까.. .
그러려면 usp_1에서 사용자를 User2 에서 User1으로 변경을 해줘야하구요.
usp_1에 password가 평문으로 들어가도 상관없습니다. User2는 usp_1 내용을 볼 수 없도록 하면 되니까요..
EXECUTE AS ... 는 User2로 로그인했을때 User1이 보이지 않아서 IMPERSNATE 권한을 줄 수가 없습니다.
그렇다고 User2에게 admin 권한을 줄수도 없구요..ㅡ.ㅡ
제가 EXECUTE AS... 사용법을 잘 몰라서 그럴까요? 그렇다면 좀 자세히 설명 부탁드리구요..^^
제가 생각한 방법이 불가능하다면.. 다른 방법이 있는지.. 도움 부탁드립니다.
감사합니다.
EXECUTE AS 에 관한 부분을 사용 안해도 처리 다 될듯 한데요.
요지는 User2 로 로그인한 사용자는 T1 에 대한 셀렉트 권한을 안주면 되는거고요
usp_1 에 대하여 프로시져 실행 권한만 주시면 문제 없이 처리 될듯 합니다.
테이블에 대하여 조회권한이 없더라도 스토드 프로시저의 실행권한이 있다면
테이블에 대한 처리가 가능 합니다.