Compartilhando conhecimento com o mundo

Com tecnologia do Blogger.

Pesquisa

Download

Blogger Tricks

Blogger Themes

Visitas

Assuntos

11/22/2013

Configurando a Auditoria no Informix


Este artigo discute brevemente o processo de configurar e fornece uma demonstração de auditoria gerenciados pelo servidor de banco de dados usando Informix Dynamic Server para Unix sem a separação de funções.

Configurando a Auditoria

1. Acesso com o usuário informix.
2. A auditoria é desativada por padrão quando você instala o servidor de banco de dados. Para ativá-la, edite o arquivo $INFORMIXDIR/aaodir/adtcfg da seguinte forma:

Altere o parâmetro ADTMODE de 0 (que é o padrão) para 1. O valor 1 significa que a servidor de banco de dados gerenciara a auditoria de todas as sessões.

Altere o parâmetro ADTPATH ​​para o caminho completo para o qual você deseja que o servidor de banco de dados salve os arquivos de auditoria. A propriedade do diretório deve ser informix, Group ID deve ser informix e a permissão deve ser 755 para impedir o uso não autorizado dos arquivos de auditoria.

Para este exemplo, vamos usar no parametro ADTPATH o caminho /usr/informix/auditing

Este é o conteúdo do arquivo adtfcg resultantes:
    ADTMODE         1
    ADTPATH         /usr/informix/auditing
    ADTSIZE         50000
    ADTERR          0
A descrição de cada parâmetro:

ADTMODE - Controla o nivel de auditoria, o valor default é 0 (zero);
0 = auditoria esta desativada;
1 = a auditoria em; inicia auditoria em todas as sessões;
3 = a auditoria em auditorias; DBSSO ações;
5 = a auditoria em; ações de administrador de banco de dados servidor de auditorias;
7 = a auditoria em; DBSSO auditorias e ações de administrador de banco de dados do servidor;
ADTPATH - ​​especifica o diretório no qual o servidor de banco de dados salva os arquivos de auditoria. Certifique-se de que o diretório que você colocar tenha os privilégios de acesso adequadas para evitar a utilização não autorizada de registros de auditoria. Para alterar o valor ADTPATH ​​com onaudit, auditoria gerenciados no servidor de banco de dados deve estar ligado.

ADTPATH ​​- especifica o tamanho máximo de um arquivo de auditoria. Quando um arquivo atinge o tamanho máximo, o servidor de banco de dados salva o arquivo de auditoria e cria um novo. Este parâmetro aplica-se apenas à auditoria gerenciados pelo servidor de banco de dados.

ADTERR - especifica como o servidor de banco de dados se comporta quando encontra um erro enquanto grava um registro de auditoria, o valor default é 0 (zero);

0 = continuar modo de erro, quando se encontra um erro, uma vez que escreve um registro de auditoria, o servidor de banco de dados, escreve uma mensagem de falha no registro de mensagem. Ele continua a processar o segmento.
1 = halt error mode: suspender o processamento de thread, quando o servidor de banco de dados encontra um erro, uma vez que escreve um registro de auditoria, o servidor de banco de dados suspende o processamento da thread até que ela grave com sucesso o registro.
3 = halt error mode: onde o sistema é desligado, quando o servidor de banco de dados encontra um erro, uma vez que escreve um registro de auditoria, o servidor de banco de dados é desligado.


Pare e reinicie a máquina para que as novas configurações tenham efeito.

4. Execute onaudit -c para confirmar os parâmetros de configuração de auditoria estão corretas.
    ADTMODE    = 1
    ADTERR     = 0
    ADTPATH    = /usr/informix/auditing
    ADTSIZE    = 50000
    Audit file = 0
Auditoria está agora ligada

5. Crie a máscara de auditoria _require que se aplica automaticamente a todos os usuários. Neste exemplo, a máscara _require é criado usando os eventos recomendadas Informix.
onaudit -a -u _require -e +OPDB,GRDB,RVDB,GRTB, RVTB,CRRL,STRL,STSA,STOM,GRRL,RVRL,GRFR,RVFR
As máscaras de auditoria

Audit Masks

Máscaras de auditoria especificam os eventos que o servidor de banco de dados devem auditar. Você pode incluir qualquer evento em uma máscara. As máscaras são associados com IDs de usuário, de modo que as ações especificadas que um ID de usuário são gravadas. As máscaras globais _default, _require e _exclude são especificados para todos os usuários no sistema.

Antes de usar a auditoria, você deve especificar quais os eventos de auditoria para serem auditados. Para especificar eventos auditados, adicione os eventos para as máscaras. Você também deve realizar outras tarefas, que a administração de Auditoria.

O servidor de banco de dados não fornece auditoria de objetos ou processos. Por exemplo, você não pode pedir para o servidor de banco de dados possa auditar todas as tentativas de acesso em um determinado objeto. Você pode, no entanto, filtrar os registros de auditoria da trilha de auditoria com base em objetos com as ferramentas de auditoria de análise, que a análise de Auditoria.

Importante: Se a auditoria estiver desligado, o servidor de banco de dados não vai fazer auditoria eventos, mesmo se os eventos são especificadas nas máscaras. User masks

As máscaras globais são sempre aplicadas às ações do usuário que são executadas durante uma sessão em que a auditoria está ligado. Máscaras de auditoria são aplicadas na seguinte ordem:
1.  Uma mascara individual a um usuário ou se não existir, a máscara _default;
2.  A mascara _require;
3.  A mascara _exclude;
Quando um usuário inicia o acesso a um banco de dados, o servidor verifica se o banco de dados de uma máscara de usuário individual existe com o mesmo nome de usuário da conta de que o usuário utiliza. Se uma máscara de usuário individual existe, o servidor de banco de dados lê as instruções de auditoria nele primeiro e ignora a máscara _default. Se nenhuma máscara usuário individual existe, o servidor de banco de dados lê e aplica as instruções de auditoria na máscara _default para esse usuário.

Além do padrão e máscaras individuais, o servidor de banco de dados lê e aplica as instruções de auditoria nas máscaras _require e _exclude. Estas máscaras são globais porque se aplicam a todos os usuários. Eventos de auditoria na máscara _require são auditados, mesmo que eles não são encontrados no _default ou máscaras de usuários individuais. Eventos de auditoria na máscara _exclude não são auditados, mesmo que possam ler o anteriormente máscaras obrigá-los especificamente.

Importante: se, são utilizados as instruções na última máscara para ser lido as instruções de auditoria destas máscaras conflito. Máscaras são lidas na seguinte ordem : username, _default, _require, e _exclude.

Os usuários não podem saber se existem máscaras de utilizador individual de suas contas. Além disso, os usuários não são obrigados a fazer qualquer coisa para ativar a auditoria de suas ações. Depois que um administrador de auditoria transforma em auditoria, opera automaticamente e os usuários não podem desativá-lo.

Quando o banco de dados está instalado, não existem máscaras de auditoria. Um administrador de auditoria deve especificar todas as máscaras, incluindo a máscara padrão e as máscaras globais.

Importante: As ações que o DBSA, um administrador de auditoria, ou do usuário informix são potencialmente perigosos para a segurança do servidor de banco de dados. Para reduzir o risco de um usuário sem escrúpulos abusando da conta informix, recomenda-se que as ações de informix sempre ser auditada. Este procedimento destina-se a evitar que um usuário sem escrúpulos de usar informix mexer com auditoria ou de concessão de acesso discricionário para outro usuário sem escrúpulos.

Códigos de Eventos

Abaixo estão os códigos de eventos
+---------+---------------+-----------------------------------------------+
| AUDIT   | COMMAND       | OBS                                           |
+---------+---------------+-----------------------------------------------+
| BGTX    | :ddl:         | BEGIN WORK                                    |
| CMTX    | :ddl:         | COMMIT WORK                                   |
| RLTX    | :ddl:         | ROLLBACK WORK                                 |
| ACTB    | :ddl:         | Access Table                                  |
| CLDB    | :ddl:         | CLOSE DATABASE                                |
| OPDB    | :ddl:         | DATABASE                                      |
| ULTB    | :ddl:         | Unlock Table                                  |
| LKTB    | :ddl:         | Lock Table                                    |
| STSN    | :ddl:         | Start Session                                 |
+---------+---------------+-----------------------------------------------+
| ADCK    | :dbsa:        | Add chunk                                     |
| ADLG    | :dbsa:        | Add log                                       |
+---------+---------------+-----------------------------------------------+
| ALFR    | :ddl:         | ALTER FRAGMENT                                |
| ALIX    | :ddl:         | ALTER INDEX                                   |
| ALLC    | :lbac:        | ALTER Security Label Component                |
| ALME    | :ius:         | Alter Access Method                           |
| ALOC    | :ius:         | ALTER Operator Class                          |
| ALSQ    | :ddl:         | ALTER SEQUENCE                                |
| ALTB    | :ddl:         | ALTER TABLE                                   |
+---------+---------------+-----------------------------------------------+
| CRAM    | :audit:       | Create Audit Mask                             |
| DRAM    | :audit:       | Drop audit mask                               |
| UPAM    | :audit:       | Update Audit Mask                             |
+---------+---------------+-----------------------------------------------+
| CRDB    | :dba:         | CREATE DATABASE                               |
| DRDB    | :dba:         | DROP DATABASE                                 |
+---------+---------------+-----------------------------------------------+
| CRAG    | :ius:         | CREATE AGGREGATE                              |
| CRBS    | :dbsa:        | CREATE storage space                          |
| CRBT    | :ius:         | CREATE opaque (binary) type                   |
| CRCT    | :ius:         | CREATE CAST                                   |
| CRDS    | :dbsa:        | CREATE dbspace                                |
| CRDT    | :ius:         | CREATE DISTINCT TYPE                          |
| CRIX    | :ddl:         | CREATE INDEX                                  |
| CRLB    | :lbac:        | CREATE LABEL                                  |
| CRLC    | :lbac:        | CREATE LABEL COMPONENT                        |
| CRME    | :ius:         | CREATE Access Method                          |
| CROC    | :ius:         | CREATE Operator Class                         |
| CRPL    | :lbac:        | CREATE POLICY                                 |
| CRPT    | :dml:         | Encryption or Decryption function             |
| CRRL    | :perms:       | CREATE ROLE                                   |
| CRRT    | :ius:         | CREATE named ROW TYPE                         |
| CRSN    | :ddl:         | CREATE SYNONYM                                |
| CRSP    | :ddl:         | CREATE STORED PROCEDURE                       |
| CRSQ    | :ddl:         | CREATE SEQUENCE                               |
| CRTB    | :ddl:         | CREATE TABLE                                  |
| CRTR    | :ddl:         | CREATE TRIGGER                                |
| CRVW    | :ddl:         | CREATE VIEW                                   |
| CRXD    | :ius:         | CREATE XA Data Source                         |
| CRXT    | :ius:         | CREATE XA Data Source Type                    |
+---------+---------------+-----------------------------------------------+
| DLRW    | :crud:        | DELETE ROW                                    |
| DNCK    | :dbsa:        | Down Chunk - offline                          |
| DNDM    | :dbsa:        | Disable disk mirroring                        |
| DRAG    | :ius:         | DROP AGGREGATE                                |
| DRBS    | :dbsa:        | DROP storage space                            |
| DRCK    | :dbsa:        | Drop chunk                                    |
| DRCT    | :ius:         | DROP CAST                                     |
| DRDS    | :dbsa:        | DROP dbspace                                  |
| DRIX    | :ddl:         | DROP INDEX                                    |
| DRLB    | :lbac:        | DROP LABEL                                    |
| DRLC    | :lbac:        | DROP LABEL COMPONENT                          |
| DRLG    | :dbsa:        | Drop transaction log (why no create?)         |
| DRME    | :ius:         | DROP Access Method                            |
| DROC    | :ius:         | DROP Operator Class                           |
| DRPL    | :lbac:        | DROP POLICY                                   |
| DRRL    | :perms:       | DROP ROLE                                     |
| DRRT    | :ius:         | DROP ROW TYPE                                 |
| DRSN    | :ddl:         | DROP SYNONYM                                  |
| DRSP    | :ddl:         | DROP STORED PROCEDURE                         |
| DRSQ    | :ddl:         | DROP SEQUENCE                                 |
| DRTB    | :ddl:         | DROP TABLE                                    |
| DRTR    | :ddl:         | DROP TRIGGER                                  |
| DRTY    | :ius:         | DROP TYPE                                     |
| DRVW    | :ddl:         | DROP VIEW                                     |
| DRXD    | :ius:         | DROP XA Data Source                           |
| DRXT    | :ius:         | DROP XA Data Source Type                      |
+---------+---------------+-----------------------------------------------+
| EXSP    | :dml:         | EXECUTE PROCEDURE                             |
+---------+---------------+-----------------------------------------------+
| GRDB    | :perms:       | GRANT DB privilege                            |
| GRDR    | :perms:       | GRANT DEFAULT ROLE                            |
| GRFR    | :perms:       | GRANT FRAGMENT                                |
| GRLB    | :lbac:        | GRANT SECURITY LABEL                          |
| GRRL    | :perms:       | GRANT ROLE                                    |
| GRSA    | :lbac:        | GRANT DBSECADM                                |
| GRSS    | :lbac:        | GRANT SETSESSIONAUTH                          |
| GRTB    | :perms:       | GRANT table permissions                       |
| GRXM    | :lbac:        | GRANT EXEMPTION                               |
+---------+---------------+-----------------------------------------------+
| INRW    | :crud:        | INSERT ROW                                    |
+---------+---------------+-----------------------------------------------+
| LGDB    | :dbsa:        | Change database log mode                      |
| LSAM    | :audit:       | List Audit Mask                               |
| LSDB    | :ddl:         | List databases                                |
+---------+---------------+-----------------------------------------------+
| MDLG    | :dbsa:        | Modify transaction logging                    |
+---------+---------------+-----------------------------------------------+
| ONAU    | :onutils:     | ON-Audit                                      |
| ONBR    | :onutils:     | ON-BAR                                        |
| ONCH    | :onutils:     | ON-Check                                      |
| ONIN    | :onutils:     | ON-Init                                       |
| ONLG    | :onutils:     | ON-Log                                        |
| ONLO    | :onutils:     | ON-Load                                       |
| ONMN    | :onutils:     | ON-Monitor                                    |
| ONMO    | :onutils:     | ON-Mode                                       |
| ONPA    | :onutils:     | ON-Params                                     |
| ONPL    | :onutils:     | ON-Pload                                      |
| ONSP    | :onutils:     | ON-Spaces                                     |
| ONST    | :onutils:     | ON-Stat                                       |
| ONTP    | :onutils:     | ON-Tape                                       |
| ONUL    | :onutils:     | ON-Unload                                     |
+---------+---------------+-----------------------------------------------+
| RDRW    | :crud:        | READ ROW                                      |
| RLOP    | :optical:     | Release optical cluster                       |
| RMCK    | :dbsa:        | Clear mirrored chunks                         |
| RNDB    | :dba:         | Rename database                               |
| RNDS    | :dbsa:        | Rename dbspace                                |
| RNIX    | :ddl:         | Rename index                                  |
| RNLB    | :lbac:        | Rename label                                  |
| RNLC    | :lbac:        | Rename label component                        |
| RNPL    | :lbac:        | Rename policy                                 |
| RNSQ    | :ddl:         | Rename sequence                               |
| RNTC    | :ddl:         | Rename table/column                           |
+---------+---------------+-----------------------------------------------+
| RSOP    | :optical:     | Reserve optical cluster                       |
+---------+---------------+-----------------------------------------------+
| RVDB    | :perms:       | Revoke Database Privileges                    |
| RVDR    | :perms:       | Revoke Default Role                           |
| RVFR    | :perms:       | Revoke Fragment                               |
| RVLB    | :lbac:        | Revoke Label                                  |
| RVRL    | :perms:       | Revoke Role                                   |
| RVSA    | :lbac:        | Revoke DBSECADM                               |
| RVSS    | :lbac:        | Revoke SETSESSIONAUTH                         |
| RVTB    | :perms:       | Revoke table privileges                       |
| RVXM    | :lbac:        | Revoke exemption                              |
+---------+---------------+-----------------------------------------------+
| SCSP    | :dml:         | SYSTEM command in Stored Procedure            |
+---------+---------------+-----------------------------------------------+
| STCN    | :ddl:         | SET CONSTRAINT                                |
| STCO    | :dml:         | SET COLLATION                                 |
| STDF    | :dml:         | SET DEBUG FILE                                |
| STDP    | :perms:       | SET DATABASE PASSWORD                         |
| STDS    | :dml:         | SET DATASKIP                                  |
| STEP    | :dml:         | SET ENCRYPTION PASSWORD                       |
| STEV    | :dml:         | SET ENVIRONMENT                               |
| STEX    | :dml:         | SET EXPLAIN                                   |
| STIL    | :dml:         | SET ISOLATION                                 |
| STLM    | :dml:         | SET LOCK MODE                                 |
| STNC    | :dml:         | SET NO COLLATION                              |
| STOM    | :ddl:         | SET object mode                               |
| STOP    | :ddl:         | STOP VIOLATIONS                               |
| STPR    | :dml:         | SET PDQPRIORITY                               |
| STRL    | :perms:       | SET ROLE                                      |
| STRS    | :dba:         | SET RESIDENT                                  |
| STRT    | :ddl:         | START VIOLATIONS                              |
| STSA    | :perms:       | SET SESSION AUTHORIZATION                     |
| STSC    | :dbsa:        | SET STATEMENT CACHE                           |
| STTX    | :dml:         | SET TRANSACTION                               |
| SVXD    | :ddl:         | SAVE EXTERNAL DIRECTIVES                      |
+---------+---------------+-----------------------------------------------+
| TCTB    | :ddl:         | Truncate table                                |
+---------+---------------+-----------------------------------------------+
| ALOP    | :optical:     | ALTER Optical Cluster                         |
| CROP    | :optical:     | CREATE OPTICAL CLUSTER                        |
| DROP    | :optical:     | DROP OPTICAL CLUSTER                          |
| TMOP    | :optical:     | Optical timeout                               |
+---------+---------------+-----------------------------------------------+
| UPCK    | :dbsa:        | UP Chunk                                      |
| UPDM    | :dbsa:        | Enable Disk Mirroring                         |
+--------+----------------+-----------------------------------------------+
| UPRW    | :crud:        | UPDATE row                                    |
+---------+---------------+-----------------------------------------------+
| USSP    | :ddl:         | UPDATE STATISTICS - Stored procedure          |
| USTB    | :ddl:         | UPDATE STATISTICS - Table                     |
+---------+---------------+-----------------------------------------------+
| DRDM    | :domain:      | DROP DOMAIN                                   |
| CRDM    | :domain:      | CREATE domain                                 |
+---------+---------------+-----------------------------------------------+
Descrição do comando onaudit
 onaudit ?
Onaudit -- Audit Subsystem Configuration Utility

Usage: onaudit  [-f file] [-u name] [-r bmsk] [-e eset] [-y]
       onaudit [-c] [-n] [-l lev] [-e err] [-p path] [-s size]
action: one of
    -a   -- add a mask
    -d   -- delete a mask
    -m   -- modify a mask
    -o   -- output a mask
 -r bmsk -- name of basemask
 -c      -- print audit configuration
 -n      -- start new log file
 -l lev  -- set ADTMODE
 -e err  -- set ADTERR
 -p path -- set ADTPATH
 -s size -- set ADTSIZE
 -f file -- include instruction file
 -u mask -- name of target/mask
 -e eset -- event set added to (+) or removed from (-) mask
 -R fga  -- set ADTROWS for Fine-Grained Auditing
 -y      -- respond yes to all prompts
Demostrando a Auditoria 1

1. Criar uma máscara usuário individual. Para este exemplo, a máscara do usuário é pat e os eventos a serem auditados será a criação de bases de dados e soltando.
    onaudit -a -u pat -e +CRDB,DRDB
2. Execute o comando onaudit -o -y para mostrar os eventos de auditoria de todos os usuários definidos. A saída é apresentada da seguinte forma:
    _require    -    GRDB,GRTB,OPDB,RVDB,RVTB,STOM,GRFR,RVFR,CRRL,GRRL,RVRL,STRL,STSA
    pat         -   CRDB,DRDB
3. Execute os seguintes comandos SQL como pat usuário:
    CREATE DATABASE test;
    CREATE TABLE tab1
     (
     col1 INT
      );
    DATABASE sysmaster;
    DROP DATABASE test;
4. Execute onshowaudit para exibir os eventos controlados para o usuário pat. Os eventos são exibidos aqui.
    > onshowaudit

    ONLN|2002-10-31 14:25:10.000|digger2|2684|pat|pat|0:CRDB:test:-
    ONLN|2002-10-31 14:25:28.000|digger2|2684|pat|pat|0:OPDB:sysmaster:0:-
    ONLN|2002-10-31 14:25:28.000|digger2|2684|pat|pat|0:DRDB:test:-
Formato do registro de auditoria

O servidor de banco de dados gera a segunda parte do registro de auditoria, com campos que dependem do evento de auditoria.

A Tabela abaixo mostra o formato dos registros de auditoria do servidor de banco de dados.
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | Date and Time           | hostname            | pid  | database     | user  | errno | event    | Additional Fields   |
|      |                         | hostname.domain.ext |      | server name  | name  |       | mnemonic |                     |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:00.000 | turk                | 4549 | khan         | jazt  | 0     | CRDB     | dbsch               |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:18.000 | turk                | 4549 | khan         | jazt  | 0     | ACTB     | dbsch:jazt:v1:103   |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:19.000 | turk                | 4549 | khan         | jazt  | 0     | CLDB     | dbsh                |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:21.000 | turk                | 4549 | khan         | jazt  | 0     | ALFR     | local:109:-:-:4:4:  |
|      |                         |                     |      |              |       |       |          | db1,db2,db3,        |
|      |                         |                     |      |              |       |       |          | rootdbs:0           | 
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:28.000 | turk                | 4549 | khan         | jazt  | 0     | ALFR     | local:109:aa5x:-:   |
|      |                         |                     |      |              |       |       |          | 32:4: db1,db2       |
|      |                         |                     |      |              |       |       |          | rootdbs:0           |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:29.000 | turk                | 4549 | khan         | jazt  | 0     | STDS     | 2:-                 |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
| ONLN | 2008-07-28 15:43:29.000 | turk                | 4549 | khan         | jazt  | 0     | STPR     | 100                 |
+------+-------------------------+---------------------+------+--------------+-------+-------+----------+---------------------+
Detalhes;
+-----------------------+------------------------------------------------------------------------------------------------------+
| ONLN                  | Um campo fixo utilizado para identificar eventos                                                     |
+-----------------------+------------------------------------------------------------------------------------------------------+
| date and time         | Indica quando o evento de auditoria foi gravado                                                      |
+-----------------------+------------------------------------------------------------------------------------------------------+
| hostname              | O nome do computador host UNIX do aplicativo cliente que executa o evento de auditoria               |
+-----------------------+------------------------------------------------------------------------------------------------------+
| hostname.domain.ext   | O nome do computador com o Windows de host, domínio e extensão da aplicação do                       | 
|                       | cliente que executa o evento de auditoria.                                                           |  
+-----------------------+------------------------------------------------------------------------------------------------------+
| pid                   | O ID do processo do aplicativo cliente que faz com que o servidor de banco de                        |   
|                       | dados para executar o evento de auditoria.                                                           | 
+-----------------------+------------------------------------------------------------------------------------------------------+
| database server name  | O nome do servidor de banco de dados no qual o evento de auditoria é executado                       |
+-----------------------+------------------------------------------------------------------------------------------------------+
| user name             | O nome de login do usuário que solicita o evento                                                     |
+-----------------------+------------------------------------------------------------------------------------------------------+
| errno                 | O resultado de evento que contém o número do erro que o evento retorna, indicando o sucesso (0) ou   |
|                       | falha.                                                                                               |
+-----------------------+------------------------------------------------------------------------------------------------------+
| event mnemônico       | Evento de auditoria de servidor de banco de dados que o servidor de banco de dados correu, como      |
|                       | ALFR (Alter Fragment).                                                                               |
+-----------------------+------------------------------------------------------------------------------------------------------+
| Additional Fields     | Todos os campos que identificam bases de dados, tabelas, e assim por diante. Estes campos adicionais | 
|                       | são campos de auditoria de eventos que contêm informações capturadas em forma de tabela pelo         |
|                       | utilitário onshowaudit para análise da auditoria .                                                   |
+-----------------------+------------------------------------------------------------------------------------------------------+
5. Repita o passo 3 como usuário informix.

6. Execute onshowaudit para exibir os eventos controlados para informix usuário. Os eventos são exibidos aqui.
     > onshowaudit

    ONLN|2002-10-31 14:38:35.000|digger2|2711|informix|informix|0:OPDB:sysmaster:0:- 
Note-se que os eventos CRDB (create database), OPDB (open database), e DRDB (drop database) são mostrados para o usuário pat, mas o usuário informix só mostra OPDB.

Além disso, observe que a auditoria não registra o evento CRTB (create table) para qualquer usuário, porque não é parte de qualquer uma das máscaras de auditoria.

Comandos ONAUDIT

Alguns exemplos de comandos
+---------------------------------+-------------------------------------------------------------------------+
| comandos                        | descrição                                                               |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -o -y                   | lista todos as regras/mascaras                                          |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -o -u teste             | lista todos as regras/mascaras do usuário teste                         | 
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -l 1                    | inicia auditoria                                                        | 
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -l 0                    | para auditoria                                                          |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -f (adtmask_file)       | Cria regras baseadas em arquivo  (não sobrescreve config ja existente)  | 
----------------------------------+-------------------------------------------------------------------------+
| onaudit -a -u teste -e (regras) | Cria regras para usuário teste                                          |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -m -u teste -e          | altera regras                                                           |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -d -u teste             | apaga regra do usuario teste                                            |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -d -y                   | apaga todas as regras                                                   |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -l 1 -p /log -n         | altera diretório de log (é necessario ter -l 1 e -n)                    |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -c                      | display dos parametros da audit                                         |
+---------------------------------+-------------------------------------------------------------------------+
| onaudit -R 1                    | command enables selective row-level auditing                            |
+---------------------------------+-------------------------------------------------------------------------+
Demostrando a Auditoria 2

Primeiro vamos ser se existe alguma mascara ativada
[s343:informix]$/> onaudit -o -y
Onaudit -- Audit Subsystem Configuration Utility 
Vamos criar uma mascara individual para o usuário informix onde quero pegar quando ele criar um novo banco, criar novas tabelas, quando ele renomear um banco e quero pegar também quando ele deletar um banco;
+---------+---------------+-----------------------------------------------+
| CRDB    | :dba:         | CREATE DATABASE                               |
| CRTB    | :ddl:         | CREATE TABLE                                  |
| RNDB    | :dba:         | Rename database                               |
| DRDB    | :dba:         | DROP DATABASE                                 |
+---------+---------------+-----------------------------------------------+
O comando é este
[s343:informix]$/> onaudit -a -u informix -e +CRDB,CRTB,RNDB,DRDB
Onaudit -- Audit Subsystem Configuration Utility
Vendo se existe alguma mascara individual - tem a do usuário informix que acabamos de criar
[s343:informix]$/> onaudit -o -y
Onaudit -- Audit Subsystem Configuration Utility

informix                                -       CRDB,CRTB,RNDB,DRDB
Criando um novo banco chamado aafai240
[s343:informix]$/> echo "create database aafai240 with log;" | dbaccess sysmaster

Database selected.
Database closed.
Database created.
Database closed.
Criando uma tabela chamada audit_db
[s343:informix]$/> echo "CREATE TABLE dba.audit_db ( audit_system CHAR(4) NOT NULL, audit_dt_ocorrido CHAR(23) NOT NULL)" | dbaccess aafai240

Database selected.
Table created.
Database closed.
Renomeando o banco aafai240 para aafanatb
[s343:informix]$/> echo "rename database aafai240 to aafanatb" | dbaccess sysmaster

Database selected.
Database renamed.
Database closed.
Dropando o banco aafanatb
[s343:informix]$/> echo "drop database aafanatb" | dbaccess sysmaster

Database selected.
Database dropped.
Database closed.
Olhando a auditoria
[s343:informix]$/> onshowaudit 
Resultado - no final apareceu o que fiz
---- corte ---- no final ----
ONLN|2013-11-22 15:44:54.000|s343.ms|5349|desenv|informix|0:CRDB:aafai240:-
ONLN|2013-11-22 15:47:06.000|s343.ms|5399|desenv|informix|0:CRTB:aafai240:100:audit_db:dba:0:-
ONLN|2013-11-22 15:49:00.000|s343.ms|5411|desenv|informix|0:RNDB:aafai240:aafanatb:informix                        
ONLN|2013-11-22 15:49:44.000|s343.ms|5416|desenv|informix|0:DRDB:aafanatb:-
Listando a mascara individual
[s343:informix]$/> onaudit -o -y
Onaudit -- Audit Subsystem Configuration Utility

informix                                -       CRDB,CRTB,DRDB,DRTB,RNDB
Deletando a mascara individual do usuário informix
[s343:informix]$/> onaudit -d -u informix
Listando as mascaras individuais - não tem nenhuma
[s343:informix]$/> onaudit -o -y
Onaudit -- Audit Subsystem Configuration Utility

0 comentários:

Enviar um comentário