행위

오라클 PROFILE

DB CAFE

Dbcafe (토론 | 기여)님의 2019년 12월 19일 (목) 12:48 판
thumb_up 추천메뉴 바로가기


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 프로파일이름 ;