DICAS PARA LOJA VIRTUAL

JUNIORARI 08/10/2009 18:15:25
#324845
Boa tarde galera...

Seguinte, estou fazendo um site pra vender pela internet.

Gostaria de umas dicas de vocês, para fazer esse site, tipo como lidar com seguranca do banco, seguranca dos dados dos clientes que se cadastrarem no site, essas coisas.

Nunca fiz um site assim, sempre fiz em ASP, mas não exigia tanta segurança de dados assim, tal como esse.

Estou pensando primeiramente em fazer o banco em Access, depois eu migro pra outro mais seguro, alguem tem uma sugestão??

Conto com a experiência de vocês....

Valew....
JUNIORNET 08/10/2009 21:53:41
#324855
Kra se vc quiser fazer uma loja boa faz direito ja na primeira vez. Para isso usa um SQL Server Express Edition (gratuito) e no quesito segurança, uma dica que eu posso dar é para vc sempre usar Store Procedure (proc[ô]s) pois assim você diminui a possibilidade de Sql Injection. Se voce fizer em Access o banco vai ficar muito lento e isso vai acabar queimando o seu produto.

FLw.

Junior.
JUNIORARI 09/10/2009 11:52:53
#324886
blz Juniornet, vou seguir seu conselho, vou fazer em sql server.
Bom minha experiencia nesse banco não é muita, mas como entendo um pouco de access, dá pra fazer alguma coisa.

mas me dá uma dica ae de como usar esses Store Procedure....
MEMLUZ 10/10/2009 20:18:46
#325000
Junior,

Como disse o JuniorNet, o banco de dados deve ser SQL Server ou Mysql, access, nem pensar.
Em relação a segurança de pagamento, recomendo usar componentes prontos. A Locaweb tem um modulo de comercio eletronico que faz o contato com os bancos e com os Cartões de Crédito. Você não precisa estar hospedado na locaweb para usar o componente. Os dados do cartão não fica no seu site. Assim, o consumidor fica mais tranquilo.

Se voce quiser, existe uma loja exemplo da locaweb que funciona perfeitamente. A única coisa é que ele usa componentes que existe na locaweb e em outros provedores podem não existir. o endereço é http://lojaexemplo.com.br/

Existem outros codigos livres de loja virtual, mas recomendo a da locaweb que já foi bem testado.

Mesmo assim, algumas adptações deverão ser feitas. Assim, pense bem no layout dos arquivos antes de começar a sua loja. Pense em todas as possibilidades. Se o produto vai ter propriedades como cor, tamanho, etc. Assim você evita um problemão no futuro.

Lembre-se que o site deve ser feito usando SEO (Search Engine Optimization) para poder aparecer no google. Normalmente o site de comercio usa ferramentas para verificar a qualidade do site. Um dos mais conhecidos é o Site Blindado (http://www.siteblindado.com.br/). A programação para ser reconhecido como site blindado tem que ter técnicas para evitar hackers.

De resto, é trabalhar bastante.


Boa Sorte!

Abs,
Mem
www.mplinformatica.com.br






JUNIORNET 12/10/2009 18:43:22
#325097
Ola Juniorari
Como o nome diz Store Procedure (proc) sao procedimentos armazenados por exemplo para voce fazer uma consulta que retorne todos os clientes da sua tabela Cliente

Normalmente voce criaria no seu codigo uma instrucao [Ô]Select * from Cliente Where Codigo = @codigo[Ô], isso permitiria a o uso de SQL Injection mas se fizermos uma proc que seria +- assim

 
Create Procedure sp_ListaCLiente

@codigo int

As

Begin

Select * from Cliente Where Codigo = @codigo

End


A mesma coisa so que isso diminuiria muito a possibilidade de injeção SQL. Claro que vc deverá fazer as validaçoes que vc pode aprender estudando SQL mas a ideia é essa, desta forma o chamado ao inves do Select (mensionado acima) vc passaria apenas sp_ListaCliente 123 por exemplo esta pratica de utilizar proc[ô]s é muito utilizada nas empresas. Qualquer coisa da um toque flw

Num esquece de dizer como ta indo o projeto ai e se precisar de mais alguma coisa é so postar

Junior.
JUNIORARI 14/10/2009 16:45:18
#325314
e esses proc[ô]s, eu crio dentro do banco de dados, da mesma forma que crio as tabelas, é isso???
JUNIORNET 14/10/2009 17:01:47
#325317
Isso mesmo

na aplicação vc so vai chamar.
JUNIORARI 20/10/2009 21:51:21
#325877
Obrigado Juniornet, valew mesmo pelo dica, fiz o banco primeiro em mysql, depois eu implemento em sql server, mas suas dicas já foram pras minhas anotacoes...

me tira só uma dúvida, quanto ao sql injection, eu tive lendo uma vez, e ele busca vulnerabilidades quando na busca de dados no banco atraves de sql, correto?? e essas buscas se davam mais quando retornava um erro na busca, entao eu pergunto, se eu colocar um
on error resume next
no inicio da página pra evitar esses erros, eu não resolvo o problema de sql injection???

o site ja está no ar, quem quiser ver como está estou aberto a críticas e sugestões: www.masterpecas.com

valew...
JUNIORNET 21/10/2009 12:51:28
#325939
Cara isso vai mascarar o erro mas o ideal é resolve-lo

Na net tem uns artigos de como tratar a sua aplicação contra o SQL Injection faz uma pesquisa sobre isso que nao é dificil e fika muito seguro

O modelo da loja ficou bacana, você pegou o padrão da VirtuaStore?

Junior.
MEMLUZ 21/10/2009 20:30:28
#326012
Segue rotina para verificar sql injection

Basta dar no comeco de cada pagina
call Valida_Request()

Abs,
Mem


[ô]##########################################################################################################
[ô]SUB Valida_Request
[ô] - Verifica se os valores postados não possuem informações que podem causar danos ao banco de dados
[ô]##########################################################################################################
Sub Valida_Request()

on error resume next


Set objRegExpr = New RegExp
objRegExpr.Global = True
objRegExpr.IgnoreCase = True
objRegExpr.Pattern = [Ô]([\s][*(insert|update|upload|delete|drop|select|create|information_schema|or|and|iframe)][\s])|([Ô][Ô]|[ô]|;|<|>|<>|<=|>=)[Ô]

For Each obj In Request.Form
If objRegExpr.Test(Request.Form(obj)) Then
Response.Write [Ô]<div align=center><font color=#FF0000 size=2 face=Arial>A palavra ou caracter -><strong>[Ô]& Request.Form(obj) &[Ô]</strong><- é invalido para o Campo [Ô] & obj & [Ô] favor substituí-lo ou retirá-lo.<br> <a href=[ô]javascript:history.back();[ô]>CLIQUE AQUI PARA VOLTAR</a></font></div>[Ô]
Response.End
End If
Next

For Each obj In Request.QueryString
If objRegExpr.Test(Request.QueryString(obj)) Then

Response.Write [Ô]<div align=center><font color=#FF0000 size=2 face=Arial>A palavra ou caracter <strong>[Ô]& Request.QueryString(obj) &[Ô]</strong> é invalido para o Campo [Ô] & obj & [Ô] favor substituí-lo ou retirá-lo.<br> <a href=[ô]javascript:history.back();[ô]>CLIQUE AQUI PARA VOLTAR</a></font></div>[Ô]
Response.End
End If
Next

Set objRegExpr = Nothing

If Err.Number <> 0 then
Response.Write [Ô]<div align=center><font color=#FF0000 size=2 face=Arial>Você tentou um acesso inválido.<br> <a href=[ô]javascript:history.back();[ô]>CLIQUE AQUI PARA VOLTAR</a></font></div>[Ô]
Response.End
end if
End Sub
JUNIORARI 24/10/2009 03:20:04
#326208
Juniornet

Sim, peguei o modelo da Vistuastore, mas como viu, mudei muita coisa, o código que peguei era todo desorganizado, deu um trabalhao pra organizar ela, mas tá indo... hehe
quanto ao error resume next, no final das páginas eu trato o erro, indicando ao usuario que houve o erro e mostrando a descricao dele.

Agora ssa funcao do MemLuz, cara tá show.... vou usar ela nas minhas páginas... pra sempre... hhehehe

galera, valew mesmo, ta ficando do jeito que eu queria... mas estou aperfeiçoando, estou pensando em usar o módulo de pagamento da Locaweb, mas um cara me deu uma idéia de usar o PagSeguro da Uol, pelo menos lá aceita todos os cartões,
e aí o que vocês acham???
Página 1 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas