110-1
보안관리 : 사용자별로 관리
어디에 있던 상관없이 누구것인가?
 
 
 
110-2 Schema
 : 특정 사용자가 만들어 놓은 모든것
   Ex) scott schema = 스캇이 만들어 놓은 모든것
 : 일반적으로 스키마 = 유저네임
   Ex)  스캇스키마 백업 받아라.
※참고 오라클계정 : 대통령= sys / 국무총리= system 계정
 
 
  
 
110-3
디폴트테이블스페이스,템포러리테이블 스페이스 각각 할당해라.
 
 
SQL> sqlplus scott/tiger

SQL> create table abc;
 
※ 기본적으로 생성되는 테이블 스페이스들
                         (기본값)
system   sysaux   undo   users     example   → 이 테이블스페이스들의 주인 sys (=공용)
 
: 모든테이블은 어느 테이블 스페이스든지 하나엔 속해야 한다.
  자동으로 할당되는 테이블 스페이스 = (기본값 : users)
 
Ex)
 테이블 :      TS_A                TS_B
 사용자 :      scott               HR
 테이블 :      고객테이블  ------>
 
SQL> alter table '고객' move tablespace TS_B;
 
 : 고객테이블 주인은 scott
   디폴트테이블스페이스 = 누구집 개념
   테이블스페이스를 옮겨도 주인이 바뀌는 것은 아니다.
 
 
 
 
 
 
110-4
사용자 만들때
 
사용자 별로 디폴트테이블스페이스 / 템포러리테이블스페이스 생성
미리 data,temp테이블스페이스 만들어 져 있어야 한다.
옵션 :
DEFAULT TABLESPACE data → data 테이블스페이스에 테이블 저장한다.
TEMPORARY TABLESPCE temp → temp 템포러리테이블스페이스에서 order by 한다.
QUOTA : 할당 해 준 양만 쓸수 있다.
 
Ex) quota 0M on data; → 하나도 못쓰게 한다.
   보통 : quota 0M on system; → 일반사용자는 system테이블 스페이스에 데이타 쓰면 안된다.(system테이블스페이스엔 딕셔너리 들어가 있음)
    quota unlimited on ___ → 전부 다 쓰게 한다.
 
 
※ 사용자 만들때 기본적으로 쓸것
SQL> create user aaron
  2  identified by soccer
  3  default tablespace data
  4          temporary tablespace temp;
→ 만약 디폴트 테이블 스페이스 안쓰면 system에 테이블 들어간다.
   system에 들어간 자료들은 나중에 장애복구도 힘들다.
 
 
 
① 암호바꾸기
SQL> Alter user aaron
  2  identified by football;
 
② 디폴트테이블스페이스 data2로 바꾸기
SQL> Alter user aaron
  2  default tablespace data2
 
Ex)
                  (원래디폴트)         (바꿀디폴트)
테이블스페이스 :      data                 data2
        테이블     :      고객
                             대출  --------->
                             담보
 
→ 디폴트 테이블 스페이스 data에서 data2로 옮기면 기존테이블 기존테이블스페이스에 남아있고,
    앞으로 새로 들어오는 테이블은 새로 바뀐 디폴트 테이블스페이스에 저장된다.
 
 
 
 
111-1
 
111-2 사용자 지우기 (조심, drop은 롤백 안된다.)
SQL> drop user aron;
 
 : 사용자 계정으로 만들어놓은 것(스키마 오브젝트) 있을때 안지워짐
   옵션 : CASCADE 주면 만들어 놓은 것들(오브젝트들)과 함께 강제로 지워진다.
          SQL> drop user aaron cascade;
 
 
Cf) 리눅스에서 사용자 지우는 명령어 : userdel
홈 디렉토리까지 같이 지우는 옵션 : -r
 
Cf2) -R옵션 쓰는 세가지 : chown, chmod,  ls -R
 
 
 

 
 
113-1
Privileges : 권한
 
system privileges : DDL과 관련(create, alter, drop)
Object privileges : DML과 관련(select, update, insert, delete)
 
 
113-2 System Privileges
- 100가지 넘음
- 권한줄때 : GRANT
- 권한뺏을때 : REVOKE
 
 
 
113-3 프리빌리지 이름보면 거의 이해할 수 있다.
※ any = 소유자와 상관없이 모든
Ex)
drop any table : 모든 테이블 지울수 있는 권한
create any table : 모든 사람 이름으로 만들수 있는 권한
 
UNLIMITED TABLESPACE : quota를 무시하는 권한
 
 
※할수 있을것 : 어느사용자가 어떤 권한을 가지고 있는가 조회
 
 
 
 
 
113-4
create session : 서버에 접속할 수 있는 권한 = 모든권한 다 가지고 있어도 이것 없으면 접속 못함
 
옵션 : WITH ADMIN OPTION : 받은 권한을 다른 사람에게 줄수 있다.(쓰진 않음)
 
 
 
 
 
114-1
SYSDBA : 최고 권한 이름 (사람 이름이 아니고 직급 = Ex. '암행어사 박문수' 에서 'SYSDBA'는 '암행어사' 부분)
 
※ 어느 사용자던지 SYSDBA권한 가지고 있는 사용자가 SYS와 같은 등급
   SYSDBA권한은 SYS만 가지고 있어야 한다.
Cf) 리눅스에서 일반 사용자인데 UID가 0번인 사람
 
※ 후에 DBA 맡게되면 사용자별로 어떤 권한을 가지고 있나 검사해 봐야 함
   → SYS이외에 SYSDBA권한 가지고 있으면 빼앗아야 한다.
 
 
 
114-2
일반적으로 : 일반 사용자가 SYS사용자의 테이블 볼수 없다.(기본적으로 fauls로 되어있어서..)
07_DICTIONARY_ACESSIBILITY=true로 하면 볼수 있다. 이렇게 할 이유 없음.
 
 
 
114-3 권한뺏기
SQL> REVOKE CREATE TABLE FROM emi;
 
 
114-4 (쓰진않음)
① WITH ADMIN OPTION 으로 계정A에게 권한을 주면, A가 B에게 권한을 부여할수있다.
   이때 A의 권한을 REVOKE로 빼앗아도, A가 B에게 준 권한은 반납되지 않는다.
② WITH GRANT OPTION 으로 계정A에게 권한을 주면, A가 B에게 권한을 부여할수있다.
   이때 A의 권한을 REVOKE로 빼앗으면, A가 B에게 준 권한도 같이 반납된다.
 
 
 
 
115-2 (쓰진 않음)
System privileges 에서 : with admin option
Object privileges 에서 : with grant option
 
 
 
 
 
 
119-1
roles : Privileges 하나씩 주기 힘드니까 role로 묶어서 한번에 권한 부여 (=선물세트)
 
 
 
119-2
장점 : Privileges 관리를 쉽게 편하게 할 수 있다.
 
 
 
 
 
 
119-3 만들기
create role 이름;
 
 
 
119-4 만들어져 있는 role
조심 : DBA롤(SYS와 같은 권한)
 
 
 
※ 총정리 : 사용자 만들때!!
① 디폴트 테이블스페이스 만들기
② 템포러리 테이블스페이스 만들기
③ 사용자 만들기
④ 권한부여 : 편하게 롤로 주기 (CONECT, RESOURCE 정도만 주면 일반적인 작업 다 할 수있다.)
 
※ 할 수 있어야 하는것
- 롤 만들기
- 롤 안에 권한 넣기
- 사용자에게 주기
- 사용자에게서 뺏기
- 사용자가 어떤 롤을 가지고 있는가 조회
 
 
 
120-1
GRANT 롤이름 TO 사용자 → 롤을 사용자에게 부여
GRANT 권한 TO 사용자 → 권한을 사용자에게 부여
GRANT 권한 TO 롤이름 → 권한을 롤에게 부여
 
 
 
 
120-2 디폴트 롤
한명의 사용자가 롤을 중복으로 여러개 가질수 있다.
그중 하나만 쓰고 나머지는 사용안함으로 바꾸고 싶을때 DBA가 명령
SQL> ALTER USER scott DEFAULT ROLE hr_clerk, oe_clerk;
     → scott은 지정해준 두롤(hr_clerk, oe_clerk)만 쓰고 나머지는 Disable된다.
SQL> ALTER USER scott DEFAULT ROLE ALL; → 전부 다시 쓰도록 변경
SQL> ALTER USER scott DEFAULT ROLE ALL EXCEPT hr_clerk;
     → 지정해준 롤(hr_clerk)만 제외하고 사용가능
SQL> ALTER USER scott DEFAULT ROLE NONE; → 전부 쓰지 못하도록 변경
 
 
 
 
120-3
일반사용자가 본인것을 설정할 수 있다. → set role명령어 사용 해서 본인 롤 설정 가능

'Oracle > Oracle - Admin' 카테고리의 다른 글

admin 20 - profiles  (0) 2012.01.27
admin 19 - 제약조건(constraint)  (0) 2012.01.27
admin 18 - index  (0) 2012.01.27
admin 17 - DATA 관리 - table, column  (0) 2012.01.26
admin 16 - undo data 관리  (0) 2012.01.26
Posted by 딩구르
,