7. 사용자 및 권한관리
가. 사용자(User) 생성
관리자는 여러 시스템 권한을 사용하여 Oracle Server의 새로운 사용자를 생성및 CREATE USER 명령을 실행하여 사용자를 생성합니다.
CREATE USER 사용자 IDENTIFIED BY 암호
[ DEFAULT TABLESPACE 테이블스페이스명]
[ TEMPORARY TABLESPACE 테이블스페이스명];
SQL> create user kt530
2 identified by k777;
사용자가 생성되었습니다.
사용자(User) 비밀번호 변경
ALTER USER 사용자 IDENTIFIED BY 암호;
SQL> alter user kt530
2 identified by k777;
사용자가 변경되었습니다.
사용자(User) 삭제
DROP USER 사용자;
SQL> drop user kt530;
사용자가 삭제되었습니다.
나. 시스템 권한
관리자가 사용자를 생성하면 생성된 사용자가 사용할 수 있는 권한을 지정하며 시스템 권한의 예는 다음과 같습니다.
·CREATE USER : 다른 Oracle 사용자를 생성할 수 있는 권한.
·DROP USER : 다른 사용자를 삭제할 수 있는 권한.
·DROP ANY TABLE : 어떤 테이블이라도 삭제 가능한 권한.
·CREATE SESSION : 데이터베이스에 접속할 수 있는 권한.
·CREATE TABLE : 사용자가 테이블를 생성.
·CREATE SEQUENCE : Sequence를 생성할 수 있는 권한.
·CREATE VIEW : View를 생성할 수 있는 권한.
·CREATE PROCEDURE : 사용자가 Stored Procedure, 또는 패키지를 생성할 수 권한.
(1) 시스템 권한 허가
관리자는 사용자에게 시스템 권한을 할당하기 위해 GRANT 명령을 이용합니다.
GRANT 권한 [, 권한...] TO 사용자 [, 사용자....];
다. Role이란 ?
Role은 사용자에게 허가할 수 있는 관련된 권한들의 그룹입니다. 이러한 role을 이용하면 권한부여와 회수를 쉽게 할 수 있습니다.
SQL>CREATE ROLE manager;
Role created.
SQL>grant create table,create view to manager;
Grant succeeded.
SQL>grant manager to edu01,edu02;
Grant succeeded.
라. 객체 권한 부여
·소유자는 객체에 대한 모든 권한을 갖고 있습니다..
·소유자는 소유한 객체에 대해 특정 권한을 다른 사용자에게 줄 수있습니다.
GRANT {객체권한(, 객체권한....)|ALL} [(Column)]
ON 객체
TO {사용자[, 사용자....]| Role| PUBLIC}
[WITH GRANT OPTION];
※객체권한 : 허가된는 객체권한
ALL : 모든 객체 권한
Column : 권한이 허가된 테이블이나 뷰의 column
ON : 객체는 권한이 허가된 객체,
TO : 는 권한을 허가받을 사용자,
PUBLIC 사용시 모든 사용자에게 객체 권한을 허가함.
SQL> grant select, insert
2 on circle
3 to scott
4 with grant option;
권한이 부여되었습니다.
마. 객체에 대한 권한 회수
REVOKE {권한 (, 권한...)|ALL}
ON 객체
FROM {사용자[, 사용자....]|role |PUBLIC}
SQL> revoke select, insert
2 on circle
3 from scott;
권한이 취소되었습니다.
|