오라클 PROFILE
DB CAFE
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
Profile
사용자가 관리하는 암호나, resource(시스템자원) 제한을 말함
1. Password Profile
- CREATE USER / ALTER USER 명령어를 통해 계정을 lock, unlock, expire 등을 할 수 있음
- 수동으로 DB를 생성했다면, SYS 계정에서 utlpwdmg.sql 스크립트를 통해 관리할 수 있음.
- 관련 parameter 값들
Parameter
Description
Password Account Locking
FAILED_LOGIN_ATTEMPTS
암호 입력 오류 횟수 지정
eg) 3으로 설정하면, 3번 암호 입력 잘못하면 계정 잠김
PASSWORD_LOCK_TIME
로그인 실패후 계정 잠기는 시간, 단위는 DAY
eg) 10으로 설정했다면, 로그인 실패시 10일동안 계정잠김.
기다리거나, DBA가 잠금 해제 해줄수 있다.
Password
Expiration and Aging
PASSWORD_LIFE_TIME
동일한 암호 사용 가능한 기간 설정, 역시 단위는 DAY
eg) 30으로 설정하면, 한달 동안은 동일한 암호 사용 가능
PASSWORD_GRACE_TIME 암호가 만기되면 더 연장할 수 있는 시간을 설정, 잘 쓰진 않음
Password History
PASSWORD_REUSE_TIME 설정한 기간동안은 동일한 암호 사용 불가능,
설정 기간 지나면 동일한 암호 사용 가능해서 보안이 취약함
PASSWORD_REUSE_MAX 동일한 암호를 사용할 수 있는 횟수를 지정 eg) 1로 설정하면, 평생 같은 암호는 쓸 수 없게 됨.
Password Verification
PASSWORD_VERIFY_FUNCTION 암호가 복잡한지 안한지 검사 및 체크
- 4글자 이상인지 아닌지 확인 (10g부터는 6글자)
- 사용자 이름과 암호가 같으면 에러
- 적어도 알파벳, 숫자, 특수문자 하나씩을 들어가야 함
- 전 암호와 적어도 3글자는 달라야함
암호가 복잡하면 보안에는 좋지만 사용자는 기억못하는 단점
- Password Profile 생성하기
CREATE PROFILE 프로파일이름 LIMIT
PARAMETER값들 ;
- Password Profile 수정하기
ALTER PROFILE 프로파일이름 LIMIT
수정할PARAMETER값들 ;
- Password Profile DROP
DROP PROFILE 프로파일이름 ;
DROP PROFILE 프로파일이름 CASCADE ; -->사용자에 할당되어 사용되고 있더라도 강제 삭제,
Default Profile로 바뀜
2. Resource Limits
- 우선 resource profile의 파라미터 값을 적용하기 위해 설정해야 함
parameter file이 pfile일 경우에는 vi로 initSID.ora 파일을 vi로 열어 resource_limit = TRUE 를 추가해야함.
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE ;
- 관련 Parameter 값
CPU_PER_SESSION -> 한 사용자가 CPU를 사용할 수 있는 시간, 100 = 1초
eg) 무한루프 쿼리가 실행되고 있으면 CPU를 계속 사용하고 있기 때문에 성능 ↓
설정한 시간이 되면 PMON이 쿼리 종료시키면서 종료된다.
SESSIONS_PER_USER -> 동시 접속 가능한 세션 수
IDLE_TIME -> 접속 후 아무 반응이 없으면 접속 끊는 시간 = 비활성화 시간 설정
eg) Internet Banking
- Resource Limit Profile 생성하기
CREATE PROFILE 프로파일이름 LIMIT
PARAMETER값들 ;
3. Profile 조회
SELECT * FROM dba_profiles
WHERE PROFILE='프로파일명대문자'
ORDER BY resource_type ;
Profile을 사용자에게 할당
ALTER USER 유저이름 PROFILE 프로파일이름 ;