개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

* 데이터베이스 관리자가 가지는 시스템 권한

- 사용자 생성, 삭제, 사용자 계정에서 객체의 생성 또는 수정, 데이터베이스 백업 관리

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

 

 

 

 

* 권한이란?
- 권한은 사용자가 데이터베이스 시스템을 관리하거나 객체를 이용할 수 있는 권리

 

* 권한의 종류
- 시스템 권한
시스템 차원의 자원 관리나 사용자 스키마 객체 관리 등과 같은 데이터베이스 관리 작업을 할 수 있는 권한
오라클에서는 테이블, 뷰, 롤백 세그먼트, 프로시저와 같은 객체를 생성, 삭제, 수정하는 작업과 관련된 140여 종류의 시스템 권한을 지원

- 객체 권한
테이블, 뷰, 시퀀스, 함수 등과 같은 객체를 조작할 수 있는 권한
객체의 종류에 따라 서로 다른 유형의 객체 권한
테이블의 칼럼별로 insert, update, references등의 권한을 상세 부여 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

* 시스템 보안
- 시스템 관리 차원에서 데이터베이스 자체에 대한 접근 권한을 관리
- 데이터베이스 관리자는 사용자 계정, 암호 관리, 사용자별 허용 가능한 디스크공간 할당
-
사용자의 접근 패턴을 감시하여 의심스러운 사용자 시스템 접속을 차단
일정 주기로 암호를 변경하지 않는 사용자의 접속을 차단

 

* 데이터 보안
- 사용자별로 객체를 조작하기 위한 동작 관리
- 데이터베이스 객체에 대한 접근 권한을 관리
-
scott에게 테이블, 뷰, 인덱스와 같은 객체를 생성할 수 있는 권한을 부여
scott가 만든 테이블을 다른 사용자가 접근할 수 없도록 접근 권한 제한

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

* 다중 사용자 환경(multi-user environment)
- 불법적인 접근 및 유출 방지를 위해 보안 대책 필요
- 오라클에서는 사용자는 자신이 생성한 객체에 대해 소유권을 가지고 데이터에 대한 조작이나 조회 가능
- 다른 사용자가 소유한 객체는 소유자로부터 접근 권한을 부여받지 않는 접근 불가
- 다중 사용자 환경에서는 데이터베이스 관리자의 암호를 철저하게 관리

 

* 중앙 집중적인 데이터 관리
- 분산적으로 관리되는 기존의 파일 시스템보다 보안이 취약할 수 있으므로 철저한 보안 대책 필요

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

 

 

* 뷰의 삭제
- 뷰는 실체가 없는 가상 테이블이므로 뷰의 삭제는 USER_VIEWS데이터 딕셔너리에 저장된 뷰의 정의를 삭제
- 뷰를 정의한 기본 테이블의 구조나 데이터에는 전혀 영향 없음

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

 

* 단순 뷰
- 단순 뷰는 기본 테이블과 동일하게 DML 명령문 사용
- 내부적으로 기본 테이블에 대한 데이터를 조작하는 과정
- 뷰에 대한 무결성 제약조건도 기본 테이블에 정의된 무결성 제약조건이 적용

* 복합 뷰
- 복합 뷰에서는 DML 명령어 사용 제한
- 데이터 조작이 불가능한 경우 세가지
- 뷰 정의에 포함되지 않는 기본 테이블의 칼럼이 NOT NULL 제약조건으로 지정된 경우
- 뷰 정의시 표현식으로 정의된 칼럼에 대해서는 UPDATE, INSERT 명령문의 실행이 불가능
- 뷰 정의시 그룹 함수, DISTINCT, GROUP BY 절을 포함한 경우에는 모든 종류의 DML 명령문 사용 불가

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

* 뷰의 변경
- 뷰의 변경은 기존 뷰에 대한 정의를 삭제한 후 재생성
- CREATE 명령문에서 OR REPLACE 옵션을 이용하여 재생성
OR REPLACE 옵션은 기존에 생성된 뷰가 있을 경우에는 기존 뷰를 무시하고 재생성하는 옵션
- 변경 결과는 USER_VIEWS 데이터 딕셔너리에 저장

 

 

 


개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

 

 

* ​USER_VIEWS
- 사용자가 생성한 모든 뷰에 대한 정의를 저장

 

 

 

+ Recent posts