Aumentando a segurança com "Role Separation"

Versão para impressãoEnviar para amigoVersão PDF

Antes, uma observação, não confundir role separation com roles.
Role Separation é uma configuração de segurança no nível de Instancia.
Roles são "profiles" de permissões aos objetos do banco de dados.

Role Separation é separação a nível de grupos de usuários no sistema operacional para cada responsabilidade no sistema. Não permitindo assim que um usuário X possa realizar tarefas do usuário Y.

  • É preciso ter conhecimento dos seguintes "papéis":
    • OSA : Operation System Administrator
    • DBSA : Database Server Administrator.
      Tunna e administra o banco (DDL)
    • DBSSO : Database Server Security Officer
      Define as regras "roles" e mascaras "masks" do que será auditado.
    • AAO : Audit Analysis Officer
      Papel que realiza a auditoria baseado nas regras e mascaras definida pelo dbsso. Também é quem decide quando iniciar ou para o processo (onaudit) de auditoria.
    • USER : Usuários do banco
  • O usuário "informix" não tem limitações, ele pertence a todos os grupos
  • O usuário AAO audita a todos, incluindo os DBSA, DBSSO (inclusive alterações de regras e mascaras efetuadas com o onaudit.
  • Responsabilidades de cada usuário ( copiado do manual Security Guide IDS 11.10 pagina 110).
    • Specify events to audit in the default, user, and global audit masks (DBSSO)
    • Specify how the database server should behave if an auditing error occurs when an audit record is written (AAO)
    • Determine the desired level of auditing (AAO)
    • Turn on auditing (AAO)
    • Specify the directory where audit files are located (AAO)
  • Para utilizar o Role Separation é preciso criar os grupos de usuário no sistema operacional para cada regra.
  • UNIX: Quando ativo o Role Separation, para identificar qual o grupo de cada regra basta verificar o owner (group id) dos diretórios:
    AAO : $INFORMIXDIR/aaodir
    DBSSO : $INFORMIXDIR/dbssodir
    DBSA : $INFORMIXDIR/etc
    USER : - (ver abaixo)
    WINDOWS: Verificar registros
  • O usuário Informix sempre será DBSA, independente do grupo configurado no $INFORMIXDIR/etc
  • Para os usuários que acessam o BD o controle é feito através do arquivo $INFORMIXDIR/dbssodir/seccfg. Onde é definido a opção IXUSERS=* para todos os usuários ou IXUSERS=grupo_xyz para apenas os usuários do grupo_xyz
  • Para habilitar o Role Separation
    UNIX: No momento da instalação do IDS ou alterando os owners(gid) dos diretórios aaodir, dbssodir, etc.
    WINDOWS: Apenas no momento da instalação do IDS.
  • Para desabilitar o Role Separation
    UNIX: Basta voltar o owner do diretórios para "informix"
  • Quando Role Separation for ativo e o grupo DBSA for configurado para algo != informix
    • Arquivo ONCONFIG *tem* que ter seu group id = DBSA group deve/pode ter permissão de gravação para o grupo (DBSA) não pode ter permissão de gravação para "other group"
    • Arquivo SQLHOSTS *pode* ter seu group id = DBSA group não pode ter permissão de gravação para "other group"
  • BUGs:
    • v11.50 Quando especificado o grupo do usuário no seccfg IXUSERS, os usuários conseguem acessar localmente, porém via TCP apartir de uma maquina windows, não deu permissão de acesso.
  • Ao definir o grupo de usuários no arquivo $INFORMIXDIR/dbssodir/seccfg o usuário informix perde acesso ao banco pois não faz parte do grupo do usuário, impendindo assim de acessar tabelas de SMI e qualquer banco. Para resolver a situação basta adiciona-lo no grupo dos usuários e o acesso é liberado imediatamente.

0
Ainda não votado
Sua avaliação: Nenhum

Comentar

O conteúdo deste campo é privado não será exibido ao público.
  • Endereços de páginas de internet e emails viram links automaticamente.
  • Você pode usar tags BBCode no texto.
  • Tags HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>

Mais informações sobre as opções de formatação

CAPTCHA
Este teste é para bloquear programas automatizados e previnir spams
CAPTCHA de Imagem
Digite o texto exibido na imagem.