페이지

2012년 4월 10일 화요일

admin ws1 다섯째날

* 권한: 특정 sql문을 실행하거나 다른 유저의 객체에 접근할수 있는 자격.
- system 권한: dba가 user에게 주는 권한으로. any라는 권한을 주는 상황이 많다. with admin option을 사용할 수 있으며 revoke시 해당 grantee에게 다시 권한을 할당받은 grantee의 권한은 제거되지 않아 보안상 문제가 생긴다.
- object 권한: owner가 user에게 주는 권한으로 with grant option 사용 가능하며 revoke시 해당 grantor에게 권한을 받은 grantee들의 권한도 같이 제거된다.
- select * from dba_tab_privs;

* sysdba와 sysoper 권한: sysdba는 superuser라고 볼수 있으나 sysoper는 db는 삭제할 수는 없고 다른 user data를 볼수도 없다.

* role
- role 안에 role을 넣을수도 있다.
- 인증을 통해 role 부여도 가능하다.
- role은 객체가 아니며 owner도 없고 어떤 스키마에도 속하지 않는다.
- 일반적으론 default role을 사용한다.
- set role role이름 으로 변경 가능.

* predefined role
- connect: create session
- resource: create cluster, create indextype, create operator, create procedure, create sequence, create table, create trigger, create type
 - resource는 unlimited tablespace 권한도 포함되어있다=quota가 먹지 않는다.=system tablespace도 사용 가능하다
- scheduler_admin: create any job, create external job, create job, execute any class, execute any program, manage scheduler
- dba: 대부분의 시스템 권한
- select_catalog_role: data dictionary에 대해 select만 가능하도록 부여할때 사용.
 - o7_dic_a: 제일 먼저 나오는 parameter이며 반드시 false여야 함. 이걸 true로 할 경우 모든 일반 user들이 다 dictinary를 조회 가능
 - select any table: 모든 스키마를 볼수 있지만 dictionary는 못봄
- select * from role_sys_privs;

* profile: 한계집합이라고도 한다. profile은 user가 하나씩 사용 가능하다.
- resource: resource_limit 파라메터가 true되어야만 사용 가능하다. 기본값 false. 즉 resource는 옵션
 - cpu per session: 1000으로 설정하면 10초로 설정됨. 세션당 10초를 넘어가는 경우 rollback+ logoff
 - cpu per call: 하나의 call이 한계값을 넘으면 rollback
 - network / memory
  - connect time
  - idle time
  - concurrent session: 한 client 측에서 사용가능한 동시 세션수로 실무에선 3개 주로 사용
 - private sga: 정렬, 비트맵 병합등에 사용되는 공간의 양 제한. shared server 사용하는 경우만 적용
 - disk I/O: read per call, read per session 사용가능

- password 보안
 - password history: 기존 pw 기록을 보관하며 조건을 제한함. 볼수는 없음
  - password_reuse_time: 주어진 일수동안 암호 재사용 불가
  - password_reuse_max: 이전 패스워드를 사용하기 위한 암호 변경 횟수
※위 두개의 파라메터는 함께 사용 불가. 하나를 수정하면 다른 하나는 unlimited여야함
 - password 복잡성
  - password_verify_function을 verify_function로 지정함. verify_function은 $ORACLE_HOME/rdbms/admin/utlpwdmg.sql 스크립트로 생성하는 함수
  - verify_function 주건: 최소길이 4, username과 동일할수 없음, 한개문자/한개숫자/한개특수문자 포함해야함, 이전 암호와 최소한 3자이상 달라야함.
 - password aging and expire
  - password_life_time: 암호만료수명. 일단위 지정
  - password_grace_time: 만료후 유예기간
※위 파라메터로 sys, sysman, dbsnmp 계정 lock이 되지 안도록 주의
 - password lock
  - password_login_attempts: 해당 로그인 횟수 실패시 lock
  - password_lock_time: lock시 lock되는 날짜

* default profile과 일반 profile
- user create시 명시하지 않으면 일반적으로 default profile을 사용하게 되며 도중에 다른 profile을 사용하게 되면 default profile은 해제가 된다. 다시 그 profile을 해제하면 default profile이 적용된다.

댓글 없음:

댓글 쓰기