database beveiliging
Graag wil ik mijn database verbinding beter beveiligen.
Wat zijn hiervoor de beste opties??
Ik weet al voor de $_POST[''] waarden mysql_real_escape_string() te gebruikn.
Ik kan alle input goed gebruiken.. Misschien ergen een goeie tut...
Alvast bedankt voor reacties
LET OP!!! voor php4
Gewijzigd op 01/01/1970 01:00:00 door Beezz
Zou je je verbindings methode misschien hier willen neer zetten dan kunnen we misschien kijken hoe we het 'beter' kunnen beveiligen....
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
$user = '';
$pass = '';
$host = 'localhost';
$dbase = 'dbase';
mysql_connect($host,$user,$pass) or die ('dbase fout');
mysql_select_db($dbase);
?>
$user = '';
$pass = '';
$host = 'localhost';
$dbase = 'dbase';
mysql_connect($host,$user,$pass) or die ('dbase fout');
mysql_select_db($dbase);
?>
Echt op de simpelste manier...
Ik wil eigenlijk met mogelijkheden voor php5 aan de gang maar moet eerst een htaccess bestand op mijn host zetten eer ik php5 kan gebruiken....
PHP 4 stamt uit het stenen tijdperk, die mag je dus eerst wel een gaan updaten. Het heeft weinig zin om aan oude rommel te gaan sleutelen. De verbinding kun je gaan beveiligen met SSL en uiteraard gebruik je sterke wachtwoorden voor de database users.
Je hebt gelijk ik kan ook beter maar even naar php5 gaan.. Is niet veel werk
en kan gelijk over op mysqli of PDO, als ik nu trigger_error gebruik loopt me schript al vast namelijk.
Over mysql_real_escape_string();
Dat wist ik, alleen zijn dat alle beetje sbij elkaar die een betere beveilging geven op het geheel....
Gewijzigd op 01/01/1970 01:00:00 door Beezz
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?PHP
$mysqli = new mysqli('host', 'user', 'password', 'database');
if(mysqli_connect_errno())
{
trigger_error('Fout bij verbinding: '.$mysqli->error);
}
?>
$mysqli = new mysqli('host', 'user', 'password', 'database');
if(mysqli_connect_errno())
{
trigger_error('Fout bij verbinding: '.$mysqli->error);
}
?>
In PDO heb je de keus uit verschillende databases waarmee je verbinding kan maken dus kies maar...
Edit:
Klik Hier
Gewijzigd op 01/01/1970 01:00:00 door Marco PHPJunky
Marco, heb je enig idee waar hij het over heeft? Jij hebt nog geen enkele opmerking gemaakt die ook maar iets met beveiliging te maken heeft. Sterker nog, het is af te raden de MySQL error te tonen in een live omgeving.
Ik weet zeker waar het over gaat maar hij gaf aan dan over wilde gaan op php5 samen met mysqli of pdo dus ik dacht ik geeft hem een klein verbeeldje om hem opweg te helpen....
En ja in een live omgeving kan je dat beter niet doen maar je moet toch ergens beginnen....
maar als ik bijvoorbeeld trigger_error in mijn script(s) gebruik en mysqli dan wordt mijn beeld wit.
Haal ik trigger_error weg dan krijg ik de foutmelding te zien dat de mysqli connectie niet is geslaagd. ( ik heb dan expres een foutieve dbase verbinding staan voor de test)
Waar gaat het fout bij mijn host??
Zit bij hosting2go misschien mis ik iets...
Gewijzigd op 01/01/1970 01:00:00 door Beezz
Welke meldingen krijg je dan op je scherm?
De verbinding werkt en me scherm wordt weer gevuld met een normale website.
Ik moest namelijk een .htaccess bestand in mijn script zetten en dat had ik ook gedaan, echter bleef mijn scherm wit als ik dit stukje code erin zette
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$mysqli = new mysqli('localhost','user','pass',);
if(mysqli_connect_errno())
{
trigger_error('Fout bij verbinding: '.$mysqli->error);
}
?>
$mysqli = new mysqli('localhost','user','pass',);
if(mysqli_connect_errno())
{
trigger_error('Fout bij verbinding: '.$mysqli->error);
}
?>
Nu werkt het wel...
En niets veranderd aan de user en pass....
noob zijn gevoelens die me overspoelen.....
Goed, bedankt mensen ben weer een stukje verder....
Gewijzigd op 01/01/1970 01:00:00 door Beezz
Quote:
LET OP!!! voor php4
Dat is dan meer iets als "Dweilen met de kraan open" ;-)