Spara formulärdata i en databas

ANON::form > Blogg > Kontaktformulär > Spara formulärdata i en databas

De flesta webbplatserna/CMS:en har någon form av formluär där formulärdata antingen sparas i en databas eller sänds till mottagaren via e-post. Båda alternativen har sina för och nackdelar. Och framför allt risker.

Läs mer om säkerheten i e-post transport av formulärdata i vår artikel “Säkra formulär för kontakter“.

De flesta CMS systemen har idag en god säkerhet när det gäller att skydda själva systemet. Men när man lägger till ett formulär så ändras spelreglerna då formulär skapar en väg rakt in i systemet från webbsidan när formulärdata sparas i systemets databas.

Datat skall inte bara hanteras på ett säkert sätt hela vägen in i databasen, det skall också skyddas mot obehörig åtkomst. Det här kräver en hel del egna säkerhetsåtgärder som många vanliga CMS system helt saknar.

Mer säkerhet krävs

Eftersom en webbplats är exponerad 24/7/365 så bör inte känslig data sparas i denna över huvud taget om inte systemet explicit är byggt för detta. Ett mycket bättre alternativ är att sända formulärdata direkt från formuläret till en databas som skyddas på ett korrekt sätt. Och helst inte alls exponeras direkt mot internet.

Den vanligaste metoden att göra detta är att sända data som ett anrop till ett API som sedan hanterar och sparar datat på lämpligt sätt.

Metoden kräver dock att API:et måste exponeras på internet och därför kräver en tillräcklig inloggning utöver övriga säkerhetsåtgärder. Något som kan kräva knepig komplexitet i klienten (formuläret) som sänder datat, tex svårigheten att spara inloggningsinformation på ett säkert sätt.

Att sända data till ett API skapar också problem med att upprätthålla anonymitet (som är viktigt i tex visselblåsarkanaler) i och med att all trafik loggas och därmed kan spåras.

Men det finns alternativ

Ett annat sätt, som ANON::form erbjuder, är att sända formulärdatat End-to-end krypterat (E2EE) och ospårbart via e-post. Och ha en klient som automatiskt tar emot e-postmeddelandet, packar upp datat och sparar det i databasen på ett säkert sätt.

Då slipper du komplexiteten för inloggning mm i formuläret och kan ha en databas i ditt intranet utan exponering mot internet. E-postsystemet har redan en hel del säkerhet och resten är enkelt att lägga till.

Så här fungerar ANON::forms lösning:

  1. Kunden skapar ett e-postkonto i sitt e-postsystem som enbart skall hantera inkommande e-post från formulären.
  2. Ett E2EE Form Basic abonnemang beställs från oss (OBS! det fungerar inte med vårt E2EE Form Lite abonnemang).

    I beställningen anges att formulärdata skall användas för automatisk lagring samt e-postkontots adress som mottagare. Ett, flera eller alla formulär kan sända data på detta sätt till en gemensam eller egna e-postadresser.

    Krypteringsnycklar skapas och kunden får all info om formulärens fältnamn och annat som behövs i punkt 6 nedan.
  3. Formuläret hämtas från ANON::forms säkra servers. Antingen som ett externt formulär via länk i webbplatsen eller som inbäddat i en av webbplatsens sidor.
  4. Formuläret fylls i och krypteras i webbläsaren. Men i stället för ett vanligt e-postmeddelande konverteras formulärdatat till JSON-kodad data.
  5. Meddelandet sänds via ANON::forms säkra e-postservers och landar till sist i mottagarens e-postlåda. Fortfarande krypterat.
  6. En klientapplikation i det system som skall spara formulärdatat i en databas hämtar e-postmeddelandet, dekrypterar det och konverterar JSON till lämpligt format, tex en lista eller ett objekt.

    Applikationen importerar även bifogade filer om sådana finns. De sänds krypterade i e-postmeddelandet som bilagor, inte som en del av JSON.
  7. Efter att ha “tvättats” sparas datat i databasen där det sedan kan nås av olika applikationer som hanterar formulärdatat.

Eftersom det finns många olika system och programmeringsspråk erbjuder vi inte någon färdig lösning för klientapplikationen. Men lösningen är okomplicerad och kan enkelt skapas av en van utvecklare. Vi hjälper naturligtvis till med det vi kan.

Denna speciallösning kostar inte heller något extra att lägga upp hos oss utan ingår i uppläggningskostnaden. För hjälp med klientapplikationen rekommenderar vi vår samarbetspartner Schuetten Consulting Ab Ltd (som även byggt tjänsten ANON::form).

Även om ANON::form som standard inte stöder direktlagring av formulärdata i en databas så är det enkelt att implementera en sådan lösning. Som är betydligt mer säker än att spara i CMS-systemets databas eller via ett API som även kräver komplex inloggning.