Vc confia em todos os sites que tem o cadiadinho? SSL

0

Posted on : 09-02-2007 | By : .rafa | In : Sistemas Operacionais

Ae galera, vamos ficar ligado ai com a dica, eu já sabia que era possivel, mas agora q vi que o gmail tem essa falha.. meooo que fods... e claro o email seria algo nao tao grave, mas sim em relação a contas de banco, ou outras transacoes com dinheiro que possam implicar numa enorme falha de segurança, e digo nao do usuário e sim do site que está hospedando o serviço. tah tah.. vamos parar de enrolar e vou postar agora o videozinho q mostra como faz e detalhe funciona mesmo.


Hacking Email Passwords - video powered by Metacafe

Essa ferramenta que é utilizada no video é um sniffer, para quem nao sabe.

Novo sistema de notificações via email

0

Posted on : 03-02-2007 | By : .rafa | In : Geral

Como ultimamente está havendo um grande acesso ao meu site, resolvi melhor o meus sistema de notícias diárias.

Estou adicionando o sistema de notificação de novos artigos via email, assim você que achou interessante os meus artigos e já notou que não posto com tanta frequencia, gostaria que fosse avisado destes agora podes se cadastrar e ficar antenado nos meus post's direto de sua caixa de email.

Para se cadastrar é só adicionar seu email na caixa de Notificação de novos post's a sua direita logo abaixo das categorias do site. Ah e lembrando que se cadastrar irá receber um email de confirmação para comecar a receber estes avisos, isso claro para não ter aqueles engracadinhos que cadastram emails que não lhe pertencem.

Qualquer dúvida pode ser enviado um email para mim solicitando esse cadastramento,

Obrigado pela visita e preferencia.

Rafael Stoever

Alteração DDL em objetos relacionados

0

Posted on : 03-02-2007 | By : .rafa | In : Banco de Dados, Oracle

Bom hoje vou abordar uma situação que ocorre muito e claro não se tem muito impacto pois o que vou mostrar é como a Oracle nos ajuda em muitas situações.
Vou criar uma tabela de exemplo e criar uma procedure que chama essa tabela, até ai tudo bem, mas se eu fizer alguma alteracao na estrutura desta o que vai acontecer. É os objeto que estão relacionados a esta tabela ficarão INVALIDOS, mas não há necessidade de ficar preocupado que sua aplicação irá parar de funcionar.
Pois ao ser executado o objeto, este é tentado ser rencopilado e dps executado.
Para ser mais facil de entender irei fazer um exemplo na pratica para ver como funciona, e claro usando algumas coisas como sequence e um pequeno cursor para facilitar todo o contexto, passo a passo:

Primeiramente vamos criar um tabela para o nosso exemplo funcionar legal:
create table tab01 (
campo01 number(11) primary key,
campo02 varchar2(100)
);

Vamos criar um sequence para facilitar um pouco mais a nossa vida:
create sequence ctab01;

Ok, aqui vamos comecar popular a nossa tabelinha soh para ter alguma informacao e ficar mais legal a brincadeira:
insert into tab01 values (ctab01.nextval,'AAAAAA');

DECLARE
NUMERO NUMBER(11);
BEGIN
FOR NUMERO IN 1..5
LOOP
insert into tab01 select ctab01.nextval,'BBBBBB' from tab01;
COMMIT;
END LOOP;
END;

Bom nesse passo com a tabela ja criada e populada vamos criar uma procedure onde vai utilizar um campo por exemplo da tabela, só usar dando um select simples:
create or replace procedure proc_01
is
begin
declare
v_aux varchar2(100);
begin
select campo02 into v_aux from tab01 WHERE ROWNUM = 1;
end;
end;

Agora vamos prestar a atenção no status desse objetos(a procedure PROC_01), ela está VALID:
SQL> select object_name,STATUS FROM ALL_OBJECTS WHERE OBJECT_NAME ='PROC_01';

OBJECT_NAME STATUS
------------------------------ -------
PROC_01 VALID
Nessa etapa vamos criar um campo novo na estrutura da tabela:
ALTER TABLE TAB01 ADD CAMPO03 NUMBER(3);
Então observando novamente o status do objeto PROC_01, nota-se que agora o status está INVALID:
SQL> select object_name,STATUS FROM ALL_OBJECTS WHERE OBJECT_NAME ='PROC_01';

OBJECT_NAME STATUS
------------------------------ -------
PROC_01 INVALID

Mas o que não contavamos é q se precisarmos de usar a proc_01 ela vai funcionar mesmo assim com o status INVALID, pois o Oracle compila o objeto antes de executar, claro se por algum motivo nao interfiriu diretamente no objeto inicial, como trocando o tipo da coluna entre outros.
SQL> EXEC PROC_01;
Assim podes olhar em seguida o status do objeto:
SQL> select object_name,STATUS FROM ALL_OBJECTS WHERE OBJECT_NAME ='PROC_01';

OBJECT_NAME STATUS
------------------------------ -------
PROC_01 VALID

Desta forma podemos notar que se fizeres alguma alteração de estrutura do tipo inclusao ou sem alterar o que está dentro destes objetos do tipo proc, view, func, ou outros o Oracle vai garantir que sua aplicação nao vai parar.
Mas recomenda-se que no momento q fores fazer alguma alteração de estrutura, recompile seus objetos relacionados, para também nao ter dor de cabeça mais tarde.