DB/Tibero

[Tibero] SQL>사용자 생성, 권한 부여(시스템, 스키마)

2023. 6. 22. 10:53
목차
  1. 사용자 조회
  2. 사용자 생성 | 삭제
  3. 특권 (스키마) 부여
  4. 특권 (시스템) 부여
  5. 특권 회수
  6. 특권 조회 변수명
반응형

사용자 조회

select * from ALL_USERS;

사용자 생성 | 삭제

SQL> CREATE USER alexpark                  ... ① ...
            IDENTIFIED BY park1234         ... ② ...
            DEFAULT TABLESPACE USR;        ... ③ ...
////////////////////////////////////////////////////
SQL> DROP USER alexpark CASCADE;           ... ④ ...

① CREATE USER 문을 사용하여 alexaprk라는 사용자를 생성한다.

② 사용자 Steve의 패스워드를 park1234로 설정한다. CREATE USER 문을 사용할 때에는 반드시 패스워드를 설정해야 한다.

③ 디폴트 테이블스페이스를 USR로 설정한다.

④ 제거된 사용자의 스키마 객체를 참조하는 뷰나 동의어, 프러시저, 함수는 모두 INVALID 상태가 된다. 나중에 동일한 이름의 다른 사용자가 만들어지면 새로운 사용자는 그 이름을 가졌던 이전 사용자로부터 아무것도 상속받지 못한다.


특권 (스키마) 부여

GRANT SELECT , UPDATE ON EMPLOYEE TO alexpark; ... ① ...
GRANT SELECT , UPDATE (EMP_NAME , EMP_ADRESS) ON EMPLOYEE TO alexpark; ... ② ...
GRANT SELECT ON EMPLOYEE TO alexpark WITH GRANT OPTION; ... ③ ...

① select, update를 alexpark유저가 사용 가능하다.

② 유저 alexpark 에게 EMPLOYEE테이블에 select 명령어가 사용 가능하게 한다, 이때 칼럼EMP_NAME, EMP_ADRESS에 한하여 update가 허용된다

③ select 를 alexpark이 다른 유저에게 grant 가능하다.

스키마 객체 특권은 스키마 객체인 테이블, 뷰, 시퀀스, 동의어 등에 접근하는 것을 제어하는 권한.

스키마 객체 특권은 GRANT 명령을 사용해 다른 사용자에게 부여할 수 있으며, 그 내용은 데이터 사전에 기록된다.

스키마 객체 특권은 다음과 같다.

스키마 객체 특권 설명

SELECT 테이블을 조회하는 권한이다.
INSERT 테이블에 로우를 삽입하는 권한이다.
UPDATE 테이블에 로우를 갱신하는 권한이다.
DELETE 테이블에 로우를 삭제하는 권한이다.
ALTER 스키마 객체의 특성을 변경하는 권한이다.
INDEX 테이블에 인덱스를 생성하는 권한이다.
REFERENCES 테이블을 참조하는 제약조건을 생성하는 권한이다.
TRUNCATE 테이블에 TRUNCATE를 수행할 수 있는 권한이다.
이 권한을 사용하려면 USE_TRUNCATE_PRIVILEGE 파라미터를 'Y'로 설정해야 한다.  

특권 (시스템) 부여

GRANT SELECT ANY TABLE TO Alex;                     ... ① ...
GRANT SELECT ANY TABLE TO Susan WITH ADMIN OPTION;  ... ② ...
REVOKE SELECT ANY TABLE FROM Susan;                 ... ③ ...

① ‘임의의 스키마에 속한 테이블을 조회하는 권한’을 Alex에게 부여한다

② ‘임의의 스키마에 속한 테이블을 조회하는 권한’을 Susan이 다른 유저에게 부여 가능하다

③ Susan에게 조회권한을 박탈한다 시스템 특권은 상위 유저의 권한을 박탈한다고, 해당 유저에게 권한을 부여받은 유저의 권한이 일괄적으로 박탈당하지 않기에 개별적으로 처리해야한다.

시스템 특권 설명

ALTER SYSTEM ALTER SYSTEM 문을 실행할 수 있는 권한이다.
CREATE SESSION 데이터베이스에 세션을 생성할 수 있는 권한이다. 즉, 로그인이 가능하다는 것을 의미한다.
CREATE USER 사용자를 생성하는 권한이다.
ALTER USER 사용자의 정보를 변경하는 권한이다.
DROP USER 사용자를 제거하는 권한이다.
CREATE TABLESPACE 테이블스페이스를 생성하는 권한이다.
ALTER TABLESPACE 테이블스페이스를 변경하는 권한이다.
DROP TABLESPACE 테이블스페이스를 제거하는 권한이다.
SELECT ANY DICTIONARY DICTIONARY를 조회할 수 있는 권한이다. 이 권한을 할당 받으면 SYS, SYSCAT, SYSGIS 소유의 객체들을 조회할 수 있다.
CREATE TABLE 자신의 스키마에 테이블을 생성하는 권한이다.
CREATE ANY TABLE 임의의 스키마에 테이블을 생성하는 권한이다.
ALTER ANY TABLE 임의의 스키마에 속한 테이블을 변경하는 권한이다.
DROP ANY TABLE 임의의 스키마에 속한 테이블을 제거하는 권한이다.
COMMENT ANY TABLE 임의의 스키마에 속한 테이블에 주석을 추가하는 권한이다.
SELECT ANY TABLE 임의의 스키마에 속한 테이블을 조회하는 권한이다.
INSERT ANY TABLE 임의의 스키마에 속한 테이블에 로우를 삽입하는 권한이다.
UPDATE ANY TABLE 임의의 스키마에 속한 테이블에 로우를 갱신하는 권한이다.
DELETE ANY TABLE 임의의 스키마에 속한 테이블에 로우를 제거하는 권한이다.
TRUNCATE ANY TABLE 임의의 스키마에 속한 테이블에 TRUNCATE를 수행 할 수 있다. 이 권한을 사용하기 위해서는 USE_TRUNCATE_PRIVILEGE 파라미터를 'Y'로 설정해야 한다.
CREATE ANY INDEX 임의의 스키마에 속한 테이블에 인덱스를 생성하는 권한이다.
ALTER ANY INDEX 임의의 스키마에 속한 테이블에 인덱스를 수정하는 권한이다.
DROP ANY INDEX 임의의 스키마에 속한 테이블에 인덱스를 제거하는 권한이다.
CREATE SYNONYM 자신의 스키마에 동의어를 생성하는 권한이다.
CREATE ANY SYNONYM 임의의 스키마에 동의어를 생성하는 권한이다.
DROP ANY SYNONYM 임의의 스키마에 속한 동의어를 제거하는 권한이다.
SYSDBA SHUTDOWN, ALTER DATABASE, CREATE DATABASE, ARCHIVELOG, RECOVERY 문을 실행할 수 있는 권한이다.
CREATE PUBLIC SYNONYM PUBLIC 스키마에 동의어를 생성하는 권한이다.
DROP PUBLIC SYNONYM PUBLIC 스키마에 속한 동의어를 제거하는 권한이다.
CREATE VIEW 자신의 스키마에 뷰를 생성하는 권한이다.
CREATE ANY VIEW 임의의 스키마에 뷰를 생성하는 권한이다.
DROP ANY VIEW 임의의 스키마에 속한 뷰를 제거하는 권한이다.
CREATE SEQUENCE 자신의 스키마에 시퀀스를 생성하는 권한이다.
CREATE ANY SEQUENCE 임의의 스키마에 시퀀스를 생성하는 권한이다.
ALTER ANY SEQUENCE 임의의 스키마에 속한 시퀀스를 변경하는 권한이다.
DROP ANY SEQUENCE 임의의 스키마에 속한 시퀀스를 제거하는 권한이다.
SELECT ANY SEQUENCE 임의의 스키마에 속한 시퀀스를 조회하는 권한이다.
CREATE ROLE 역할을 생성하는 권한이다.
DROP ANY ROLE 역할을 제거하는 권한이다.
GRANT ANY ROLE 임의의 역할에 부여하는 권한이다.
ALTER ANY ROLE 역할을 수정하는 권한이다.
ALTER DATABASE 데이터베이스를 변경하는 권한이다.
CREATE PROCEDURE 자신의 스키마에 프러시저를 생성하는 권한이다.
CREATE ANY PROCEDURE 임의의 스키마에 프러시저를 생성하는 권한이다.
ALTER ANY PROCEDURE 임의의 스키마에 속한 프러시저를 변경하는 권한이다.
DROP ANY PROCEDURE 임의의 스키마에 속한 프러시저를 제거하는 권한이다.
EXECUTE ANY PROCEDURE 임의의 스키마에 속한 프러시저를 실행하는 권한이다.
CREATE TRIGGER 자신의 스키마에 속한 트리거를 생성하는 권한이다.
CREATE ANY TRIGGER 임의의 스키마에 속한 트리거를 생성하는 권한이다.
ALTER ANY TRIGGER 임의의 스키마에 속한 트리거를 변경하는 권한이다.
DROP ANY TRIGGER 임의의 스키마에 속한 트리거를 제거하는 권한이다.
GRANT ANY OBJECT PRIVILEGE 모든 스키마 객체에 대한 특권을 가지는 권한이다.
GRANT ANY PRIVILEGE 모든 특권을 전부 부여할 수 있는 권한이다.

특권 회수

REVOKE DELETE ON EMPLOYEE FROM Peter; [스키마]
REVOKE SELECT ANY TABLE FROM Susan; [시스템]
REVOKE ALL ON EMPLOYEE FROM John; [전부]

반응형

특권 조회 변수명

sql> select * from USER_SYS_PRIVS
.
.
.
정적 뷰 설명
DBA_SYS_PRIVS 사용자에게 부여된 모든 특권의 정보를 조회하는 뷰이다.
USER_SYS_PRIVS 현재 사용자에게 부여된 특권의 정보를 조회하는 뷰이다.
DBA_TBL_PRIVS 데이터베이스 내의 모든 스키마 객체 특권의 정보를 조회하는 뷰이다.
USER_TBL_PRIVS 현재 사용자가 소유한 모든 스키마 객체 특권의 정보를 조회하는 뷰이다.
ALL_TBL_PRIVS 현재 사용자가 소유한 모든 스키마 객체 특권과 모든 사용자가 사용할 수 있도록 공개한 모든 스키마 객체 특권의 정보를 조회하는 뷰이다.
DBA_COL_PRIVS 데이터베이스 내의 모든 스키마 객체 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
USER_COL_PRIVS 현재 사용자가 소유한 스키마 객체 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
ALL_COL_PRIVS 현재 사용자가 소유한 스키마 객체 특권 또는 모든 사용자가 사용할 수 있도록 공개한 모든 스키마 객체 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
USER_COL_PRIVS_MADE 현재 사용자 소유한 객체 중 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
ALL_COL_PRIVS_MADE 현재 사용자가 만든 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
USER_COL_PRIVS_RECD 현재 사용자에게 부여된 모든 스키마 객체 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
ALL_COL_PRIVS_RECD 현재 사용자 또는 PUBLIC 사용자에게 부여된 모든 스키마 객체 특권 중 스키마 객체의 특정 컬럼에 부여된 특권의 정보를 조회하는 뷰이다.
반응형
저작자표시 비영리 (새창열림)

'DB > Tibero' 카테고리의 다른 글

[Tibero] Archive Mode 변경 (mount 상태 쿼리를 통한)  (0) 2023.08.17
[Tibero] flashback을 통한 drop된 테이블 복구하기  (0) 2023.08.08
[Tibero] 세션 조회 , 종료  (0) 2023.08.08
[Tibero] 프로세스 (아키텍처)  (0) 2023.07.27
  1. 사용자 조회
  2. 사용자 생성 | 삭제
  3. 특권 (스키마) 부여
  4. 특권 (시스템) 부여
  5. 특권 회수
  6. 특권 조회 변수명
'DB/Tibero' 카테고리의 다른 글
  • [Tibero] Archive Mode 변경 (mount 상태 쿼리를 통한)
  • [Tibero] flashback을 통한 drop된 테이블 복구하기
  • [Tibero] 세션 조회 , 종료
  • [Tibero] 프로세스 (아키텍처)
빡상이
빡상이
게임 및 개발 관련 일지 작성하는 블로그
빡상이
끄적끄적
빡상이
반응형
  • 분류 전체보기
    • FrontEnd
      • Vue3
      • Nuxt
    • BackEnd
      • 로스트아크 Work
    • 백준(알고리즘)
    • Unreal Engine
    • 아크라시아 세카이
    • C++
    • 웹 개발 꿀팁
    • C#
    • Linux
      • 명령어
    • DB
      • SQL
      • Tibero
전체
오늘
어제

최근 댓글

최근 글

hELLO · Designed By 정상우.
빡상이
[Tibero] SQL>사용자 생성, 권한 부여(시스템, 스키마)
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.