RES: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ?
Bem, é aquela tal negócio, normalmente necessidade de só acessar pela aplicação é causada por auditorias/regras de negócio sendo validadas na aplicação, no caso eu não sou favorável a isso pelas razões que direi abaixo, mas cada caso é um caso, e a aplicação é lá do cabal, se ele QUER trabalhar assim apesar dos pontos negativos que listarei, assim será... Quanto à v$session, é uma variação do "ter alguma coisa acessível ao banco alterada" que citei, sim esse "alguma coisa" pode ser uma coluna na v$session, só lembrando que : - NEM TODAS as linguagens/tools preenchem essa coluna - nos casos onde a coluna é preenchida, muitas vezes a linguagem/tool preenche com o nome do executável, assim bastaria o usuário renomear nomedoprogramaproibido.exe para nomedoprogramaqueépermitido.exe e tá lá dentro... Para enriquecer a thread, cito lá pro cabal que tendo auditorias/regras de negócio na aplicação ele : => perde algo em segurança : em as regras/auditoria/o que for estando na aplicação, cada tela, cada módulo que for "mexer" na tabela que precisa das regras TEM que chamar o código apropriado, basta o programador "esquecer" de fazer isso em UM ÚNICO módulo, uma ÚNICA tela entre as (talvez) centenas do seu sistema , que a integridade da regra de negócio/auditoria/o que for já era => perde em flexibilidade : em tudo estando no banco, a qualquer momento o DBA, autorizado por quem de direito, pode dropar, recriar, alterar em um estalo... Imagine que não foi feito assim e daí surge a necessidade da regra x de negócio ser alterada, TOCA a editar, alterar, compilar as n+1 telas/módulos onde a tal regra esteja... e derivados === Participe do ENPO - Encontro de Profissionais Oracle 2006 ! Informações e inscrições em www.enpo-br.org José Laurindo Chiappa, Palestrante ENPO-2006 === --- Em oracle_br@yahoogrupos.com.br, "Anderson Haertel Rodrigues - FLN" <[EMAIL PROTECTED]> escreveu > > Tarde, > > Eu penso um pouco diferente e tenho uma outra dica. > > Buenas, 100% de segurança não vai existir, por que, mesmo sendo feita uma verificação via trigger de logon, este código está na mão do (s) DBA(s) do Banco. Com isso, deve-se ter confiança na(s) pessoa(s) que administram (ou deveriam administrar) o Banco de Dados. Este ponto "resolvido", uma trigger de logon onde se testa o nome do programa que está se conectando (v$session.program) pode começar a garantir a tua segurança. > > A dica, é pouco usado (no Oracle), mas Application Role é indicado para essa situação. Dê uma lida em: Security Overview.pdf e descubra o que está "feature" pode fazer para te ajudar. > > Atenciosamente, > > Anderson Haertel Rodrigues > Administrador de Banco de Dados > Florianópolis/SC - [EMAIL PROTECTED] > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de jlchiappa > Enviada em: quarta-feira, 11 de outubro de 2006 13:22 > Para: oracle_br@yahoogrupos.com.br > Assunto: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ? > > > Colega, seguinte : 100% garantido, de modo fácil e nativo, NÃO TEM > COMO fazer isso : como já dito n+1! vezes aqui no grupo mesmo, há > literalmente CENTENAS de linguagens/tools/aplicativos (inclusive > freewares!, inclusive aplicativos tipo Word/Excell) que podem > conectar no banco, isso torna BEM DIFÍCIL, absolutamente não dá pra > garantir um bloqueio desse tipo 100%. E ** MAIS **, numa aplicação > bem resolvida e bem-comportada, as regras de negócio, limites de uso > das tabelas, auditoria, etc, etc, etc, estão TODAS dentro do banco > (via triggers/profiles/auditoria Oracle, etc), então absolutamente > *** NÃO DEVERIA IMPORTAR *** com o que o usuário conecta, ok ? > Solicitações de bloqueio desse tipo TIPICAMENTE são feitas quando há > regra de negócio, auditoria, etc, sendo feita DENTRO DA APLICAÇÂO, o > que não é DE FORMA ALGUMA recomendável, é mesmo um "bug" isso, que > deveria ser é corrigido, imho... > > Isto posto, a resposta : uma possibilidade comum é vc ter no programa > de entrada do seu sistema uma rotina que faz "alguma coisa" não- > default (por exemplo, cria um arquivo, cria uma var.global, insere > numa tabela, o que for), num meio e local ACESSÍVEL AO BANCO, e ter > no banco uma trigger de LOGON, e nessa trigger vc checa se a "coisa" > está feita, se sim ok, se não aborta-se o logon. Outra possibilidade > é os usuários Oracle ** não ** terem privilégios de acesso a nada por > default e apenas o aplicativo , na primeira "tela" do sistema, dar > esse acesso, talvez com roles não-default e protegidas por s
RES: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ?
Tarde, São pontos de vistas diferentes, isto é fato. O problema é que não pensei no rename do .EXE, bem lembrado. De resto caímos no problema de confiança no DBA (que também citei, e falamos a mesma coisa). Insisto ainda o colega ler com calma Application Role (.pdf citado, lá embaixo), é uma boa saída. Atenciosamente, Anderson Haertel Rodrigues Administrador de Banco de Dados Florianópolis/SC - [EMAIL PROTECTED] -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de jlchiappa Enviada em: quarta-feira, 11 de outubro de 2006 15:32 Para: oracle_br@yahoogrupos.com.br Assunto: RES: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ? Bem, é aquela tal negócio, normalmente necessidade de só acessar pela aplicação é causada por auditorias/regras de negócio sendo validadas na aplicação, no caso eu não sou favorável a isso pelas razões que direi abaixo, mas cada caso é um caso, e a aplicação é lá do cabal, se ele QUER trabalhar assim apesar dos pontos negativos que listarei, assim será... Quanto à v$session, é uma variação do "ter alguma coisa acessível ao banco alterada" que citei, sim esse "alguma coisa" pode ser uma coluna na v$session, só lembrando que : - NEM TODAS as linguagens/tools preenchem essa coluna - nos casos onde a coluna é preenchida, muitas vezes a linguagem/tool preenche com o nome do executável, assim bastaria o usuário renomear nomedoprogramaproibido.exe para nomedoprogramaqueépermitido.exe e tá lá dentro... Para enriquecer a thread, cito lá pro cabal que tendo auditorias/regras de negócio na aplicação ele : => perde algo em segurança : em as regras/auditoria/o que for estando na aplicação, cada tela, cada módulo que for "mexer" na tabela que precisa das regras TEM que chamar o código apropriado, basta o programador "esquecer" de fazer isso em UM ÚNICO módulo, uma ÚNICA tela entre as (talvez) centenas do seu sistema , que a integridade da regra de negócio/auditoria/o que for já era => perde em flexibilidade : em tudo estando no banco, a qualquer momento o DBA, autorizado por quem de direito, pode dropar, recriar, alterar em um estalo... Imagine que não foi feito assim e daí surge a necessidade da regra x de negócio ser alterada, TOCA a editar, alterar, compilar as n+1 telas/módulos onde a tal regra esteja... e derivados === Participe do ENPO - Encontro de Profissionais Oracle 2006 ! Informações e inscrições em www.enpo-br.org José Laurindo Chiappa, Palestrante ENPO-2006 === --- Em oracle_br@yahoogrupos.com.br, "Anderson Haertel Rodrigues - FLN" <[EMAIL PROTECTED]> escreveu > > Tarde, > > Eu penso um pouco diferente e tenho uma outra dica. > > Buenas, 100% de segurança não vai existir, por que, mesmo sendo feita uma verificação via trigger de logon, este código está na mão do (s) DBA(s) do Banco. Com isso, deve-se ter confiança na(s) pessoa(s) que administram (ou deveriam administrar) o Banco de Dados. Este ponto "resolvido", uma trigger de logon onde se testa o nome do programa que está se conectando (v$session.program) pode começar a garantir a tua segurança. > > A dica, é pouco usado (no Oracle), mas Application Role é indicado para essa situação. Dê uma lida em: Security Overview.pdf e descubra o que está "feature" pode fazer para te ajudar. > > Atenciosamente, > > Anderson Haertel Rodrigues > Administrador de Banco de Dados > Florianópolis/SC - [EMAIL PROTECTED] > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de jlchiappa > Enviada em: quarta-feira, 11 de outubro de 2006 13:22 > Para: oracle_br@yahoogrupos.com.br > Assunto: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ? > > > Colega, seguinte : 100% garantido, de modo fácil e nativo, NÃO TEM > COMO fazer isso : como já dito n+1! vezes aqui no grupo mesmo, há > literalmente CENTENAS de linguagens/tools/aplicativos (inclusive > freewares!, inclusive aplicativos tipo Word/Excell) que podem > conectar no banco, isso torna BEM DIFÍCIL, absolutamente não dá pra > garantir um bloqueio desse tipo 100%. E ** MAIS **, numa aplicação > bem resolvida e bem-comportada, as regras de negócio, limites de uso > das tabelas, auditoria, etc, etc, etc, estão TODAS dentro do banco > (via triggers/profiles/auditoria Oracle, etc), então absolutamente > *** NÃO DEVERIA IMPORTAR *** com o que o usuário conecta, ok ? > Solicitações de bloqueio desse tipo TIPICAMENTE são feitas quando há > regra de negócio, auditoria, etc, sendo feita DENTRO DA APLICAÇÂO, o > que não é DE FORMA ALGUMA recomendável, é mesmo um "bug" isso, que > deveria ser é corrigido, imho... > > I
RES: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ?
Tarde, Eu penso um pouco diferente e tenho uma outra dica. Buenas, 100% de segurança não vai existir, por que, mesmo sendo feita uma verificação via trigger de logon, este código está na mão do(s) DBA(s) do Banco. Com isso, deve-se ter confiança na(s) pessoa(s) que administram (ou deveriam administrar) o Banco de Dados. Este ponto "resolvido", uma trigger de logon onde se testa o nome do programa que está se conectando (v$session.program) pode começar a garantir a tua segurança. A dica, é pouco usado (no Oracle), mas Application Role é indicado para essa situação. Dê uma lida em: Security Overview.pdf e descubra o que está "feature" pode fazer para te ajudar. Atenciosamente, Anderson Haertel Rodrigues Administrador de Banco de Dados Florianópolis/SC - [EMAIL PROTECTED] -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] nome de jlchiappa Enviada em: quarta-feira, 11 de outubro de 2006 13:22 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ? Colega, seguinte : 100% garantido, de modo fácil e nativo, NÃO TEM COMO fazer isso : como já dito n+1! vezes aqui no grupo mesmo, há literalmente CENTENAS de linguagens/tools/aplicativos (inclusive freewares!, inclusive aplicativos tipo Word/Excell) que podem conectar no banco, isso torna BEM DIFÍCIL, absolutamente não dá pra garantir um bloqueio desse tipo 100%. E ** MAIS **, numa aplicação bem resolvida e bem-comportada, as regras de negócio, limites de uso das tabelas, auditoria, etc, etc, etc, estão TODAS dentro do banco (via triggers/profiles/auditoria Oracle, etc), então absolutamente *** NÃO DEVERIA IMPORTAR *** com o que o usuário conecta, ok ? Solicitações de bloqueio desse tipo TIPICAMENTE são feitas quando há regra de negócio, auditoria, etc, sendo feita DENTRO DA APLICAÇÂO, o que não é DE FORMA ALGUMA recomendável, é mesmo um "bug" isso, que deveria ser é corrigido, imho... Isto posto, a resposta : uma possibilidade comum é vc ter no programa de entrada do seu sistema uma rotina que faz "alguma coisa" não- default (por exemplo, cria um arquivo, cria uma var.global, insere numa tabela, o que for), num meio e local ACESSÍVEL AO BANCO, e ter no banco uma trigger de LOGON, e nessa trigger vc checa se a "coisa" está feita, se sim ok, se não aborta-se o logon. Outra possibilidade é os usuários Oracle ** não ** terem privilégios de acesso a nada por default e apenas o aplicativo , na primeira "tela" do sistema, dar esse acesso, talvez com roles não-default e protegidas por senha que a "tela" habilite. ==> Mas é claro, NADA DISSO é 100% seguro, recomendável, não... === Participe do ENPO - Encontro de Profissionais Oracle 2006 ! Informações e inscrições em www.enpo-br.org José Laurindo Chiappa, Palestrante ENPO-2006 === --- Em oracle_br@yahoogrupos.com.br, "cabal_o" <[EMAIL PROTECTED]> escreveu > > Gostaria de saber como desabilitar o acesso ao meu banco da seguinte > forma: > Só permitir o acesso ao banco caso seja através de um programa > específico(ex. programas de vendas). > Se o usuário tentasse logar com o sqlplus ou outros desse, não fosse > liberado o acesso a ele. > valeu galera. > [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/ --__ Vem aí: ENPO-BR 2006 - Encontro Nacional de Profissionais Oracle VISITE: http://www.enpo-br.org/ - Dia 11/11 "Vagas Limitadas" __ Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 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: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
[oracle_br] Re: Como Desabilitar o Acesso ao meu Banco ?
Colega, seguinte : 100% garantido, de modo fácil e nativo, NÃO TEM COMO fazer isso : como já dito n+1! vezes aqui no grupo mesmo, há literalmente CENTENAS de linguagens/tools/aplicativos (inclusive freewares!, inclusive aplicativos tipo Word/Excell) que podem conectar no banco, isso torna BEM DIFÍCIL, absolutamente não dá pra garantir um bloqueio desse tipo 100%. E ** MAIS **, numa aplicação bem resolvida e bem-comportada, as regras de negócio, limites de uso das tabelas, auditoria, etc, etc, etc, estão TODAS dentro do banco (via triggers/profiles/auditoria Oracle, etc), então absolutamente *** NÃO DEVERIA IMPORTAR *** com o que o usuário conecta, ok ? Solicitações de bloqueio desse tipo TIPICAMENTE são feitas quando há regra de negócio, auditoria, etc, sendo feita DENTRO DA APLICAÇÂO, o que não é DE FORMA ALGUMA recomendável, é mesmo um "bug" isso, que deveria ser é corrigido, imho... Isto posto, a resposta : uma possibilidade comum é vc ter no programa de entrada do seu sistema uma rotina que faz "alguma coisa" não- default (por exemplo, cria um arquivo, cria uma var.global, insere numa tabela, o que for), num meio e local ACESSÍVEL AO BANCO, e ter no banco uma trigger de LOGON, e nessa trigger vc checa se a "coisa" está feita, se sim ok, se não aborta-se o logon. Outra possibilidade é os usuários Oracle ** não ** terem privilégios de acesso a nada por default e apenas o aplicativo , na primeira "tela" do sistema, dar esse acesso, talvez com roles não-default e protegidas por senha que a "tela" habilite. ==> Mas é claro, NADA DISSO é 100% seguro, recomendável, não... === Participe do ENPO - Encontro de Profissionais Oracle 2006 ! Informações e inscrições em www.enpo-br.org José Laurindo Chiappa, Palestrante ENPO-2006 === --- Em oracle_br@yahoogrupos.com.br, "cabal_o" <[EMAIL PROTECTED]> escreveu > > Gostaria de saber como desabilitar o acesso ao meu banco da seguinte > forma: > Só permitir o acesso ao banco caso seja através de um programa > específico(ex. programas de vendas). > Se o usuário tentasse logar com o sqlplus ou outros desse, não fosse > liberado o acesso a ele. > valeu galera. > -- 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/ --__ Vem aí: ENPO-BR 2006 - Encontro Nacional de Profissionais Oracle VISITE: http://www.enpo-br.org/ - Dia 11/11 "Vagas Limitadas" __ Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 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: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html