Oracle/user

PROFILE

pbj1102 2022. 1. 24. 14:29
반응형

# 프로파일

프로파일은 다음 암호 및 자원 제한을 명명한 집합.
? 암호 만기일 기능 및 암호 만기
? 암호 기록
? 암호 복잡성 확인
? 계정 잠금
? CPU 시간
? I/O(입출력) 작업
? 휴지 시간
? 연결 시간
? 메모리 공간(공유 서버만을 위한 전용 SQL 영역)
? 동시 세션

프로파일은 데이터베이스 생성시 default 프로파일을 자동으로 생성.


* 프로파일 할당은 현재 세션에 영향을 주지 않음.


확인

? DBA_USERS
? DBA_PROFILES





# 프로파일 생성
CREATE PROFILE grace_5 LIMIT
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LOCK_TIME UNLIMITED
PASSWORD_LIFE_TIME 30
PASSWORD_REUSE_TIME 30
PASSWORD_GRACE_TIME 5;


FAILED_LOGIN_ATTEMPTS : 로그인 시도를 실패할 수 있는 횟수
PASSWORD_LIFE_TIME : 유효기간 만료후 락
PASSWORD_REUSE_TIME : 암호 재사용 일 수
PASSWORD_REUSE_MAX : PASSWORD_REUSE_TIME 정수값 입력시 UNLIMITED
PASSWORD_LOCK_TIME : 계정 잠그는 일 수
PASSWORD_GRACE_TIME : 유예기간 
PASSWORD_VERIFY_FUNCTION : 복잡성 환인 함수를 CREATE PROFILE문에 인수로 전달



# 프로파일 변경

ALTER PROFILE default LIMIT
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LIFE_TIME 60
PASSWORD_GRACE_TIME 10;



# 프로파일 삭제
DROP PROFILE 프로파일명 CASCADE

* default 프로파일은 삭제할 수 없음
* 현재 세션에는 적용 되지 않고 새롭게 연결되는 세션에만 적용됨


#자원관리

자원을 제한을 하기 위해 아래의 값을 true 변경 필요
ALTER SYSTEM SET RESOURCE_LIMIT=TRUE;


연습문제
1 lab14_01.sql 스크립트를 실행하여 Jeff 사용자를 생성하십시오.
@$ORACLE_HOME/rdbms/admin/utlpwdmg.sql 스크립트를 실행하여 암호
관리를 활성화하십시오.



2 Jeff 사용자의 암호를 Jeff로 변경해 보십시오. 결과는?

alter user jeff identified by jeff


3. 암호 관리 형식에 따라 Jeff의 암호를 변경해 보십시오
힌트:암호에는 적어도하나의 숫자, 문자 및 구두점이 포함되어야 합니다.
alter user jeff identified by j2f$;



4 DEFAULT 프로파일을 변경하여 DEFAULT 프로파일을 할당받은 사용자에게 다음
사항이 적용되었는지 확인하십시오.
- 로그인을 두 번 시도하면 계정이 잠겨야 합니다.
- 암호는 30일 후에 만료되어야 합니다.
- 동일한 암호가 단 1분 동안이라도 재사용되지 않도록 하십시오.
- 계정에는 만료되는 암호의 변경을 위해서 5일의 유예 기간을 두어야 합니
다.
- 주어진 요구 사항이 구현되었는지 확인하십시오.
힌트:
ALTER PROFILE 명령을 사용하여 기본 프로파일 제한을 변경합니다.
DBA_PROFILES 데이터 딕셔너리 뷰를 질의하여 결과를 확인합니다.



alter profile default limit 
failed_login_attempts 1
password_life_time 30
password_reuse_time 1/1440
password_grace_time 5


select resource_name , limit 
from dba_profiles
where resource_type='PASSWORD'
and profile='DEFAULT';


RESOURCE_NAME                    LIMIT
-------------------------------- ----------------------------------------
FAILED_LOGIN_ATTEMPTS            1
PASSWORD_LIFE_TIME               30
PASSWORD_REUSE_TIME              .0006
PASSWORD_REUSE_MAX               UNLIMITED
PASSWORD_VERIFY_FUNCTION         NULL
PASSWORD_LOCK_TIME               1
PASSWORD_GRACE_TIME              5

7 rows selected.





5 잘못된 암호를 입력하여 Jeff 사용자로 로그인합니다. 잘못된 암호 입력을 두 번
시도한 후 올바른 암호를 입력하여 다시 로그인하십시오. 결과는?


SQL> conn jeff/jeff
ERROR:
ORA-01017: invalid username/password; logon denied


Warning: You are no longer connected to ORACLE.
SQL> conn jeff/asdfa
ERROR:
ORA-28000: the account is locked


SQL> conn jeff/test
ERROR:
ORA-28000: the account is locked




6 DBA_USERS 데이터 딕셔너리 뷰를 사용하여 Jeff 사용자가 잠겨 있는지 확인하십시
오. Jeff 사용자 계정의 잠금을 해제한 다음 Jeff로 접속하십시오.





SQL> select username, account_status from dba_users
  2  where username ='JEFF';

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------
JEFF                           LOCKED(TIMED)



alter user jeff account unlock;



SQL> select username, account_status from dba_users
  2  where username ='JEFF';

USERNAME                       ACCOUNT_STATUS
------------------------------ --------------------------------
JEFF                           OPEN



SQL> conn jeff/j2f$;         
Connected.
SQL> 



7 DEFAULT 프로파일에 대한 암호 확인을 비활성화하십시오.
힌트: ALTER PROFILE명령을 사용하여 암호 확인을 비활성화합니다.


SQL> select * from dba_profiles
  where profile='DEFAULT'
  AND LIMIT != 'UNLIMITED';

PROFILE    RESOURCE_NAME                    RESOURCE_T LIMIT
---------- -------------------------------- ---------- -----
DEFAULT    FAILED_LOGIN_ATTEMPTS            PASSWORD   1
DEFAULT    PASSWORD_LIFE_TIME               PASSWORD   30
DEFAULT    PASSWORD_REUSE_TIME              PASSWORD   .0006
DEFAULT    PASSWORD_VERIFY_FUNCTION         PASSWORD   NULL
DEFAULT    PASSWORD_LOCK_TIME               PASSWORD   1
DEFAULT    PASSWORD_GRACE_TIME              PASSWORD   5



alter profile default limit
failed_login_attempts UNLIMITED
PASSWORD_LIFE_TIME UNLIMITED
PASSWORD_REUSE_TIME UNLIMITED
PASSWORD_LOCK_TIME  UNLIMITED
PASSWORD_GRACE_TIME UNLIMITED;



SQL>  select * from dba_profiles
  2    where profile='DEFAULT'
  3    AND LIMIT != 'UNLIMITED';

PROFILE    RESOURCE_NAME                    RESOURCE_T LIMIT
---------- -------------------------------- ---------- -----
DEFAULT    PASSWORD_VERIFY_FUNCTION         PASSWORD   NULL



8. 잘못된 암호를 입력하여 Jeff 사용자로 로그인합니다. 잘못된 암호 입력을 두 번
시도한 후 올바른 암호를 입력하여 다시 로그인하십시오. 결과는?

SQL> conn jeff/asdf
ERROR:
ORA-01017: invalid username/password; logon denied


SQL> conn jeff/ass
ERROR:
ORA-01017: invalid username/password; logon denied


SQL> conn jeff/j2f$;
Connected.

반응형

'Oracle > user' 카테고리의 다른 글

synonyms  (0) 2022.01.24
테이블 종류 및 관리  (0) 2022.01.24
ROLE  (0) 2022.01.24
사용자 권한  (0) 2022.01.24
사용자 관리  (0) 2022.01.24