사용자 권한 제어
데이터베이스 보안
권한
롤
데이터베이스 보안
다중 사용자 환경(multi-user environment)
-불법적인 접근 및 유출 방지를 위해 보안 대책 필요
-오라클에서는 사용자는 자신이 생성한 객체에 대해 소유권을 가지고 데이터에 대한 조작이나 조회 가능
-다른 사용자가 소유한 객체는 소유자로부터 접근 권한을 부여받지 않는 접근 불가
-다중 사용자 환경에서는 데이터베이스 관리자의 암호를 철저하게 관리
중앙 집중적인 데이터 관리
-분산적으로 관리되는 기존의 파일 시스템보다 보안이 취약할 수 있으므로 철저한 보안 대책 필요
오라클에서 지원하는 데이터베이스 보안 정책
시스템 보안
-시스템 관리 차원에서 데이터베이스 자체에 대한 접근 권한을 관리
-데이터베이스 관리자는 사용자 계정, 암호 관리, 사용자별 허용 가능한 디스크공간 할당
-예
사용자의 접근 패턴을 감시하여 의심스러운 사용자 시스템 접속을 차단
일정 주기로 암호를 변경하지 않는 사용자의 접속을 차단
데이터 보안
-사용자별로 객체를 조작하기 위한 동작 관리
-데이터베이스 객체에 대한 접근 권한을 관리
-예
scott에게 테이블, 뷰, 인덱스와 같은 객체를 생성할 수 있는 권한을 부여
scott가 만든 테이블을 다른 사용자가 접근할 수 없도록 접근 권한 제한
사용자 - 생성
SQL> create user boa
2 identified by no1;
사용자가 생성되었습니다.
SQL>
사용자-삭제
DROP USER USER명;
권한부여
GRANT 권한
TO USER명;
SQL> GRANT CONNECT, RESOURCE
2 TO BOA;
권한이 부여되었습니다.
권한회수
REVOKE 권한
FROM USER명;
SQL> REVOKE CREATE SESSION
2 FROM BOA;
권한이 취소되었습니다.
SQL> REVOKE CREATE TABLE
2 FROM BOA;
권한이 취소되었습니다.
테이블 생성
CREATE TABLE 테이블명
(
컬럼명1 데이터타입,
컬럼명2 데이터타입,
컬럼명n 데이터타입
);
테이블 삭제
SQL> DROP TABLE TEST;
테이블이 삭제되었습니다.
데이터 타입
DATE 날짜
NUMBER(M,N) 숫자 M개의 자릿수 N개의 정수를 허용하겠다.
EX) 7.2 7바이트를 가지며 소숫점 2자리까지 허용
VARCHAR2(4) 문자 - 가변길이 문자 (1-2000BYTE) -주어진 값만 가진다.
CHAR(4) 문자 - 고정길이문자(1-4000 BYTE) ABCD,ABC,C -주어지 바이트 다 사용 주민번호. 우편번호
문제1) RAIN / BOW 사용자 생성
CONNECT, RESOURCE 를 부여
TEST TABLE생성(NO NUMBER(5), DETAIL VARCHAR2(50))
임의의 데이터 입력 후 확인
SQL> CREATE USER RAIN
2 IDENTIFIED BY BOW;
사용자가 생성되었습니다.
SQL>
SQL> GRANT CONNECT, RESOURCE
2 TO RAIN;
권한이 부여되었습니다.
SQL> CREATE TABLE TEST
2 (
3 NO NUMBER(5),
4 DETAIL VARCHAR2(50)
5 );
테이블이 생성되었습니다.
SQL> INSERT INTO TEST
2 VALUES(3,'오라클 테스트');
1 개의 행이 만들어졌습니다.
SQL> SELECT * FROM TEST;
NO DETAIL
---------- ----------------------------------
3 오라클 테스트