Jump to content
Sign in to follow this  
Fernando Pioli

Verificação de dados em área protegida

Recommended Posts

Olá, bom dia a todos.

Estou em buscar de mais conhecimentos em segurança para aperfeiçoar meus projetos.

Gostaria de uma opinião a respeito.

Atualmente uso sessions em meu sistema de login, e nela, quando um usuário faz o login com user e pass, gero uma sessão contendo :

- "ID" do user criptografado

- "USER" criptografado

 

E salvo no banco de dados, a hora do login, Browser, e o id da sessão gerado.

 

- E em cada solicitação verifico se existe o USER no BD.

- Verifico se o browser no BD confere com o atual

- E verifico se a sessão usada confere com o BD

 

E em cada solicitação regenero o id da sessão e salvo no BD.

 

Tem algo a mais que posso fazer para aumentar a segurança?

Essas consultas ao BD em cada solicitação acarreta em algum problema ou lentidão no servidor?

Abraços e obrigado

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By ricardonews
      olá pessoal, estou com dúvida entre o dismhost.exe no windows 7 home basic, ele se encontra dentro do win32 será que não pode ser um malware? alguem sabe o local exato que fica esse arquivo no windows? faz dias que eu notei, mas ontem eu deletei uma particão que estava diferente das outras e até da unidade c onde fica o windows, porque ela estava verde e veio uma mensagem que não podia depos de deletar ela, tambem notei que deletou uma partição reservado pelo sistema e eu não deletei e depois disso fica dando  sinapse da microsoft quando vou lá na opção gerenciamento de disco é que isso ocorre sempre depos que saio. estou desconfiado desse dismhost.
    • By fabina
      Ola tenho um questionario feito  em php  guardo o valor das respostas no banco   e depois    tem um resultado por cada area  que ele respondeu ate ai responde  super bem mais quando  duas pessoas começam a fazer  ele  perde o valor da session e nao  exibe o valor para o meu usuario ,ou as vezes troca o nome do usuario x para y 
    • By rapi
      Não estou conseguindo inserir dados em uma tabela n:m
      Codigo do formulario: 
      <?php session_start(); ?> <!DOCTYPE html> <html> <head> <meta charset ="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"> <link rel="stylesheet" type="text/css" href="../_css/botoes.css"> <link rel="stylesheet" type="text/css" href="../_css/formulario.css"> <title>Cadastro de Pedido/Produto</title> </head> <body> <!-- Menu --> <nav class="navbar navbar-expand-lg navbar-light bg-primary"> <div class="data" style="text-align:right;"> <script type="text/javascript" src="../js/data.js"></script> </div> <div class="container"> <div class="collapse navbar-collapse" id="navbarSite"> <ul class="navbar-nav mr-auto mb-0 mx-auto"> <li class="nav-item"> <a class="nav-link" href="../index.php">Inicio</a> </li> <li class="nav-item"> <a class="nav-link" href="../read/listarPedidoProduto.php"> Tabela </a> </li> </ul> </div> </div> <div class="hora"> <label ID="Clock">00:00:00</label> <script type="text/javascript" src="../js/hora.js"></script> </div> </nav> <!--Fim do menu--> <div class="container"> <h1 class="text-center"> Cadastro de Pedido Produto</h1> <form method="post" action="processaPedidoProduto.php" class="form-signin"> <input type="text" name="pedido_numero" class="form-control" placeholder="Numero do Pedido"> <br><br> <input type="text" name="produto_codigo" class="form-control" placeholder="Codigo do Produto"><br><br> <input type="text" name="quantidade" class="form-control" placeholder=" Quantidade Pedida"><br><br> <input type="submit" name="enviarCadastro" value="Cadastrar" class="form-control btn btn-estilo"><br><br> <input type="reset" value="Apagar" class="form-control btn btn-estilo"> </form> <div class="container text-center"> <?php if(isset($_SESSION['msg'])){ echo $_SESSION['msg']; unset($_SESSION['msg']); } ?> </div> </div> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script> <script src="../js/personalizado.js"></script> </body> </html> Codigo que envia os dados para o banco:
      <?php session_start(); include("../conexao.php"); $pedido_numero =$_POST['pedido_numero']; $produto_codigo =$_POST['produto_codigo']; $quantidade =$_POST['quantidade']; $sql = "INSERT INTO pedido_produto(pedido_numero, produto_codigo, quantidade) VALUES($pedido_numero, '$produto_codigo', $quantidade)"; if($conexao->exec($sql)){ $_SESSION['msg'] = "<p style = 'color:green;'>Cadastro Realizado com sucesso!</p>"; }else{ $_SESSION['msg'] = "<p style = 'color:red;'>Erro: Cadastro falhou!</p>"; } header("Location: cadastrarPedidoProduto.php"); ?> codigo da tabela em questão:
      CREATE TABLE IF NOT EXISTS `pedido_produto` ( `pedido_numero` INT NOT NULL, `produto_codigo` VARCHAR(45) NOT NULL, `quantidade` INT NOT NULL, PRIMARY KEY (`pedido_numero`, `produto_codigo`), INDEX `fk_produto_codigo_idx` (`produto_codigo` ASC) , INDEX `fk_pedido_numero_idx` (`pedido_numero` ASC) , CONSTRAINT `fk_produto_pedido` FOREIGN KEY (`pedido_numero`) REFERENCES .`pedido` (`numero`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_produto_codigo` FOREIGN KEY (`produto_codigo`) REFERENCES .`produto` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB;  
      Estou conseguindo visualizar e deletar os dados, mas inserir e atualizar, não estou conseguindo.
      Obs: tenho outras 3 tabelas e utilizo o mesmo comando para inserir e elas inserem tudo certinho
    • By CharlieAldrin
      Estou tentando fazer o seguinte codigo, onde ele pega alguns dados e salva eles em uma tabela, porém o INSERT não está salvando os dados, tem algo errado? 
       
      <?php
      session_start();
      include('config.php');
      //  id1
      // recebe pela url
      $id_busca_ajuda = $_GET['id']; 
      // id2
      // recebe pela url
      $nick_busca_ajuda = $_GET['nick']; 
      $id_ajudante = $_SESSION['usuario'];
      // nick 2
      $database = new Database();
      $db = $database->getConnection();
      $query = $db->prepare("SELECT nick_ajudante FROM sala_ajudante WHERE id_usuario_ajudante=".$_SESSION['usuario']);
      $runAjudante = $query->execute();
      $linha = $query->fetch(PDO::FETCH_ASSOC); 
      $nick_ajudante = $linha['nick_ajudante']; 
      // linha que não estpa funcionando
       $query =  $db->prepare("INSERT INTO conversa ('nick1', 'nick2', 'id1', 'id2', 'online') VALUES ('".$nick_busca_ajuda."' , '".$nick_ajudante."' , '".$id_busca_ajuda."' , '".$id_ajudante."' , '1');"); 
      $runConv = $query->execute();

      ?>
    • By Redschenko
      Boa tarde.

      Tenho um sistema onde o usuário faz login e grava a sessão
      $_SESSION['LOGADO'] = true; Nesta página com acesso restrito verifico se o usuário está logado. Caso não, redireciono para página de login.
       
      if(!isset ($_SESSION['LOGADO']) == true) { header("Location:../../index.php?t=d&m=4"); exit(); } Isto estava funcionando corretamente, porém após passar a utilizar https, na página com acesso restrito a verificação ($_SESSION['LOGADO'] == true) está sempre redirecionando para a página de login.
      Alguém sabe se há alguma particularidade para casos onde seja HTTPS?
       
      Agradeço a atenção
      Rodrigo de Oliveira
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.