GPO ( Grupo de Profissionais Oracle )
A maior comunidade Oracle do Brasil !

Profiles: PASSWORD_LOCK_TIME and FAILED_LOGIN_ATTEMPTS

Olá como vai ? Tudo bem?

Pergunto: O que é um PROFILE (perfil) ?

Reposta simplificada:

Um mecanismo que o Oracle fornece para controlarmos recursos e também limites por usuários.Um PROFILE  é um conjunto de limites de recursos.

View :   DBA_PROFILES .

Vamos testar dois parâmetros muito interessantes quando usamos PROFILES:

PASSWORD_LOCK_TIME e FAILED_LOGIN_ATTEMPTS .

Vou mostrar na prática,é mais legal!

Os testes serão no Ubuntu 8.10 com Oracle 10g XE (ainda não saiu o 11g rs) em VmWare Workst.

Vamos ao sqlplus:

Criando um profile:

SQL> create profile plcktime_failogatt limit
2  password_lock_time 5/1440
3  failed_login_attempts 2 ;

Profile created.

Criando um usuário para teste:

SQL> create user naum_loga identified by naum_loga
2  profile plcktime_failogatt ;

User created.

Concedendo privilégios:

SQL> grant connect,create session to naum_loga;

Grant succeeded.

SQL>

Verificando na view DBA_USERS:

SQL> select username,account_status,profile
2  from dba_users
3  where username ='NAUM_LOGA';

USERNAME               ACCOUNT_STATUS            PROFILE
------------------------------ -------------------------------- ------------------------------
NAUM_LOGA               OPEN                PLCKTIME_FAILOGATT

Com as cobaias criadas agora , então vamos testar?

SQL> disco
Disconnected from Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> conn naum_loga/senha_errada
ERROR:
ORA-01017: invalid username/password; logon denied

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

SQL> conn naum_loga/senha_errada
ERROR:
ORA-28000: the account is locked

Humm. O  FAILED_LOGIN_ATTEMPTS funcionou. Mas ,e o parametro PASSWORD_LOCK_TIME ?

SQL> conn sys / as sysdba
Enter password:
Connected.
SQL> select username,account_status from dba_users
2  where username='NAUM_LOGA';

USERNAME               ACCOUNT_STATUS
------------------------------ --------------------------------
NAUM_LOGA               LOCKED(TIMED)

SQL>

Viram a palavra “TIMED” na coluna account_status?

Ok.

Vamos calcular o tempo?

SQL> alter session set nls_date_format='dd/mm/rrrr,hh24:mi:ss';

Session altered.

SQL> select sysdate from dual;

SYSDATE
-------------------
28/02/2009,22:56:49
Agora só nos resta esperar!

Você leitor vai se safar desta hein rs.

(Locutor)

  • Cinco minutos depois…

(DBA)

  • Fui tomar uma água na cozinha.

Let me see:

SQL> select sysdate from dual;

SYSDATE
-------------------
28/02/2009,23:04:02

SQL>

Dá e sobra rs.

SQL> disco
Disconnected from Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> conn naum_loga/naum_loga
Connected.

SQL> select 'eu estou logado' naum_loga from dual;

NAUM_LOGA
---------------------------------------------
eu estou logado

SQL>

Vamos exterminar nossas cobaias?

SQL> disco
Disconnected from Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> conn sys / as sysdba
Enter password:
Connected.
SQL> drop profile PLCKTIME_FAILOGATT;
drop profile PLCKTIME_FAILOGATT
*
ERROR at line 1:
ORA-02382: profile PLCKTIME_FAILOGATT has users assigned, cannot drop without CASCADE

Why?
Ok.I got it.

SQL> drop user naum_loga;

User dropped.

SQL> drop profile PLCKTIME_FAILOGATT;

Profile dropped.

SQL> disco
Disconnected from Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL>

Boa noite a todos

Share

You may also like...

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *