[oracle_br] Re: VPD e FGA

2006-03-28 Por tôpico jlchiappa
Pra complementar, esse _rls da package DBMS_RLS é de Row Level
Security, é ainda outra sigla pra mesma coisa, como mostrado em
http://www.securityfocus.com/infocus/1743 , por exemplo. Não tem muito
jeito, na área de TI nós (DBAs , DAs, SAs, programadores, nós todos
enfim) adoramos uma siglazinha...

[]s

 Chiappa
 
--- Em oracle_br@yahoogrupos.com.br, "jlchiappa" <[EMAIL PROTECTED]> escreveu
>
> Não é FGA, é FGAC que eu disse (Fine Grained Access Control), FGAC 
> sim é o mesmo que VPD, sim, é implementado pela package citado.
>   FGA existe, é sim implementado pela DBMS_FGA sim, mas FGA (Fine 
> Grained Audit) serve pra auditoria, é coisa diferente .
> 
> []s
> 
>  Chiappa
> 
> --- Em oracle_br@yahoogrupos.com.br, [EMAIL PROTECTED] escreveu
> >
> > Chiappa,
> >  VPD e FGA não são coisas diferentes? VPD não seria para 
> > controlar a segurança à nivel de linha e a nível de coluna, e FGA 
> não 
> > seria para fazer auditoria de instruções SELECT e DMLs?  A package 
> de 
> > manipulação do VPD seria o DBMS_RLS e do FGA o DBMS_FGA, correto?
> > 
> > 
> > Abs
> >Jonathan Barbosa
> > 
> > - Original Message - From: "jlchiappa" <[EMAIL PROTECTED]>
> > To: 
> > Sent: Tuesday, March 28, 2006 1:38 PM
> > Subject: [oracle_br] Re: Segurança
> > 
> > 
> > Bom, não há uma receita de bolo exata e precisa pra isso, mas de 
> modo geral :
> > 
> > necessidade 1, criptografar : vc vai precisar escrever uma pequena 
> > rotina pra isso, tradicionalmente isso era feito com a package 
> > DBMS_OBFUSCATION_TOOLKIT, no 10g foi introduzida a DBMS_CRYPTO, que 
> é 
> > uma melhoria dela. No manual 10g de Supplied Packages vc acha as 
> > sintaxes e alguns exemplos de ambas, em 
> > http://www.dbasupport.com/oracle/ora10g/10g_PLSQL01.shtml , 
> > 
> http://www.dbasupport.com/oracle/ora10g/DBMS_OBFUSCATION_TOOLKIT.shtml
> > e http://asktom.oracle.com (use a opção Search procurando por 
> > DBMS_CRYPTO) algumas dicas.
> > 
> >   necessidade 2, restringir acesso de acordo com usuário : primeira 
> > coisa, o nome do usuário que fez a inserção ** NÃO ** fica 
> > automaticamente guardado em lugar algum, vc VAI ter que guardar 
> isso 
> > pra poder usar depois na hora de SELECTs - o mais comum seria vc 
> ter 
> > uma coluna NOME_USUARIO nas tabelas, provavelmente preenchida 
> > automaticamente por um trigger.   Uma vez vc já tendo a informação 
> de 
> > quem inseriu (e portanto pode "enxergar") cada linha, pra que cada 
> > usuário só "veja" os seus registros, OU vc só dá pros usuários 
> acesso a 
> > uma VIEW que filtra isso, tipo CREATE VIEW V_TABELA as (select * 
> from 
> > tabela where NOME_USUARIO=user; , OU então vc usa o recurso do FGAC 
> > (Fine Grained Access Control), também conhecido como VPD (Virtual 
> > Private Database), com esse recurso automaticamente o banco vai 
> > "interceptar" cada SQL que vc indicar e adicionar uma condição de 
> WHERE 
> > , no caso a condição de where NOME_USUARIO=user , o que dá o 
> resultado 
> > desejado também. []s
> >   Chiappa
> > 
> > --- Em oracle_br@yahoogrupos.com.br, "Ricardo Lyrio" <[EMAIL PROTECTED]> 
> escreveu
> > >
> > > Tenho a seguinte situação:
> > >
> > >  Oracle 10gR2, e preciso implementar segurança em determinadas
> > colunas de
> > > algumas tabelas da seguinte maneira:
> > >
> > >  Um usuário que cadastrou um registro na tabela A somente ele e 
> mais
> > ninguém
> > > poderá ver o registro, inclusive num select com permissões de DBA
> > eu não
> > > posso ver o conteúdo do registro, ele precisa vir criptografado.
> > >
> > >  Alguém tem alguma idéia de qual caminho seguir?
> > >
> > >  Abraço a todos e desde já agradeço a ajuda
> > >
> > > Ricardo Lyrio
> > >
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> --
> > Atenção! As mensagens deste grupo são de acesso público e de 
> inteira 
> > responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> > 
> --
> __
> > 
> > Este Grupo recebe o apoio da SQL Magazine - 
> > www.devmedia.com.br/sqlmagazine 
> > __
> > O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, 
> > tenha o link do mesmo para evitar trafego(pedidos) desnecessário. 
> Links 
> > do Yahoo! Grupos
> >
>







--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
---

[oracle_br] Re: VPD e FGA

2006-03-28 Por tôpico jlchiappa
É, relendo realmente não ficou bem claro no meu texto original, mas é
isso mesmo : vc indica o elemento participante do SQL (seja tabela ou
view ou similar), o banco  "monitora" os SQLs recebidos, assim que um
SQL com esse elemento chegar, o SQL é "capturado", alterado
adicionando-se o WHERE desejado, e essa versão alterada é que será
executada, sim...

[]s

 Chiappa
--- Em oracle_br@yahoogrupos.com.br, Anderson Haertel Rodrigues
<[EMAIL PROTECTED]> escreveu
>
> >VPD (Virtual Private Database), com esse recurso
> >automaticamente o banco vai "interceptar" cada SQL
> que >vc indicar
> Só para ficar mais claro, você não indica o SQL
> (SELECT), e sim a Tabela, View ou Sinônimo. 
> 
> No 10g, você ainda pode ir mais longe, além de indicar
> a Tabela (como citado acima), tu pode indicar o nome
> da Coluna (isto é, se no SELECT enviado, conter o nome
> da Tabela e o nome da Coluna), o VPD/RLS/FGAC entra em
> ação.
> 
> Anderson Haertel Rodrigues
> Administrador de Banco de Dados - DBA
> Florianópolis/SC
> 
> 
> 
> 
> --- jlchiappa <[EMAIL PROTECTED]> escreveu:
> 
> > Não é FGA, é FGAC que eu disse (Fine Grained Access
> > Control), FGAC 
> > sim é o mesmo que VPD, sim, é implementado pela
> > package citado.
> >   FGA existe, é sim implementado pela DBMS_FGA sim,
> > mas FGA (Fine 
> > Grained Audit) serve pra auditoria, é coisa
> > diferente .
> > 
> > []s
> > 
> >  Chiappa
> > 
> > --- Em oracle_br@yahoogrupos.com.br, [EMAIL PROTECTED]
> > escreveu
> > >
> > > Chiappa,
> > >  VPD e FGA não são coisas diferentes? VPD
> > não seria para 
> > > controlar a segurança à nivel de linha e a nível
> > de coluna, e FGA 
> > não 
> > > seria para fazer auditoria de instruções SELECT e
> > DMLs?  A package 
> > de 
> > > manipulação do VPD seria o DBMS_RLS e do FGA o
> > DBMS_FGA, correto?
> > > 
> > > 
> > > Abs
> > >Jonathan Barbosa
> > > 
> > > - Original Message - From: "jlchiappa"
> > <[EMAIL PROTECTED]>
> > > To: 
> > > Sent: Tuesday, March 28, 2006 1:38 PM
> > > Subject: [oracle_br] Re: Segurança
> > > 
> > > 
> > > Bom, não há uma receita de bolo exata e precisa
> > pra isso, mas de 
> > modo geral :
> > > 
> > > necessidade 1, criptografar : vc vai precisar
> > escrever uma pequena 
> > > rotina pra isso, tradicionalmente isso era feito
> > com a package 
> > > DBMS_OBFUSCATION_TOOLKIT, no 10g foi introduzida a
> > DBMS_CRYPTO, que 
> > é 
> > > uma melhoria dela. No manual 10g de Supplied
> > Packages vc acha as 
> > > sintaxes e alguns exemplos de ambas, em 
> > >
> >
> http://www.dbasupport.com/oracle/ora10g/10g_PLSQL01.shtml
> > , 
> > > 
> >
> http://www.dbasupport.com/oracle/ora10g/DBMS_OBFUSCATION_TOOLKIT.shtml
> > > e http://asktom.oracle.com (use a opção Search
> > procurando por 
> > > DBMS_CRYPTO) algumas dicas.
> > > 
> > >   necessidade 2, restringir acesso de acordo com
> > usuário : primeira 
> > > coisa, o nome do usuário que fez a inserção ** NÃO
> > ** fica 
> > > automaticamente guardado em lugar algum, vc VAI
> > ter que guardar 
> > isso 
> > > pra poder usar depois na hora de SELECTs - o mais
> > comum seria vc 
> > ter 
> > > uma coluna NOME_USUARIO nas tabelas, provavelmente
> > preenchida 
> > > automaticamente por um trigger.   Uma vez vc já
> > tendo a informação 
> > de 
> > > quem inseriu (e portanto pode "enxergar") cada
> > linha, pra que cada 
> > > usuário só "veja" os seus registros, OU vc só dá
> > pros usuários 
> > acesso a 
> > > uma VIEW que filtra isso, tipo CREATE VIEW
> > V_TABELA as (select * 
> > from 
> > > tabela where NOME_USUARIO=user; , OU então vc usa
> > o recurso do FGAC 
> > > (Fine Grained Access Control), também conhecido
> > como VPD (Virtual 
> > > Private Database), com esse recurso
> > automaticamente o banco vai 
> > > "interceptar" cada SQL que vc indicar e adicionar
> > uma condição de 
> > WHERE 
> > > , no caso a condição de where NOME_USUARIO=user ,
> > o que dá o 
> > resultado 
> > > desejado também. []s
> > >   Chiappa
> > > 
> > > --- Em oracle_br@yahoogrupos.com.br, "Ricardo
> > Lyrio" <[EMAIL PROTECTED]> 
> > escreveu
> > > >
> > > > Tenho a seguinte situação:
> > > >
> > > >  Oracle 10gR2, e preciso implementar segurança
> > em determinadas
> > > colunas de
> > > > algumas tabelas da seguinte maneira:
> > > >
> > > >  Um usuário que cadastrou um registro na tabela
> > A somente ele e 
> > mais
> > > ninguém
> > > > poderá ver o registro, inclusive num select com
> > permissões de DBA
> > > eu não
> > > > posso ver o conteúdo do registro, ele precisa
> > vir criptografado.
> > > >
> > > >  Alguém tem alguma idéia de qual caminho seguir?
> > > >
> > > >  Abraço a todos e desde já agradeço a ajuda
> > > >
> > > > Ricardo Lyrio
> 
> Anderson Haertel Rodrigues
> Administrador de Banco de Dados - DBA
> Florianópolis/SC
> 
> 
>   
> 
> 
> 
>   
>   
> ___ 
> Yahoo! doce lar. Faça do Yahoo! sua homepage. 
> http://br.yahoo.com/homepageset.html
>





Re: [oracle_br] Re: VPD e FGA

2006-03-28 Por tôpico Anderson Haertel Rodrigues
>VPD (Virtual Private Database), com esse recurso
>automaticamente o banco vai "interceptar" cada SQL
que >vc indicar
Só para ficar mais claro, você não indica o SQL
(SELECT), e sim a Tabela, View ou Sinônimo. 

No 10g, você ainda pode ir mais longe, além de indicar
a Tabela (como citado acima), tu pode indicar o nome
da Coluna (isto é, se no SELECT enviado, conter o nome
da Tabela e o nome da Coluna), o VPD/RLS/FGAC entra em
ação.

Anderson Haertel Rodrigues
Administrador de Banco de Dados - DBA
Florianópolis/SC




--- jlchiappa <[EMAIL PROTECTED]> escreveu:

> Não é FGA, é FGAC que eu disse (Fine Grained Access
> Control), FGAC 
> sim é o mesmo que VPD, sim, é implementado pela
> package citado.
>   FGA existe, é sim implementado pela DBMS_FGA sim,
> mas FGA (Fine 
> Grained Audit) serve pra auditoria, é coisa
> diferente .
> 
> []s
> 
>  Chiappa
> 
> --- Em oracle_br@yahoogrupos.com.br, [EMAIL PROTECTED]
> escreveu
> >
> > Chiappa,
> >  VPD e FGA não são coisas diferentes? VPD
> não seria para 
> > controlar a segurança à nivel de linha e a nível
> de coluna, e FGA 
> não 
> > seria para fazer auditoria de instruções SELECT e
> DMLs?  A package 
> de 
> > manipulação do VPD seria o DBMS_RLS e do FGA o
> DBMS_FGA, correto?
> > 
> > 
> > Abs
> >Jonathan Barbosa
> > 
> > - Original Message - From: "jlchiappa"
> <[EMAIL PROTECTED]>
> > To: 
> > Sent: Tuesday, March 28, 2006 1:38 PM
> > Subject: [oracle_br] Re: Segurança
> > 
> > 
> > Bom, não há uma receita de bolo exata e precisa
> pra isso, mas de 
> modo geral :
> > 
> > necessidade 1, criptografar : vc vai precisar
> escrever uma pequena 
> > rotina pra isso, tradicionalmente isso era feito
> com a package 
> > DBMS_OBFUSCATION_TOOLKIT, no 10g foi introduzida a
> DBMS_CRYPTO, que 
> é 
> > uma melhoria dela. No manual 10g de Supplied
> Packages vc acha as 
> > sintaxes e alguns exemplos de ambas, em 
> >
>
http://www.dbasupport.com/oracle/ora10g/10g_PLSQL01.shtml
> , 
> > 
>
http://www.dbasupport.com/oracle/ora10g/DBMS_OBFUSCATION_TOOLKIT.shtml
> > e http://asktom.oracle.com (use a opção Search
> procurando por 
> > DBMS_CRYPTO) algumas dicas.
> > 
> >   necessidade 2, restringir acesso de acordo com
> usuário : primeira 
> > coisa, o nome do usuário que fez a inserção ** NÃO
> ** fica 
> > automaticamente guardado em lugar algum, vc VAI
> ter que guardar 
> isso 
> > pra poder usar depois na hora de SELECTs - o mais
> comum seria vc 
> ter 
> > uma coluna NOME_USUARIO nas tabelas, provavelmente
> preenchida 
> > automaticamente por um trigger.   Uma vez vc já
> tendo a informação 
> de 
> > quem inseriu (e portanto pode "enxergar") cada
> linha, pra que cada 
> > usuário só "veja" os seus registros, OU vc só dá
> pros usuários 
> acesso a 
> > uma VIEW que filtra isso, tipo CREATE VIEW
> V_TABELA as (select * 
> from 
> > tabela where NOME_USUARIO=user; , OU então vc usa
> o recurso do FGAC 
> > (Fine Grained Access Control), também conhecido
> como VPD (Virtual 
> > Private Database), com esse recurso
> automaticamente o banco vai 
> > "interceptar" cada SQL que vc indicar e adicionar
> uma condição de 
> WHERE 
> > , no caso a condição de where NOME_USUARIO=user ,
> o que dá o 
> resultado 
> > desejado também. []s
> >   Chiappa
> > 
> > --- Em oracle_br@yahoogrupos.com.br, "Ricardo
> Lyrio" <[EMAIL PROTECTED]> 
> escreveu
> > >
> > > Tenho a seguinte situação:
> > >
> > >  Oracle 10gR2, e preciso implementar segurança
> em determinadas
> > colunas de
> > > algumas tabelas da seguinte maneira:
> > >
> > >  Um usuário que cadastrou um registro na tabela
> A somente ele e 
> mais
> > ninguém
> > > poderá ver o registro, inclusive num select com
> permissões de DBA
> > eu não
> > > posso ver o conteúdo do registro, ele precisa
> vir criptografado.
> > >
> > >  Alguém tem alguma idéia de qual caminho seguir?
> > >
> > >  Abraço a todos e desde já agradeço a ajuda
> > >
> > > Ricardo Lyrio

Anderson Haertel Rodrigues
Administrador de Banco de Dados - DBA
Florianópolis/SC








___ 
Yahoo! doce lar. Faça do Yahoo! sua homepage. 
http://br.yahoo.com/homepageset.html 



--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

[oracle_br] Re: VPD e FGA

2006-03-28 Por tôpico jlchiappa
Não é FGA, é FGAC que eu disse (Fine Grained Access Control), FGAC 
sim é o mesmo que VPD, sim, é implementado pela package citado.
  FGA existe, é sim implementado pela DBMS_FGA sim, mas FGA (Fine 
Grained Audit) serve pra auditoria, é coisa diferente .

[]s

 Chiappa

--- Em oracle_br@yahoogrupos.com.br, [EMAIL PROTECTED] escreveu
>
> Chiappa,
>  VPD e FGA não são coisas diferentes? VPD não seria para 
> controlar a segurança à nivel de linha e a nível de coluna, e FGA 
não 
> seria para fazer auditoria de instruções SELECT e DMLs?  A package 
de 
> manipulação do VPD seria o DBMS_RLS e do FGA o DBMS_FGA, correto?
> 
> 
> Abs
>Jonathan Barbosa
> 
> - Original Message - From: "jlchiappa" <[EMAIL PROTECTED]>
> To: 
> Sent: Tuesday, March 28, 2006 1:38 PM
> Subject: [oracle_br] Re: Segurança
> 
> 
> Bom, não há uma receita de bolo exata e precisa pra isso, mas de 
modo geral :
> 
> necessidade 1, criptografar : vc vai precisar escrever uma pequena 
> rotina pra isso, tradicionalmente isso era feito com a package 
> DBMS_OBFUSCATION_TOOLKIT, no 10g foi introduzida a DBMS_CRYPTO, que 
é 
> uma melhoria dela. No manual 10g de Supplied Packages vc acha as 
> sintaxes e alguns exemplos de ambas, em 
> http://www.dbasupport.com/oracle/ora10g/10g_PLSQL01.shtml , 
> 
http://www.dbasupport.com/oracle/ora10g/DBMS_OBFUSCATION_TOOLKIT.shtml
> e http://asktom.oracle.com (use a opção Search procurando por 
> DBMS_CRYPTO) algumas dicas.
> 
>   necessidade 2, restringir acesso de acordo com usuário : primeira 
> coisa, o nome do usuário que fez a inserção ** NÃO ** fica 
> automaticamente guardado em lugar algum, vc VAI ter que guardar 
isso 
> pra poder usar depois na hora de SELECTs - o mais comum seria vc 
ter 
> uma coluna NOME_USUARIO nas tabelas, provavelmente preenchida 
> automaticamente por um trigger.   Uma vez vc já tendo a informação 
de 
> quem inseriu (e portanto pode "enxergar") cada linha, pra que cada 
> usuário só "veja" os seus registros, OU vc só dá pros usuários 
acesso a 
> uma VIEW que filtra isso, tipo CREATE VIEW V_TABELA as (select * 
from 
> tabela where NOME_USUARIO=user; , OU então vc usa o recurso do FGAC 
> (Fine Grained Access Control), também conhecido como VPD (Virtual 
> Private Database), com esse recurso automaticamente o banco vai 
> "interceptar" cada SQL que vc indicar e adicionar uma condição de 
WHERE 
> , no caso a condição de where NOME_USUARIO=user , o que dá o 
resultado 
> desejado também. []s
>   Chiappa
> 
> --- Em oracle_br@yahoogrupos.com.br, "Ricardo Lyrio" <[EMAIL PROTECTED]> 
escreveu
> >
> > Tenho a seguinte situação:
> >
> >  Oracle 10gR2, e preciso implementar segurança em determinadas
> colunas de
> > algumas tabelas da seguinte maneira:
> >
> >  Um usuário que cadastrou um registro na tabela A somente ele e 
mais
> ninguém
> > poderá ver o registro, inclusive num select com permissões de DBA
> eu não
> > posso ver o conteúdo do registro, ele precisa vir criptografado.
> >
> >  Alguém tem alguma idéia de qual caminho seguir?
> >
> >  Abraço a todos e desde já agradeço a ajuda
> >
> > Ricardo Lyrio
> >
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> 
> 
> 
> 
> 
> 
> 
--
> Atenção! As mensagens deste grupo são de acesso público e de 
inteira 
> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> 
--
__
> 
> Este Grupo recebe o apoio da SQL Magazine - 
> www.devmedia.com.br/sqlmagazine 
> __
> O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, 
> tenha o link do mesmo para evitar trafego(pedidos) desnecessário. 
Links 
> do Yahoo! Grupos
>






--
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--__

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para: