개발(Web)/DB

[Oracle] DB User 관리하기

shinyelee 2020. 9. 21. 11:53

DB 유저를 관리해보자.

Ⅰ. User 생성

User 생성했으나 DB에 접속할 수 있는 권한 부족.


Ⅱ. 권한 유형

권한 유형 개념 소유자
System 권한 DB를 조작할 수 있는 권한 DBA
Object 권한 Object를 조작할 수 있는 권한 Object 소유자

Ⅲ. System 권한

* DB를 조작할 수 있는 권한, System 권한의 종류가 100개 정도 됨.

* 모든 System 권한은 DBA가 소유함.

grant : 권한 부여, revoke : 권한 회수.


Ⅳ. Object 권한

* Object를 조작할 수 있는 권한, 역시 권한의 종류 다양함.

* 모든 Object 권한은 Object의 주인이 소유함.

grant : 권한 부여 → 권한 부족으로 에러 뜸.

실습1

1. 사용자 생성
2. 시스템 권한을 회수할 때의 cascade 효과 (with admin option)
3. 객체 권한을 회수할 때의 cascade 효과 (with grant option)


Ⅴ. User에게 저장공간 할당하기

1. User 생성 시 공간 할당 옵션 지정하기

test1. User 생성.
test2. User 생성 실패. appuser를 Default T/S로 설정하였으나 공간할당을 하지 않았으므로 저장영역 사용 안됨.
test3. User 생성.
test3. Table 생성 시 생성할 저장영역을 지정하지 않으면 User의 Default T/S에 생성됨.
test4. User 생성. Default T/S 외 다른 공간도 추가 할당 가능함.
test4. User의 Default T/S가 아닌 공간을 할당 받은 다른 T/S에 생성하길 원한다면 Table 생성 시 저장영역을 지정하면 됨.
test4 유저 소유의 emp1과 emp2 테이블이 서로 다른 저장영역에 생성되어 있는지 조회.

2. User 정보 조회

가. EM을 사용한 조회

FireFox → 1158/em/login → sys 계정으로 로그인.
Security → Users.
여기서 User 정보를 조회할 수 있다.

나. 데이터딕셔너리를 사용한 조회

이름이 TEST로 시작하는 User를 조회할 수 있다.

실습2

1-1. $ORACLE_HOME/rdbms/admin/utlpwdmg.sql 스크립트를 실행하여 암호관리를 활성화(ID와 PW가 올바른 형식이 아니면 error가 뜬다).
1-2. jeffjeff 사용자 생성.
2. alluser라는 프로필을 작성하세요.
3. alluser 프로파일을 사용자에게 지정하시오.
4-1. Default Profile을 변경하여 Default Profile을 할당 받은 사용자에게 해당 사항이 적용되었는지 확인하십시오.
4-2. 오타 대문자로 수정 후 확인.
5-1. jeffjeff 사용자로 로그인 합니다. 잘못된 암호를 두 번 시도한 후 올바른 암호를 입력하여 다시 로그인 하십시오. 결과는?
5-2. 이미 2번 잘못 입력했을 때 계정이 잠겨, 올바른 비밀번호를 입력하여도 로그인 되지 않음.
6-1. dba_users 데이터 딕셔너리 뷰를 사용하여 jeffjeff 사용자가 잠겨있는지 확인하십시오.
6-2. jeffjeff 계정 잠겨있음.
6-3. jeffjeff 사용자 계정의 잠금을 해제한 다음 jeffjeff로 접속하십시오.
7. Default Profile에 대한 암호를 확인을 비활성화 하십시오.
8. alluser 프로파일을 삭제하시오.
9. 프로파일 정보를 표시하세요.
10. 원상태로 복구.

출처 : 아이티윌 부산교육센터 Oracle Database 12c : 실습가이드북

반응형