Terminando auditoria Standard
Bom dia, boa tarde, boa noite!
Amigos, primeiramente eu gostaria de agradecer de novo pela quantidade de visitas que o site está tendo.
Lá traz quando eu comecei a escrever, tinha a idéia de utilizar ele como fonte para criação do meu livro voltado basicamente para performance; de ambiente, de banco de dados e pessoas.
Porém, escrever no blog virou um vício! Sei que não é todo dia que consigo escrever, afinal de contas “Vida de DBA” como de muitos outros profissionais é uma correria, e como já comentei, eu divido meu tempo
com filhos e esposa, e estes sim são mais importantes que qualquer cliente. Afinal de contas são os únicos insubstituíveis, não é mesmo??
Bem, agradecimentos feitos eu só gostastaria de mais uam vez pedir que me ajudem a divulgar ainda mais, quanto mais participações melhor.
Hoje daremos prosseguimento a saga da auditoria e iremos prosseguir com a auditoria standandard.
No post de segunda-feira comentei como configurar e hoje vou relembrar e comentar como verificar os dados auditados.
Configurando auditoria:
Configurar efetivamente a auditoria envolve um parâmetro de inicialização que não é dinâmico, logo necessitará ser setado e em seguida reiniciado o banco de dados.
Com o comando abaixo setamos o parâmetro:
ALTER SYSTEM SET AUDIT_TRAIL=’DB, EXTENDED’ SCOPE=SPFILE;
Aqui gostaria de abrir um parênteses para comentar algo que acho muito importante e acreditem, salva vidas e tempo.
Toda vez que eu altero um parâmetro no SPFILE e preciso reiniciar o banco antes de mais nada eu crio uma cópia rápida do arquivo:
No SQLPLUS mesmo faça:
sql>create pfile=’/home/oracle/initORCL.ora’ from spfile;
Com isso ele cria no local que definiu e com o nome que escolheu uma cópia do SPFILE. Acredite, isso uma hora pode ser muito útil caso o banco de dados se recuse a subir com parâmetros novos.
Ok! Feito a cópia, vamos lá!
Feita a alteração, reiniciado o banco poderemos definir qual nível de auditoria e para quais objetos queremos auditar:
a) Auditando todas as tabelas:
AUDIT table;
b)Auditando privilégios de sistema:
AUDIT select any table, create any trigger;
AUDIT select any table BY hr BY SESSION;
Com este tipo acima, qualquer usuário que faça uso dos privilégios acima (select any table, create trigger) por exemplo será auditado e registrado em tabela de auditoria.
Observação: é logado em tabela porque pedi tipo de auditoria “DB” no AUDIT_TRAIL.]
c)Auditando privilégios de objeto:
AUDIT ALL on hr.employees;
Com esta auditoria conseguimos “logar” tudo que acontecer na tabela employees do owner HR.
AUDIT UPDATE,DELETE on hr.employees BY ACCESS;
Audita todos os updates e deletes desta tabela. Quando colocado BY ACCESS significa que todas as situações que ocorrerem serão logadas.
o contrário do BY ACCESS é o BY SESSION que somente loga uma vez na sessão, caso hajam repetições não aparecerão.
Ok agora só falta saber onde estão os dados auditados.
Todos os dados gravados devem ficar armazenados na tabela DBA_AUDIT_TRAIL para auditoria DB e em arquivos “.aud” para auditoria do tipo OS, sendo que estes últimos estarão no local definido pelo parâmetro de inicialização AUDIT_FILE_DEST.
Dúvidas??? Terei imenso prazer em solucionar todas, comentários, emails, posts no facebook serão bem vindos.
Por falar nele, não esqueça de curtir a fanpage facebook.com/raulfdba
Grande abraço meu amigo! Por hoje é só… No post, mas a vida de DBA continua louca como sempre!!!!
Fui!!!!