사용자
- 데이터베이스에 접속해 데이터를 관리하는 계정을 user(사용자)라고 표현
- 데이터베이스 관리자
- 사용자가 데이터베이스의 객체에 대한 특정 권한을 가질 수 있도록 함
- 다수의 사용자가 데이터베이스에 저장된 정보를 공유, 보안이 이루어질 수 있도록 함
- 접근하기 위해 사용자의 이름, 암호를 입력해 로그인이 이루어질 수 있도록 함
- 사용자 마다 서로 다른 권한을 부여함으로써 보안을 설정함 - Schema(스키마) : 데이터베이스 구조와 제약조건에 관한 전반적인 명세를 기술한것
객체의 특성을 나타내는 속성과 속성들의 집합으로 이루어진 객체사이에 존재하는
관계에 대한 정의와 이를 유지하기 위해 해야할 제약조건들을 기술한 것 - 권한
- 사용자가 특정한 테이블에 접근 할 수 있도록 하거나
해당 테이블에 select, insert, update, delete를 사용할 수 있도록 제한을 두는것
- 종류
종류 | 의미 |
System Privilleges | 사용자의 생성, 제거, DB 접근 및 각종 객체를 생성할 수 있는 권한 주료 DBA에 의해 부여 |
Object Privileges | 객체를 조작 할 수 있는 권한 |
- 데이터베이스 관리자가 가지고 있는 시스템 권한
create user | 새롭게 사용자를 생성하는 권한 |
drop user | 사용자를 삭제하는 권한 |
drop any table | 임의의 테이블을 삭제할 수 있는 권한 |
query rewrite | 함수 기반 인덱스를 생성하는 권한 |
back up any table | 임의의 테이블을 백업 할 수 있는 권한 |
- 데이터베이스를 관리하는 권한으로 시스템 관리자가 사용자에게 부여하는 권한
create session | 데이터베이스에 접속 할 수 있는 권한 |
create table | 사용자 스키마에서 테이블을 생성할 수 있는 권한 |
create view | 사용자 스키마에서 뷰를 생성할 수 있는 권한 |
create sequence | 사용자 스키마에서 시퀀스를 생성할 수 있는 권한 |
create procedure | 사용자의 스키마에서 함수를 생성할 수 있는 권한 |
- 사용자 생성
- 사용하는 테이블을 고려해 관리자는 사용자 계정을 발급
- 형식 : create user 사용자명
identified by 비밀번호 - 권한 부여
- 형식 : grant 권한
to 사용자
<사용자 생성 및 권한부여>
사용자 확인)
관리자 계정으로 연결)
새로운 사용자 생성)
새로운 사용자 계정 연결)
관리자 계정으로 연결)
권한 부여)
firstora계정에 데이터베이스 접속 권한 부여
사용자 계정 연결 및 확인)
새로운 계정으로 테이블 생성)
테이블 생성 권한 부여)
테이블 생성)
테이블 확인)
- Role 권한제어
- 여러개의 권한을 묶어 놓은 권한의 집합이며 사용자가 또 다른 Role에서 부여
- 사용자를 생성했으면 그 사용자에게 각종 권한을 부여해야 생성된 사용자가 데이터베이스를 사용 할 수 있음
- 방법
connet | 사용자가 데이터베이스에 접속 할 수 있도록 가장 기본적인 시스템 권한 8가지 alter session, create cluster, create database, link, create synonym, create table, create view |
resource | 사용자가 객체를 생성할 수 있도록 시스템 권한을 묶어놓음 create cluster, create procedure, create sequence, create table, crate trigger |
dba | 사용자들이 소유한 데이터 베이스 객체들을 공유하고 사용자들을 작성, 변경, 제거할 수 있는 모든 권한을 가짐 모든 시스템 권한 |
<Role권한>
현재 계정 확인 및 계정변경)
사용자 생성 )
권한 부여 및 계정연결)
테이블 생성 및 확인)
role확인)
<예제>
< 다음 조건에 맞는 사용자를 생성 후 권한을 부여하고 각각 테이블에 레코드 5개이상 삽입할 것
사용자명 : korea_ora 비밀번호 : seoul1234
조건 : connect, resource권한 부여, 2개 테이블 생성
테이블 1 - emp_test (empno number(5) primary key, ename varchar2(20) not null, sal number(7,3),
hiredate date dufault sysdate)
테이블2 - dept_test(deptno number(5) primary key, dname varchar2(20) not null, loc varchar2(40))
>
테이블 확인)
'DB > ORACLE' 카테고리의 다른 글
220902_ORACLE_국비_UNIQUE/PRIMARY KEY/무결성(도메인, 참조)/SEQUENCE (0) | 2022.09.02 |
---|---|
220901_ORACLE_국비_DELETE/MERGE/DCL/TRANSACTION/무결성 제약 조건 (0) | 2022.09.01 |
220831_ORACLE_국비_RENAME/DML/INSERT/UPDATE (0) | 2022.08.31 |
220830_ORACLE_국비_ROWNUM/DDL/CREATE/ALTER/DROP (0) | 2022.08.30 |
220829_ORACLE_국비_JOIN/SUB Query (0) | 2022.08.29 |