새싹 DBA/Oracle

[오라클] PROFILE 프로파일 생성 및 관리

LIMMI 2024. 7. 5. 09:11

오라클 프로파일

프로파일은 시스템 자원과 암호 제한의 집합.

 

사용목적

1. 자원 사용에 대한 제한 설정

- 단 RESOURCE_LIMIT 초기화 파라미터 = TRUE 일 경우만 리소스 제한 가능.

2. 패스워드 사용에 대한 제한 설정 가능

3. 모든 USER 는 PROFILE 이 지정되어있다.

4. 프로파일이 지정되지 않은 유저에게는 DEFAULT 프로파일 부여.

 

CREATE PROFILE - PARAMETER 설정

 

create profile app_user LIMIT 

session_per_user      Unlimited                 (제한없음)  동일한 이름으로 만들 수 있는 세션 수 

CPU_per_session     unlimited                  세션 하나당 쓸 수 있는 CPU 수

CPU_PER_CALL      2000                           명령어가 20초 넘어가면 에러 

CONNECT_TIME      45                               로그인 해놓고 45분 지나면 연결 종료

IDLE_TIME                10                               아무것도 안하고 10분 지나면 연결 종료 

LOGICAL_READS_PER_SESSION            현재 디폴트 프로파일을 지정된 값을 그대로 따르겠다

LOGICAL_READS_PER_CALL  1000         명령어 하나당 I/O 개수

FAILED_LOGIN_ATTEMPTS       5              연속적으로 로그인 5번 실패하면  락 건다.

PASSWORD_LOCK_TIME          1/24          패스워드 락을 1시간 동안 락을 건다

PASSWORD_LIFE_TIME             60            패스워드의 라이프 타임. 60일 지나면 바꾸라고 말함

PASSWORD_GRACE_TIME        10            10일동안 바꾸라는 말함. DBA가 풀어주기 전까지 안풀림

PASSWORD_REUSE_TIME        60             똑같은 패스워드를 쓰려면 60일 이후에나 쓸 수 있음.

PASSWORD_REUSE_MAX         5               5번 다른 패스워드를 써야만 썼던 패스워드 쓸 수 있게 해줌

PASSWORD_VERIFY_FUNCTION  veryfy_function    패스워드 체크해 주는 함수.

 

생성 실습 

ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;

CREATE PROFILE [프로파일명] LIMIT

IDLE_TIME 10

FAILED_LOGIN_ATTEMPTS 5

PASSWORD_REUSE_MAX 4

PASSWORD_GRACE_TIME 7

PASSWORD_LIFE_TIME 90;

 

유저에게 부여된 PROFILE 변경 쿼리 

ALTER USER [유저명] PROFILE [프로파일명];

 

계정이 잠긴 경우 .. 개발자들이 잠금을 풀어달라고 요청할 것이다. 

그땐 ALTER USER 명령어로

ALTER USER [유저명] ACCOUNT UNLOCK;