object privilege 관련 질문 드립니다(column) 0 2 1,124

by 백곰탱이 [Oracle Admin] [2017.10.15 00:24:25]


object privilege 할당 관련 질문 드립니다..

SCOTT 계정으로 emp 테이블을 hr 계정으로 조회 할수 있도록 할당은 잘됩니다.

SCOTT>grant select on emp to hr;

Grant succeeded.

그러면 특정 Column 만 Privilege를 설정할려는데 잘 안되서 문의 드립니다.

Scott 계정으로 emp 테이블에  ename  컬럼을 insert/update 를 할 수 있도록 할당이 잘되는데 Select만 오류나 나는 이유가 무엇일까요?

SCOTT>grant insert(ename) on emp to hr;

Grant succeeded.

SCOTT>grant update(ENAME) on emp to hr;

Grant succeeded.

SCOTT>grant select(ENAME) on emp to hr;
grant select(ename) on emp to hr
            *
ERROR at line 1:
ORA-00969: missing ON keyword

 

조회시 insert/update는 할당이 잘되었는데 Select 문만 잘 안됩니다..

HR> select * from user_col_privs

GRANTEE    OWNER      TABLE COLUMN_NAM GRANTOR    PRIVILEGE                                GRA
----------  ---------- ----- ---------- ---------- ---------------------------------------- ---
HR           SCOTT        EMP     ENAME          SCOTT         INSERT                                   NO
HR           SCOTT        EMP     ENAME          SCOTT         UPDATE                                   NO

 

 

 

 

by 그로밋 [2017.10.15 03:17:25]

Oracle document says "You can specify columns only when granting the INSERT, REFERENCES, or UPDATE privilege.".

따라서, SELECT에 대해서는, 컬럼만 따로 privilege를 줄수 없읍니다. 

뷰를 만들어 (create view ... with read only) 특정 컬럼만 select를 허용하는 방법이 있읍니다.


by 백곰탱이 [2017.10.15 11:12:12]

네 감사합니다 많은 도움 되었습니다

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입