행위

"오라클 PROFILE"의 두 판 사이의 차이

DB CAFE

(새 문서: Profile 사용자가 관리하는 암호나, resource(시스템자원) 제한을 말함 1. Password Profile - CREATE USER / ALTER USER 명령어를 통해 계정을 lock, u...)
 
(Password Profile DROP)
 
(같은 사용자의 중간 판 20개는 보이지 않습니다)
1번째 줄: 1번째 줄:
Profile
+
= Profile =
 
+
{{틀:고지상자
사용자가 관리하는 암호나, resource(시스템자원) 제한을 말함
+
|제목=프로파일 이란?
 
+
|내용=사용자가 관리하는 암호나, resource(시스템자원) 제한을 말함
 
+
}}
 
 
 
 
 
 
 
 
 
 
1. Password Profile
 
 
 
  
 +
== Password Profile ==
  
 
- CREATE USER / ALTER USER 명령어를 통해 계정을 lock, unlock, expire 등을 할 수 있음
 
- CREATE USER / ALTER USER 명령어를 통해 계정을 lock, unlock, expire 등을 할 수 있음
19번째 줄: 13번째 줄:
  
  
- 관련 parameter 값들
+
== Profile 리소스별 설명 ==
 
+
=== CPU LIMIT ===
 +
==== CPU_PER_CALL ====
 +
# parse ,execute ,fetch call에 대한 cpu시간(1/100초)
 +
==== CPU_PER_SESSION ====
 +
# 한 세션에게 할당된 cpu 시간(1/100초)
  
 +
=== Connection LIMIT ===
 +
==== CONNECT_TIME ====
 +
# 한 세션에게 할당된 오라클 연결시간(분). 설정된 시간이 지나면 세션이 끊어짐
 +
==== IDLE_TIME ====
 +
# 연속적인 inactive time(idle time)(분).설정된 시간동안 call이 없으면 접속이 끊어지며 명령어 수행시 ora-02396 발생
  
+
==== SESSIONS_PER_USER ====
Parameter
+
# 한 유저가 동시에 연결할수 있는 세션수
  
  Description
+
=== Password Account Locking ===
 +
==== FAILED_LOGIN_ATTEMPTS ====
 +
# 암호 입력 오류 횟수 지정
 +
#: 계정을 잠그기 전까지 로그인 시도하다 실패한 횟수 , 설정 값에 도달하면 자동으로 계정 lock
 +
   
 +
eg) 3으로 설정하면, 3번 암호 입력 잘못하면 계정 잠김
  
Password
+
==== PASSWORD_LOCK_TIME ====
Account Locking
+
# 로그인 실패후 계정 잠기는 시간, 단위는 DAY
 
 
FAILED_LOGIN_ATTEMPTS
 
 
 
암호 입력 오류 횟수 지정
 
 
 
eg) 3으로 설정하면, 3번 암호 입력 잘못하면 계정 잠김
 
 
 
PASSWORD_LOCK_TIME
 
 
 
로그인 실패후 계정 잠기는 시간, 단위는 DAY
 
  
 
  eg) 10으로 설정했다면, 로그인 실패시 10일동안 계정잠김.  
 
  eg) 10으로 설정했다면, 로그인 실패시 10일동안 계정잠김.  
 +
기다리거나, DBA가 잠금 해제 해줄수 있다.
  
      기다리거나, DBA가 잠금 해제 해줄수 있다.
+
=== Password Expiration and Aging ===
 
+
==== PASSWORD_LIFE_TIME ====
Password  
+
# 동일한 암호 사용 가능한 기간 설정, 역시 단위는 DAY
 
 
Expiration and Aging
 
 
 
PASSWORD_LIFE_TIME
 
 
 
동일한 암호 사용 가능한 기간 설정, 역시 단위는 DAY
 
  
 
  eg) 30으로 설정하면, 한달 동안은 동일한 암호 사용 가능
 
  eg) 30으로 설정하면, 한달 동안은 동일한 암호 사용 가능
  
PASSWORD_GRACE_TIME
+
==== PASSWORD_GRACE_TIME ====
암호가 만기되면 더 연장할 수 있는 시간을 설정, 잘 쓰진 않음
+
# 암호가 만기되면 더 연장할 수 있는 시간을 설정, 잘 쓰진 않음
  
Password History
+
=== Password History ===
 +
==== PASSWORD_REUSE_TIME ====
 +
# 설정한 기간동안은 동일한 암호 사용 불가능, 설정 기간 지나면 동일한 암호 사용 가능해서 보안이 취약함
  
PASSWORD_REUSE_TIME
+
==== PASSWORD_REUSE_MAX ====
설정한 기간동안은 동일한 암호 사용 불가능,
+
# 동일한 암호를 사용할 수 있는 횟수를 지정
 
 
설정 기간 지나면 동일한 암호 사용 가능해서 보안이 취약함
 
 
 
PASSWORD_REUSE_MAX
 
동일한 암호를 사용할 수 있는 횟수를 지정
 
 
  eg) 1로 설정하면, 평생 같은 암호는 쓸 수 없게 됨.
 
  eg) 1로 설정하면, 평생 같은 암호는 쓸 수 없게 됨.
  
Password Verification
+
=== Password Verification ===
 
+
==== PASSWORD_VERIFY_FUNCTION ====
PASSWORD_VERIFY_FUNCTION
+
# 암호가 복잡한지 안한지 검사 및 체크
암호가 복잡한지 안한지 검사 및 체크
 
  
 
   - 4글자 이상인지 아닌지 확인 (10g부터는 6글자)
 
   - 4글자 이상인지 아닌지 확인 (10g부터는 6글자)
84번째 줄: 73번째 줄:
 
  암호가 복잡하면 보안에는 좋지만 사용자는 기억못하는 단점
 
  암호가 복잡하면 보안에는 좋지만 사용자는 기억못하는 단점
  
 +
=== COMPOSITE LIMIT ===
 +
==== COMPOSITE_LIMIT ====
 +
# cpu_per_session,read_per_session,connect_time,private_sga의 전체 가중치를 제한
  
 +
=== 기타 ===
 +
==== PRIVATE_SGA ====
 +
# 한 세션이 사용할수 있는 shared pool 영역의 private area 공간 (K,M btye)
 +
==== LOGICAL_READS_PER_CALL ====
 +
# 단위 call(쿼리)당 i/o 량이 설정값을 초과할경우 ora-02395 에러 발생
 +
==== LOGICAL_READS_PER_SESSION ====
 +
# 한 세션이 읽을수 있는 data block 수(memory,disk)
  
 
+
== 프로파일 생성/수정/삭제 ==
- Password Profile 생성하기
+
=== Password Profile 생성하기 ===
 
+
<source lang=sql>
 
CREATE PROFILE 프로파일이름 LIMIT
 
CREATE PROFILE 프로파일이름 LIMIT
 
 
PARAMETER값들 ;
 
PARAMETER값들 ;
 +
</source>
  
 
+
=== Password Profile 수정하기 ===
 
+
<source lang=sql>
 
 
 
 
- Password Profile 수정하기
 
 
 
 
ALTER PROFILE 프로파일이름 LIMIT
 
ALTER PROFILE 프로파일이름 LIMIT
 
 
수정할PARAMETER값들 ;
 
수정할PARAMETER값들 ;
 +
</source>
  
 
+
=== Password Profile DROP ===
 
+
<source lang=sql>
 
 
 
 
- Password Profile DROP
 
 
 
 
DROP PROFILE 프로파일이름 ;
 
DROP PROFILE 프로파일이름 ;
  
 
DROP PROFILE 프로파일이름 CASCADE ; -->사용자에 할당되어 사용되고 있더라도 강제 삭제,  
 
DROP PROFILE 프로파일이름 CASCADE ; -->사용자에 할당되어 사용되고 있더라도 강제 삭제,  
 
+
</source>
 
Default Profile로 바뀜
 
Default Profile로 바뀜
  
 
+
== Resource Limits ==
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2. Resource Limits
 
  
  
  
 
- 우선 resource profile의 파라미터 값을 적용하기 위해 설정해야 함
 
- 우선 resource profile의 파라미터 값을 적용하기 위해 설정해야 함
 
+
* parameter file이 pfile일 경우에는 vi로 initSID.ora 파일을 vi로 열어  
  parameter file이 pfile일 경우에는 vi로 initSID.ora 파일을 vi로 열어 resource_limit = TRUE 를 추가해야함.
+
<source lang=c>
 
+
resource_limit = TRUE  
 +
</source>
 +
를 추가해야함.
 +
<source lang=sql>
 
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE ;
 
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE ;
 
+
</source>
 
 
 
 
  
  
163번째 줄: 145번째 줄:
 
- Resource Limit Profile 생성하기
 
- Resource Limit Profile 생성하기
  
 +
<source lang=sql>
 
CREATE PROFILE 프로파일이름 LIMIT
 
CREATE PROFILE 프로파일이름 LIMIT
 
 
PARAMETER값들 ;
 
PARAMETER값들 ;
 +
</source>
  
 
+
== Profile 조회 ==
 
+
<source lang=sql>
 
 
 
 
 
 
 
 
 
 
 
 
3. Profile 조회
 
 
 
 
 
 
 
 
SELECT * FROM dba_profiles
 
SELECT * FROM dba_profiles
 +
WHERE PROFILE='프로파일명대문자'
 +
ORDER BY resource_type ;
 +
</source>
  
WHERE PROFILE='프로파일명대문자'
+
== Profile을 사용자에게 할당 ==
 
+
<source lang=sql>
ORDER BY resource_type ;
 
 
 
 
 
 
 
 
 
 
 
Profile을 사용자에게 할당
 
 
 
 
ALTER USER 유저이름 PROFILE 프로파일이름 ;
 
ALTER USER 유저이름 PROFILE 프로파일이름 ;
 +
</source>
 +
[[Category:oracle]]

2023년 6월 26일 (월) 13:55 기준 최신판

thumb_up 추천메뉴 바로가기


1 Profile[편집]

사용자가 관리하는 암호나, resource(시스템자원) 제한을 말함



1.1 Password Profile[편집]

- CREATE USER / ALTER USER 명령어를 통해 계정을 lock, unlock, expire 등을 할 수 있음

- 수동으로 DB를 생성했다면, SYS 계정에서 utlpwdmg.sql 스크립트를 통해 관리할 수 있음.


1.2 Profile 리소스별 설명[편집]

1.2.1 CPU LIMIT[편집]

1.2.1.1 CPU_PER_CALL[편집]

  1. parse ,execute ,fetch call에 대한 cpu시간(1/100초)

1.2.1.2 CPU_PER_SESSION[편집]

  1. 한 세션에게 할당된 cpu 시간(1/100초)

1.2.2 Connection LIMIT[편집]

1.2.2.1 CONNECT_TIME[편집]

  1. 한 세션에게 할당된 오라클 연결시간(분). 설정된 시간이 지나면 세션이 끊어짐

1.2.2.2 IDLE_TIME[편집]

  1. 연속적인 inactive time(idle time)(분).설정된 시간동안 call이 없으면 접속이 끊어지며 명령어 수행시 ora-02396 발생

1.2.2.3 SESSIONS_PER_USER[편집]

  1. 한 유저가 동시에 연결할수 있는 세션수

1.2.3 Password Account Locking[편집]

1.2.3.1 FAILED_LOGIN_ATTEMPTS[편집]

  1. 암호 입력 오류 횟수 지정
    계정을 잠그기 전까지 로그인 시도하다 실패한 횟수 , 설정 값에 도달하면 자동으로 계정 lock

eg) 3으로 설정하면, 3번 암호 입력 잘못하면 계정 잠김

1.2.3.2 PASSWORD_LOCK_TIME[편집]

  1. 로그인 실패후 계정 잠기는 시간, 단위는 DAY
eg) 10으로 설정했다면, 로그인 실패시 10일동안 계정잠김. 

기다리거나, DBA가 잠금 해제 해줄수 있다.

1.2.4 Password Expiration and Aging[편집]

1.2.4.1 PASSWORD_LIFE_TIME[편집]

  1. 동일한 암호 사용 가능한 기간 설정, 역시 단위는 DAY
eg) 30으로 설정하면, 한달 동안은 동일한 암호 사용 가능

1.2.4.2 PASSWORD_GRACE_TIME[편집]

  1. 암호가 만기되면 더 연장할 수 있는 시간을 설정, 잘 쓰진 않음

1.2.5 Password History[편집]

1.2.5.1 PASSWORD_REUSE_TIME[편집]

  1. 설정한 기간동안은 동일한 암호 사용 불가능, 설정 기간 지나면 동일한 암호 사용 가능해서 보안이 취약함

1.2.5.2 PASSWORD_REUSE_MAX[편집]

  1. 동일한 암호를 사용할 수 있는 횟수를 지정
eg) 1로 설정하면, 평생 같은 암호는 쓸 수 없게 됨.

1.2.6 Password Verification[편집]

1.2.6.1 PASSWORD_VERIFY_FUNCTION[편집]

  1. 암호가 복잡한지 안한지 검사 및 체크
 - 4글자 이상인지 아닌지 확인 (10g부터는 6글자)
 - 사용자 이름과 암호가 같으면 에러
 - 적어도 알파벳, 숫자, 특수문자 하나씩을 들어가야 함
 - 전 암호와 적어도 3글자는 달라야함
암호가 복잡하면 보안에는 좋지만 사용자는 기억못하는 단점

1.2.7 COMPOSITE LIMIT[편집]

1.2.7.1 COMPOSITE_LIMIT[편집]

  1. cpu_per_session,read_per_session,connect_time,private_sga의 전체 가중치를 제한

1.2.8 기타[편집]

1.2.8.1 PRIVATE_SGA[편집]

  1. 한 세션이 사용할수 있는 shared pool 영역의 private area 공간 (K,M btye)

1.2.8.2 LOGICAL_READS_PER_CALL[편집]

  1. 단위 call(쿼리)당 i/o 량이 설정값을 초과할경우 ora-02395 에러 발생

1.2.8.3 LOGICAL_READS_PER_SESSION[편집]

  1. 한 세션이 읽을수 있는 data block 수(memory,disk)

1.3 프로파일 생성/수정/삭제[편집]

1.3.1 Password Profile 생성하기[편집]

CREATE PROFILE 프로파일이름 LIMIT
PARAMETER값들 ;

1.3.2 Password Profile 수정하기[편집]

ALTER PROFILE 프로파일이름 LIMIT
수정할PARAMETER값들 ;

1.3.3 Password Profile DROP[편집]

DROP PROFILE 프로파일이름 ;

DROP PROFILE 프로파일이름 CASCADE ; -->사용자에 할당되어 사용되고 있더라도 강제 삭제,

Default Profile로 바뀜

1.4 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값들 ;

1.5 Profile 조회[편집]

SELECT * FROM dba_profiles
 WHERE PROFILE='프로파일명대문자'
 ORDER BY resource_type ;

1.6 Profile을 사용자에게 할당[편집]

ALTER USER 유저이름 PROFILE 프로파일이름 ;