Mange nettsteder bruker en PHP - baserte websider for å få tilgang til informasjon lagret i en MySQL database, for eksempel e -handel eller oppslagstavler . Ingen sikkerhetssystem er feilfri. Men når du oppretter et nettsted som bruker en PHP og MySQL login form, inkluderer sikkerhetsfunksjoner, fra brukerkontoer til informasjon kryptering for å loggene om påloggingsforsøk . Dette ikke bare bidrar til å hindre angrep på , men kan også bidra til å forbedre sikkerheten ved hjelp av detaljerte notater om noen gang nettstedet er hacket . Logg inn og passord
Mange bedrifter krever brukerkontoer å ha "sterk" passord. Definisjonen av et sterkt passord varierer, men vanligvis inneholder en kombinasjon av store og små bokstaver , numeriske verdier og spesialtegn. Disse gjør det vanskeligere å gjette passord . Når en bruker prøver å logge deg på MySQL -databasen gjennom en PHP form og mislykkes, ikke være konkret om grunnen til at de mislyktes. Bare fortelle brukeren om at påloggingen var mislykket. På denne måten er ikke å gi ekstra informasjon til potensielle hackere .
Data Encryption
p Hvis du opprettholder en database med brukeren påloggingsinformasjon, sørg for at du krypterer dataene. Leaving brukernavn og passord ukryptert er risikabelt , spesielt hvis en uvedkommende får tilgang til databasen. PHP har en funksjon som heter " sha1 ( ) ", som konverterer en streng som et passord til sin SHA - 1 hash-verdi . Lagre denne verdien i MySQL. Når en bruker prøver å logge inn via PHP, kan du bruke sha1 ()-funksjonen til å konvertere passordet til SHA - 1 og sammenligne verdien til den i databasen. Hackere som får tilgang til databasen vil ikke se de faktiske passord selv.
PHP funksjoner
Håndter PHP feil på en måte som holder informasjon til brukeren på et minimum. For eksempel bruke " @ "-symbolet før PHP-funksjonen kaller samt "die ( ) "-funksjonen - for eksempel " @ mysql_connect ( ... ) or die ( " Kunne ikke koble " )," - så hvis at funksjonen ikke klarer å utføre en eller annen grunn , ser brukeren en feilmelding du vil de skal se , ikke en som gir mer informasjon enn han trenger å vite. Også , når du passerer informasjon som brukernavn og passord fra en PHP side til en annen , bruke PHP " $ _POST " funksjon å holde informasjonen usynlig for brukeren heller enn " $ _GET "-funksjonen , som viser det i adressefeltet.
MySQL logger
Ved overvåkning påloggingsinformasjon , opprettholde datalogger kan gå langt i å spore sikkerhetsspørsmål og bidra til å indikere hull . Jo mer informasjon du logger , jo bedre kan løse problemer . På et minimum , spore hvor mange ganger en person logger seg på et system og stempel minst den siste loggen i forsøk med dato og klokkeslett, og lagre denne informasjonen i en MySQL tabell . Begrense tilgang til loggene også, å begrense antall personer som kan vise eller tilpasse dem .