Oracle 에서는 Role-based 로 관리한다고 한다.
1. ROLE 생성
2. ROLE 권한부여
3. 해당 ROLE 사용자 CONNECT
C:\Windows\System32>sqlplus hr
SQL> conn sys /as sysdba
암호 입력:
연결되었습니다.
SQL> show user;
USER은 "SYS"입니다
SQL> create user tester1 identified by tester1;
사용자가 생성되었습니다.
select * from user_users;
USERNAME USER_ID ACCOUNT_STATUS
------------------------------ ---------- --------------------------------
LOCK_DAT EXPIRY_D DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
-------- -------- ------------------------------ ------------------------------
CREATED INITIAL_RSRC_CONSUMER_GROUP
-------- ------------------------------
EXTERNAL_NAME
--------------------------------------------------------------------------------
SYS 0 OPEN
SYSTEM TEMP
07/04/17 SYS_GROUP
teset2 user 생성
사용자 패스워드 변경, 사용자 계정 잠금(lock), 사용자 권한부여 및 취소
create user tester2 identified by tester2
default tablespace SYSTEM temporary tablespace TEMP;
사용자가 생성되었습니다.
// 조건 default tablespace SYSTEM temporary
alter user
tester1 identified by rootoor;
사용자가 변경되었습니다.
// 사용자 패스워드 변경
alter user tester1 account unlock;
alter user tester1 account lock;
// 사용자 계정을 잠그거나, 풀어주거나.
grant connect, resource, dba to tester1;
// tester1 table에 connect, resource, dba권한 부여(grant 주다)
revoke dba from tester1;
// tester1 table의 dba 권한 취소
Role // 사용자 권한 조절, 사용자 생성 및 삭제
create ROLE user_create;
// 롤 생성
grant create user, alter user to user_create;
// user_create role에 create user, alter user 의 권한 부여
grant user_create to scott, hr;
// scott, hr 사용자에게 user_create 권한 부여
conn oe
// oe 사용자 로그인
create user tester4 identified by tester4;
1행에 오류:
ORA-01031: 권한이 불충분합니다
// scott, hr 사용자에게만 user_create 권한을 주었기 때문에, 현재 oe 사용자는 user 생성 불가
conn scott
// scott 사용자 로그인
create user tester4 identified by tester4;
사용자가 생성되었습니다.
// role base 를 scott 사용자에 권한을 부여하였기에 scott 사용자는 생성 가능
conn sys
// sys 관리자 로그인
drop role user_create;
// sys 최상위 관리자로 로그인하여 role 삭제
create user mary identified by mary;
// 사용자 생성
grant connect, resource to mary with admin option;
// 권한 부여, connect, resource를 관리자 급(with admin option)으로
conn mary/mary
// mary 사용자 로그인
grant connect, resource to tester1;
// tester1에 권한부여
// mary 사용자는 connect, resource를 관리자가 다른 사용자에게 부여하듯, 다른 사용자에게 부여할 수 있다.
grant select, insert, delete, update on hr.employees to tester2;
// tester2 에 권한부여
// hr 사용자의 employees table 작업할 수 있는 select, insert, delete, update 명령어 사용 권한을 부여
*** oracle 권한 정리 *** (google에 검색하면 잘 나옴)
https://pridiot.tistory.com/128
MERGE 머지 (0) | 2022.06.13 |
---|---|
SYNONYM 동의어 (0) | 2022.06.13 |
INDEX 인덱스 (0) | 2022.06.13 |
View 가상테이블 (0) | 2022.06.12 |
Transaction, lock, Rollback, View, Compile (0) | 2022.06.09 |