05. januar 2009 - 17:56Der er
23 kommentarer og 1 løsning
Hvor sikker er en MySQL-database?
Hej!
Jeg går og funderer over om det er forsvarligt at opbevare personlige oplysninger, såsom fulde navn, adresse, e-mail, fødselsdato m.v. i en MySQL-database?
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
Selvfølgelig er det forsvarligt - lige så forsvarligt som fx MSSQL. Der hvor usikkerheden opstår er andre steder, fx hvis der ikke er lukket af for sql injection eller indgangen til databasen ikke er sikret.
Så hvis man har MySQL-databasen liggende hos sin webhoteludbyder, som eksempelvis http://domaindirect.dk/ er det ikke sikkert nok?
>>"fx hvis der ikke er lukket af for sql injection eller indgangen til databasen ikke er sikret."<< Hvornår er der lukket for sql injection? Jeg indsætter og henter visse data via php-kode... Og hvad menes med indgangen til databasen er sikret? - Hvordan kan dette i så fald gøres? Databasen er sikret med adgangskode.
Du kan ikke som udgangspunkt regne med at databasen er sikret mod andre kunder på webhotellet. Ofte er det megasimpelt at aflæse andres mysql-password. Så med mindre webhotellet vil garantere en vis form for sikkerhed, så skal man ikke regne med det.
Erik kan du give et eksempel på hvad du mener er megasimpelt? hvis du mener at det oftest er folks fødselsdato, telefonnummer, 123456, etc. så forstår jeg hvad du mener.
nick, rigtigt navn, email adresse, password, CPR nummer og credit card nummer kræver forskellige niveauer af sikkerhed.
Man skal vurdere hvad man vil beskytte sig mod: sine egne brugere, amatør hackere, professionelle kriminelle hackere, admins på web og database server, folk i ens egen organisation.
Og så vælger man et passende sikkerhedsniveau.
Umiddelbart synes jeg ikke at de data du nævner er så følsomme, at det automatisk skal udelukke brug af web hotel.
På den anden side vil jeg ikke bruge et web hotel der tillader brugere at hapse andre brugers MySQL password til at opbevare noget som helst på.
Lige som et tillæg hertil, tillader min webhoteludbyder ikke adgang til databaseserveren fra eksterne forbindelser, men kun fra webserveren. Derudover er serveren også beskyttet med firewall.
Dette har vel også en betydning, nu når jeg har beskyttet mig mod SQL-injections på den interne forbindelse.
Din beskyttelse skal jo kun svare til vigtigheden af det, der skal beskyttes. Men næste skridt er selvfølgelig din egen server, med en ansvarlig administration af server og opsætning.
Jeg syntes ikke, at mit projekt er i det omfang, at jeg vil gå ud og investere i egen server mv. udstyr.
Men hvis jeg skal beskytte personlige data såsom fulde navn, adresse, tlf nr., e-mail, fødselsdato og lign.
Hvor meget skal der til? Hvornår er det sikkert nok, så at jeg kan sove trygt, uden at have frygt for, at de inskrevne personer kan blive "opsøgt" i deres private "gemakker"?
Kan den ovennævnte funktion give mig søvnløse nætter? - i så fald, hvordan kan den forbedres? - eller findes en alternativ beskyttelse? - set bort fra egen server/intranet.
- Nu nævner I at mysql_real_escape_string er forældet. Hvad er alternativet?
Selvfølgelig er der andet end SQL-injections som kan gøre livet surt.
Mit problem er, at jeg ikke kender til, hvad der kan gøre skade, igennem hvad der kan gøres skade, og så har jeg desværre ikke viden til hvilke måder, jeg så kan beskytte mine data tilstrækkeligt.
Jeg kender ikke, alle de mange funktioner, som php, mysql mv. kan udføre og har desværre en begrænset viden. Derfor henvender jeg mig til eksperterne for at høre om de kan nævne nogle eksempler på hvilke funktioner, som er brugbare.
Jeg er frisk på at lære nyt (bla. mysqli), men jeg synes php.net's manual er meget tungtlæseligt og uoverskueligt for en "begynder". - beklager hvis jeg opfattes som lidt negativ :S
Jeg kan feks. ikke lige gennemskue, hvad den store forskel imellem MySQL og MySQLi er...? - bare nogle andre funktioner, som er en forbedret udgave af MySQL?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.