Neste artigo, você aprenderá a gerenciar senhas e recursos no Oracle usando o perfil.
Por que devemos usar Perfis no Oracle?
Os perfis no Oracle nos ajudam a gerenciar senhas e restringir o consumo de recursos.
Neste tutorial de ‘perfis no Oracle’, vamos aprender gerenciamento de sessões no Oracle, gerenciamento de recursos no Oracle e gerenciamento de senhas no Oracle com a ajuda de parâmetros disponíveis no perfil. Aqui tentamos cobrir quase todos os parâmetros em perfis no Oracle. Espero que isso irá ajudá-lo.
Propósito do Perfil no Oracle
Para restringir o consumo de recursos e permite gerenciar senha.
- Um perfil pode ser atribuído a vários usuários.
- Um usuário pode ter um perfil por vez
- Somente o DBA pode criar um perfil.
- Quando alterarmos o perfil dos usuários, isso será aplicável a partir da próxima sessão de login, não da sessão atual ou anterior
- Visualize para verificar detalhes sobre o perfil no Oracle:- dba_profiles e dba_users
Como criar um perfil no Oracle/Command para criar um perfil no Oracle?
O comando abaixo criará um perfil com o nome 'profile_test1' que define que o usuário pode abrir apenas 2 sessões simultâneas por vez, além de especificar ideal_time como 15 minutos, significa que se uma sessão for ideal por mais de 15 minutos, essa sessão será automaticamente sair. Ele também especifica o tempo de conexão como 120 minutos, o que significa que a sessão pode permanecer conectada ao banco de dados por no máximo 120 minutos após a sessão ser desconectada automaticamente.
sql> create profile profile_test1 limit sessions_per_user 2 idle_time 15 connect_time 120;
Como verificar o perfil alocado ao usuário no Oracle
sql>select username ,profile from dba_users;
Como atribuir um perfil criado a um usuário no Oracle
sql>alter user scott profile profile_test1;
Como eliminar um perfil no Oracle
sql>drop profile profile_test1 cascade;
Gerenciamento de recursos no Oracle usando parâmetros de perfil
Connect_time
Especifica o tempo total em minutos que uma sessão pode permanecer conectada ao banco de dados. Após minutos especificados, uma sessão é desconectada.
CPU_per_call
Limita o tempo de CPU usado por cada chamada dentro de uma transação. Inclui análise, execução e busca. Este tanto de tempo uma instrução pode usar no máximo. Se alguma instrução usar mais CPU, ela falhará.
CPU_per_session
Limita o tempo total da CPU usado durante uma sessão.
sessions_per_user
Ele especifica o número de sessões simultâneas que podem ser abertas pelos usuários.
Se o valor para sessions_per_user =2, esse usuário poderá abrir 2 sessões simultaneamente.
Tempo_inativo
Limita a quantidade de tempo que a sessão fica ociosa. Se idle_tile for 15 minutos e a sessão estiver ociosa por 15 minutos, a sessão será desconectada automaticamente.
logical_reads_per_session
Limita o número total de blocos de dados lidos (da leitura de SGA+DISk) por sessão.
logical_reads_per_call
Limita o número total de leituras de blocos de dados por instrução.
composite_limit
É um limite geral de todos os parâmetros acima em termos da unidade de serviço.
Gerenciamento de senhas de usuários no Oracle usando parâmetros de perfil
Failed_login_time
Ele especifica o número de vezes que o usuário pode digitar a senha errada.
password_life_time
Ele especifica o número de dias que a senha deve ser válida. Se não alterarmos a senha dentro desses dias, a senha expirará.
password_grace_time
Quando a senha expirar nos próximos dias password_grace_time, você poderá alterar a senha.
password_lock_time
Se failed_login_attempts for definido como 3, a conta pela quarta vez será bloqueada. Então a conta deve ser bloqueada por password_lock_time dias. Após password_lock_time days a conta será desbloqueada.
Password_reuse_time
A definição para password_reuse_time diz que a mesma senha não pode ser usada novamente até password_reuse_time dias.
Senha_reuse_max
Ele especifica o número de vezes que podemos usar a mesma senha novamente.
Password_verify_function
Este parâmetro é fornecido pelo Oracle para impor restrições ao definir uma senha. O valor é check_function_11g.
Por favor, verifique o exemplo abaixo para entender o –
sql>alter profile Test1 limit Password_verify_function verify_function_11g;
Se a função acima não estiver disponível, precisamos executar a função do gerenciador de senhas abaixo
sql>?/rdbms/admin/utlpwdmg.sql
Precisamos abaixo para que os parâmetros de recursos entrem em vigor.
set resource_limit parameter =True