데이터베이스

권한 부여(GRANT, REVOKE, WITH GRANT OPTION)

스윙스윙 2021. 9. 10. 18:42

▣ 권한 부여(WITH GRANT OPTION)

 

GRANT 권한 ON 데이터 객체 TO 사용자 [WITH GRANT OPTION];


REVOKE 권한 [GRANT OPTION FOR] ON 데이터 객체 FROM 사용자 [CASCADE , RESTRICT] ;


※ 권한 : {SELECT | INSERT | UPDATE | DELETE | ALL}

 


2017년 69번

정답 : 2번, 3번

3) U2: GRANT INSERT ON EMPLOYEE TO U4; 

  U2 는 U1으로부터 WITH GRANT OPTION 을 받지 못했으므로 권한 부여는 불가능함

5) U5: GRANT SELECT ON EMPLOYEE TO U6;

  U5 는 U3 으로부터 WITH GRANT OPTION 을 받지 못했으므로 권한 부여는 불가능함

9) U5: SELECT * FROM EMPLOYEE;
  U5 는 4) 라인에서 U3 으로부터 조회 SELECT) 권한을 부여 받았으나 7) 라인에서 U3 의 권한이 회수 

  됐으므로 U5 의 권한도 회수 될 수 있음.

  Revoke 수행 시 Restrict, Cascade 가 정확히 명시되지 않았으므로 오류가 발생할 수도, 정상 수행될 수도 있음

  복수정답 인정 사유
10) U6: UPDATE EMPLOYEE SET Salary = Salary * 1.1;
  U6 은 5), 6) 라인에서 조회(SELECT) 권한만 부여 받았으므로 갱신은 불가능


GRANT 권한 ON 데이터 객체 TO 사용자 [WITH GRANT OPTION];
REVOKE 권한 [GRANT OPTION FOR] ON 데이터 객체 FROM 사용자 [CASCADE , RESTRICT] ;


2020년 71번

정답 : 2번

REVOKE 권한 [GRANT OPTION FOR] ON 데이터 객체 FROM 사용자 [CASCADE , RESTRICT] ;

 


2012년 73번

정답 : 3번

릴레이션에 대한 조작 권한 중 CHECK는 존재하지 않으므로 GRANT구문으로 권한을 부여할 수 없음

 


2013년 63번

정답 : 2번, 3번

최종 부여된 권한은

Kim은 DELETE WITH GRANT OPTION, SELECT

Park은 SELECT

실행가능한 SQL문은 1) Kim의 SELECT와 4) Park의 SELECT임

2)번, 3)번은 실행 불가한 SQL임