Avatar billede jenknu Nybegynder
05. januar 2011 - 10:09 Der er 8 kommentarer og
1 løsning

Nyhedstilmeldingssystem - evt. framework?

Hej.

Jeg har fået til opgave at bygge et system, hvor man kan tilmelde sig et nyhedsbrev, og sige jatak til nogle bestemte informationer. Dette er i og for sig nemt nok, men kunden er meget nervøs for "snydeforsøg" da der også skal køre noget konkurrence over dette.

Pga. dette, er jeg lidt nervøs for at håndkode det hele, når man tænker på sql-injections, post-frauds osv. Så jeg overvejede at bygge nyhedssystemet op på et framework som f.eks. CodeIgniter (har jeg godt kendskab til), men syntes også dette er lidt overkill. Men deri ligger der mange gode security-features, og du kan sikre imod injections osv.

Men er der evt. nogen, som kunne anbefale noget andet?
Avatar billede gnowak Nybegynder
05. januar 2011 - 10:51 #1
Der er mange Content Management Systemer (CMS'er) derude, som kan løse opgaven. Jeg har gode erfaringer med Drupal, som kan virke som et tungt system, men kan skalere til de fleste behov.

VH. GrN.dk
Avatar billede jenknu Nybegynder
05. januar 2011 - 10:58 #2
Hej GrN.dk

Ja, jeg har både rodet med Joomla og Drupal, men syntes det er overkill til et simpelt nyhedssystem.

Jeg efterlyser sådan set bare et lightweight framework, hvor sikkerheden er i top. CodeIgniter er et godt bud, men syntes bare det måske er lidt tungt bare for det ene system.
Avatar billede repox Seniormester
05. januar 2011 - 11:06 #3
Jeg bruger ikke andet end CodeIgniter (CI) baserede systemer - CI er det framework jeg har arbejdet med der har givet mig de bedste resultater i mine kundeprojekter. Hvadenten det er en tom CI, MM eller EE (fra ellislab) jeg bruger.

Men CI er ikke mere sikkert end andre frameworks (eller bare almindelig udvikling uden et framework) hvis din kode ikke skrevet på en sikker måde.

CI har ganske vist en masse libs og hjælpere som kan sikre dig god og stabil kode - men hvis man ikke kan finde ud af at skrive den type kode, har det ingen værdi.

Dit spørgsmål kan derfor ikke besvares på præmissen om at du mangler et 'sikkert' framework.
Avatar billede jenknu Nybegynder
05. januar 2011 - 13:36 #4
#3

Tak for svar. Jeg er klar over, at et framework ikke er mere sikkert, end hvad man selv gør det til. Men jeg tænkte på, om der var et framework, som var mere sikkerhedsorienteret? CI har jo escape_str og en encryption class... Men jeg kunne godt tænke mig at benytte noget URL encryption... Men det kan man måske benytte sammen med CIs egen encryption class?
Avatar billede repox Seniormester
05. januar 2011 - 13:55 #5
Jeg tror du må mene noget andet end 'URL encryption' - hvis du krypterer en URL, hvordan skal modtagere af URL'en, så kunne bruge den?

Essensen er at du ikke får mere sikkerhed ved at vælge et framework frem for et andet; det er muligt at der medfølger libs og helpers til de forskellige frameworks, men overordnet set gør det ikke frameworket mere sikkert at metoderne er tilgængelige.

CI har mulighed for at du kan benytte dig af et modificeret Active Record DAL - og endda bruge prepared statements til databasen, så du mindsker risikoen for SQL injections, så du slipper for trivielt arbejde med escape_str().

Nu kender jeg ikke den fuldt beskrevne opgave, men det virker som om du fokuserer for overordnet på projektet ud fra kundens bekymring om sikkerhed - det overfører du til et lavpraktisk syn på den kode du har brug for.

Du skal fokusere på de enkelte elementers sikkerhed i dit projekt.
Avatar billede jenknu Nybegynder
05. januar 2011 - 14:31 #6
URL encryption bruges blot til at kryptere URL'er, således at de skal kaldes fra hovedsiden. F.eks. som en define variabel.

Du har nok ret, at jeg ligger fokus et forkert sted. Primært skal jeg vel blot sørge for at undgå sql injection, og så sætte de gængse sikkerhedsregler for post-forms op.

Jeg tror jeg holder mig til CI, og forsøger at implementere så meget sikkerhed som muligt.
Jeg tror jeg vil læse lidt nærmere om active record DAL - det lyder spændende :-) kan du give nogle gode links/hints?
Avatar billede repox Seniormester
05. januar 2011 - 16:38 #7
Jeg må erkende jeg ikke forstår hvad du mener med URL encryption :) Jeg tror jeg har behov for et kodeeksempel for at få den helt rette forståelse af hvad du mener...

Du kan starte med at kigge her: http://codeigniter.com/user_guide/database/index.html - der er et link til Active Record klassen, som kan give dig nogle hurtige tips.
Avatar billede jenknu Nybegynder
05. januar 2011 - 17:42 #8
Ah ja, active record classen - det tænkte jeg selvfølgelig ikke på. Den har jeg brugt før.

Encryptet URLs bruger man, hvor folk ikke skal kende URL'en. Jeg bruger måske det forkerte ord, for i virkeligheden er det jo en encryptet string man tilføjer til urlen, ligesom et session ID f.eks.
Det er brugbart ved loginforms, og til at undgå robots/hamstring af ens side. Det er dog ikke noget jeg har benyttet mig af i lang tid, og ved sådan set ikke, om det er noget "man" bruger mere.

Nå, men jeg vælger at køre med CI, og prøver at lave et så sikkert system som muligt. Tak for hjælpen, repox. Smid et svar ;)
Avatar billede repox Seniormester
05. januar 2011 - 19:38 #9
Jeg tror at vi kommer til at tale yderligere forbi hinanden, hvis vi fortsætter snakken om encrypted URL'er, så mon ikke det nemmeste er at konkludere at du nok ved hvad du skal bruge det til ;)

Held og lykke med det...
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester