Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Muskt

O que é necessario para um bom login por sessões seguro ?

Recommended Posts

Olá a todos,Preciso de um sistema de login para a minha intranet.Venho aqui perguntar a voces o que é necessario para que um sistema de login seja bom e principalmente SEGURO, pois sou nb em PHP ainda e não sei suas falhas.Vou começar a lista e vocês, por favor, me ajudem a deixa-la o mais completa possivel.Quardar dados em bdTer permissão por loginTer opção lembrar meSer anti SQL InjectionTem proteção server-side (PHP) e client-side (JS)...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu primeiro queria recolher uma lista de requisitos para saber o que é considerado um bom sistema de login.E ali tambem está escrito: Nível inicianteQueria algo mais avançado, para, se pegar um codigo pronto, poder aprender com ele :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, entendo o seu lado. Mais eu ja fiz um script por sessions, basico como aquele, so não tem anti-injection.Eu queria saber o que seria um script seguro para login, para q eu pudesse estudar isso.Desculpe se a descrepancia nas nossas ideias, mais eu costumo trabalhar assim. Procurar o necessario e estudar para quando começar tem um embasamento maior, assim não precisando refazer tudo em algum momento.De qualquer jeito agradeço sua colaboração :D[]'s !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou falar oque acho sobre um bom sistema de login:* Uma área de administração online, mas que não haja link para esta área de administração no site e nem que esteja na pasta admin, exemplo : www.site.com.br/admin/. E que ela seja bastante completa.* Também não acho conveniente fazer um sistema de login baseado em cookies, mas sim em sessions. Por vários motivos.* Acho que o programador para desenvolver um bom sistema de login precise ter idéia sobre criptografia dos dados, tanto no banco de dados como nas sessions.* Que haja uma proteção com todas as páginas restritas, que, se tentarem as acessar diretamente ele seja redirecionado para a página de login ou então uma tela falando que ele não tem permissão para acessar aquele conteúdo.* Acho muito irritante alguns webmasters disponibilizarem links no site, como por exemplo, Download, e você não poder os acessar porque não é cadastrado. Não faça isso com seus visitantes... acho que para que o site seja avaliado a pessoa tem que ter livre acesso em boa parte do conteúdo, e se talvez você queira bloquear a área de downloads para visitantes, não coloque o link para o visitante acessar e de cara não conseguir, faça uma versão do site para cada um , uma para o visitante outra para o cadastrado.* E é claro, tenha uma proteção contra sql injection eficiente e seja programada sobre os princípios de segurança em programação php.* Para que a pessoa cadastre, se não for nada muito sério, não exija muitos dados, mas também não exija só o E-mail o login e a senha. Ah, e quando a pessoa se cadastrar ela recebe um e-mail confirmando o cadastro, e que para ele seja concluído ela precise clicar no link enviado para o seu e-mail, acho que isso obriga as pessoas a colocarem endereços de e-mails que sejam usados frequentemente por elas.* façe uma área amigável para seu usuário quando ele logar, uma em que ele possa ir em todo o site, e mudar seus dados, e fazer tudo quanto há no seu site, como um painel de controle, mas um painel de controle pessoal.... acho que tudo isso pode ser encontrado no php-nuke.

Compartilhar este post


Link para o post
Compartilhar em outros sites

faiz assim se você for se o admin*cria uma pagina de teste dando um md5 e um sha1 na paalavra que você quise ai esse vira o nome da pasta admin seria algo assimwww.site.com.br/jfbwihgbwe3823513uhia se muito dificil de alguem adivinha hehehe*o cookie você pode usa até só faiz umas questão de segurançapq por exemplo no meu site ele permite criar cookie e nele eu gravo o usuario com um caracter divisor no caso | e a senha do usuario criptografadapara impedi que ele va no cookie e autere o usuario e entre com outro usuario fica mais seguro*se usa classe de template faiz uma verificação em todas as paginas,com elas fica mais facio de faze isso.*na session sempre passe usuario senha e um campo que verifica se ta logado mais por segurança*o esquema de download que ele falo é muito ruin mesmo só restringi oq fo essencialmente necessario como na minha pagina tipo é tudo liberado mais a parte de upload que eu to montando ta bloqueado.*no caso do email faiz assim na hora do insert você usa uns comandos pra cria um código criptografado e grave no usuario e mande pra ele o link com aquela variavel na url e quando ele entra confirmano meu site ele só precisa cadastra o basico vo da opção pra cadastra mais coisa só que não é obrigado e se ele não quise preenche como template ou idioma padrão ele vai em uma tabela de padroes do sistema e cadastra eles como padrão ai depois ele pode configura se quiseeu acho que assim fica mais facio pro usuario assim ele pode só cadastradaum login uma senha e um e-mail e depois se quise po o restofica uma coisa mais facio e dinamico

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pelas ajudas !Qaunto mais ajuda melhor !!!Alguem pode me indicar um site sobre segurança em PHP / sessions ?obrigado ! :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apesar de tudo que ja foi falado, tem tambem que contar com o ponto principal, a logica do programador, nao adianta voce fazer o sistema mais seguro sendo que voce nao sabe usar o sistema , por exemplo imagina uma casa com segurança, cerca eletrica, alarme, etc..., mas o ladrao descobre as senhas de acesso e entra pela porta da frente.

 

mesma coisa um sistema, ele pode ser seguro, mas se você nao souber validar direito você cria brechas para o usuario entrar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito Bom ! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Irei fazer uma sintese de tudo falado até aqui:

 

- Dados em Bancos de Dados

- Ter sistema de permissões e/ou grupos

- Feature Lembrar-me

- Funções contra brechas (Anti-Injections)

- Proteções Server-side e Client-side

- Area de administração realmente escondida

- Criptografia tanto no BD como nas Sessões

- Não mostrar onde não pode entrar

- Exijir so os Dados necessários e dar opção de colocar outros

- Email de confirmação antes de liberar o login

- Aprovação do administrador quanto ao login (caso necessário)

- Painel de controle pessoal, perfil

 

Mail alguem ? :rolleyes:

 

Muito obrigado pela ajuda de todos até agora http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso não queira guardar as senhas em um BD, pode usar tb LDAP para autenticação. É um pouco mais trabalhoso porém a área de administração já está pronta...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma boa idéia que eu tirei de um script no Delicious foi em relação a cookies.Qdo o usuário loga é criado um id (aleatório) que é gravado no cookie e no bd. Assim, caso alguém tenha acesso ao cookie, vai ter um id que não serve pra logar já que não é a senha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já existe algum script de dominio publico de sessões rubusto como esse para que eu possa estuda-lo ?Se não, alguem se interessa em criar ? Para dominio publico !!!Caso necessario, eu poderia colocar no ar um wiki no meu servidor residencial e mandar o endereço para os intereçados.[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se tiver alguma dúvida, eu fiz a tradução de quase todas as páginas. Tô testando ele faz um tempo e nunca deu problema. Só que eu alterei algumas coisas, especialmente no cadastro do usuário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.