728x90
SMALL
- 계정생성
CREATE USER test01 IDENTIFIED BY 1234;
- 사용자생성확인
SELECT * FROM DBA_USERS;
- 권한부여
GRANT CONNECT, RESOURCE TO test01;
사용자를 생성하더라도, 기본권한인 CREATE SESSION이 없으면, 접속할 수 없다. CREATE SESSION을 포함한 기본 롤(권한묶음) CONNECT와 RESOURCE를 부여한다.
- 사용자 USER_NEW로 접속
CONN test01/1234;
접속됨.
CONNECT 스크립트 명령으로 생성된 접속이 해제되었습니다.
- 접속해제
CONN sys/oracle AS SYSDBA;
- 커스텀 롤생성
CREATE ROLE manager_role;
- 세션, 테이블만드는 권한부여
GRANT create session, create table TO manager_role;
- 사용자를 생성해서 앞서 생성한 커스텀 롤을 부여함
CREATE USER test01 IDENTIFIED BY 1234;
GRANT manager_role TO test01;
- 접속
CONN test01/1234;
- create table 권한회수하면 create table 불가
REVOKE manager_role FROM test01;-- 매니저롤권한삭제
GRANT create session TO test01;--세션만 다시 부여
CONN test01/1234; --test01로 다시 접속
- 공개동의어 SYNONYM
-- 1. 사용자 계정 생성 및 권한 부여
CREATE USER test01 IDENTIFIED BY 1234;
CREATE USER test02 IDENTIFIED BY 1234;
GRANT CONNECT, RESOURCE TO test01, test02;
-- 2. test02 계정으로 접속해서 abc라는 테이블을 하나 만들었음
SELECT * FROM abc;
CREATE TABLE abc (
id NUMBER PRIMARY KEY
);
-- 3. 공개 동의어를 생성하고 test01에게 부여해줌
DROP PUBLIC SYNONYM abc_public;
CREATE PUBLIC SYNONYM abc_public FOR test02.abc;
GRANT SELECT ON test02.abc TO test01;
- 비공개동의어
GRANT create synonym TO test02;
//비공개동의어 생성하기위한 권한을 test02에 부여
- 사용자로부터 권한부여
--사용자에게 권한 부여
GRANT
CREATE USER,
ALTER USER,
DROP USER
To test01
WITH ADMIN OPTION;
- 권한 회수
REVOKE
DROP USER
FROM test01;
DROP USER만 뺏은거니 ALTER와 CREATE는 남아있음
- test01에서 들어가서해보면 create, alter는 되지만 drop은 안된다
CREATE USER test03 IDENTIFIED BY 1234;
ALTER USER test03 IDENTIFIED BY 4321;
DROP USER test03;
- 다시 권한주기
GRANT
DROP USER
TO test01;
- synonym만들어서 모든사용자에게 셀렉할수있는 권한 준거
CREATE PUBLIC SYNONYM emp FOR emp;
GRANT SELECT ON emp TO PUBLIC;
다른계정에서 select * from emp;하면 되지만 insert는 안됨
728x90
LIST
'DB > Oracle' 카테고리의 다른 글
부적합한 열유형 null 처리방법 (0) | 2021.01.28 |
---|---|
20201030_ 25시퀀스 문제 및 해결 (0) | 2020.10.30 |
20201029_24 (0) | 2020.10.29 |
20201029_24 순위, 누적, 집계, 조인 (0) | 2020.10.29 |
20201028_23 UPDATE, MERGE (0) | 2020.10.28 |
댓글