데이터 베이스에 저장된 정보를 다수의 사용자가 공유합니다. 정보의 유출이나 불법적인 접근을 방지하기위해 철저한 보안수단이 필요합니다. 보안 대책을 위해서 데이터 베이스 관리자가 있어야 합니다.
권한의 종류와 역할
데이터 베이스 관리자가 가지고 있는 권한
시스템 권한 |
기능 |
CREATE USER |
사용자를 새롭게 생성하는 권한 |
DROP USER |
사용자를 삭제하는 권한 |
DROP ANY TABLE |
임의의 테이블을 삭제할 수 있는 권한 |
QUERY REWRITE |
함수 기반 인덱스를 생성하는 권한 |
BACKUP ANY TABLE |
임의의 테이블을 백업할 수 있는 권한 |
데이터 베이스를 관리하는 권한 (관리자가 사용자에게 부여하는 권한)
시스템 권한 |
기능 |
CREATE SESSION |
데이터베이스에 접속할수 있는권한 |
CREATE TABLE |
사용자 스키마에서 테이블을 생성할수 있는 권한 |
CREATE VIEW |
사용자 스키마에서 뷰를 생성할 수 있는 권한 |
CREATE SEQUENCE |
사용자 스키마에서 시퀸스를 생성할 수 있는 권한 |
CREATE PROCEDURE |
사용자 스키마에서 함수를 생성할수 있는 권한 |
사용자 생성하기
일단 관리자 계정으로 접속한다.
EX) CREATE USER user_id IDENTIFIED BY user_pass;
//접속을 시도해보면 접속할수 없다. 계정만 생성하고 권한을 부여하지 않았다.
GRANT 권한부여
EX) GRANT CREATE SESSION TO user_id;
//접속만 가능할뿐 테이블에 대한 권한을 받지 못했다.
ex) GRANT CREATE TABLE user_id;
//그래도 여전히 생성되지 않는다. 이유는 공간을 활당받지 못했기 때문이다. 그럼 공간을 할당해보자
EX) ALTER USER user_id QUOTA 2M ON USERS;
WITH ADMIN OPTION - 사용자에게 시스템 권한을 부여하면 그사용자는 데이터 베이스 관리자가 아님에도 자신이 부여받은 권한을 다른 사용자에게 부여할수 있는 권한도 함께 부여 받는다.
EX) GRANT CREATE SESSION TO user_id WITH ADMIN OPTION;
객체권한 - 다음은 객체와 권한 설정할 수 있는 명령어를 매핑시켜 놓은 표.
권한 |
TABLE |
VIEW |
SEQUENCE |
PROCEDURE |
ALTER |
V |
|
V |
|
DELETE |
V |
V |
|
|
EXECUTE |
|
|
|
V |
INDEX |
V |
|
|
|
INSERT |
V |
V |
|
|
REFERENCES |
V |
|
|
|
SELECT |
V |
V |
V |
|
UPDATE |
V |
V |
|
|
객체를 만든 사람이 다른 유저에게 권한을 주고 싶다면
EX) GRANT SELECT ON table_name TO user_id;
스키마란 - 객체를 소유한 사용자명 //
객체를 소유하지 않은 자가 다른 사용자의 테이블을 접근할땐 이렇게
ex) SELECT * FROM user_id.emp ;//그사람의 아디뒤에 .을찍고 테이블명 적음.
사용자에게 부여된 권한 조회나 자신에게 부여된 사용자권한을 알고 싶을때.
EX) SELECT * FROM USER_TAB_PRIVS_MADE;//사용자가 부여한 권한을 조회
EX) SELECT * FROM USER_TAB_PRIVS_RECD; //나에게 부여된 권한 조회
사용자에게 권한을 회수해야할때..
REVOKE-사용자에게 권한을 제거함
EX) REVOKE SELECT ON table_name FROM user_id;//테이블이름과 유저 명을 적으면 그테이블에 대한 권한을 회수함.
WITH GRANT OPTION - 사용자에게 객체권한을 WITH GRANT OPTION 과 함께부여하면 사용자는 객체를
EX) GRANT SELECT ON SCOTT.EMP TO USER02 WITH GRANT OPTION;//사용자 객체의 권한을 다음 사용자도 권한을 줄수있게됨.
'Oracle' 카테고리의 다른 글
오라클 동의어 (0) | 2014.11.13 |
---|---|
오라클 롤 권한을 일일이 부여하지 않고 묶음 패키지 관리자가 정의도 가능 (0) | 2014.11.13 |
인덱스 INDEX (0) | 2014.11.13 |
시퀸스 SEQUENCE (0) | 2014.11.13 |
가상 테이블 뷰 (0) | 2014.11.13 |