Avatar billede cronaldo Nybegynder
01. juli 2008 - 21:31 Der er 16 kommentarer og
1 løsning

CPR-tjek - findes det CPR-nummer i Damark?

Ja, det jeg vil have tjekket er i princippet et tjek på, om det indtastede CPR-nummer findes i Danmark?
Altså, man kan jo sagtens lave et tjek på om der er 6 tegn i det ene felt og 4 i det andet, så det ender med at flg. også vil være valid:
111111-1111

Men jeg vil gerne tjekke, om det indtastede CPR-nr. faktisk tilhørende en nulevende dansker - kan det lade sig gøre og i såfald hvordan?
Avatar billede arne_v Ekspert
01. juli 2008 - 21:39 #1
Ikke uden adgang til CPR registret.

Du kan checke for formatet dddddd-dddd og du kan checke om foerste del er an valid dato.
Avatar billede krukken Juniormester
01. juli 2008 - 21:43 #2
Jeg ved ikke, om dette er et issue - men du skal lige huske, at det kræver en speciel tilladelse, hvis du gemmer CPR-numre i en database.
Avatar billede mibu Nybegynder
01. juli 2008 - 21:46 #3
Jep! noget med sikkerheden på databasen! Spørg registertilsynet, det er hjælpsommer mennesker, men du får ikke lov til at gå på kompromi.
Avatar billede bitmatic Nybegynder
01. juli 2008 - 21:47 #4
Du kan også checke om det er et valid cpr-nummer med modulus-11 testen.

Men det fortæller jo ikke noget om, om nummeret er i brug.
Avatar billede arne_v Ekspert
01. juli 2008 - 21:50 #5
modulus-11 testen duer ikke laengere - de er begyndt at uddele CPR numre som ikke
overholder den
Avatar billede bitmatic Nybegynder
01. juli 2008 - 21:51 #6
hehe.... Så har jeg noget software der skal ændres ;-)
Avatar billede arne_v Ekspert
01. juli 2008 - 22:03 #7
Avatar billede cronaldo Nybegynder
01. juli 2008 - 23:54 #8
hmm, jeg vidste slet ikke at man skulle spørge om lov for at gemme CPR .. hvad kan sikkerheden fx gå ud på, som er ekstra?
Avatar billede cronaldo Nybegynder
01. juli 2008 - 23:59 #9
Tror I det er okay hvis jeg kun gør flg.:

Jeg skal bruge det til at "aktivere" kontoer, så hvis jeg ikke lægger det i en database, men blot tjekker det? altså:
dddddd-dddd
og så har jeg variablen $gender .. så kan jeg tjekke om det er valid dato, om det køn CPR-nr. ville tilhøre = $gender og så kan jeg tjekke formatet ?
og hvis det altsammen er opfyldt lægger jeg bare "aktiveret"="ja" ind i tabellen?
Altså intet CPR-nr. gemt?
Avatar billede net-base.dk Nybegynder
02. juli 2008 - 00:10 #10
HVis CPR ikke skal gemme kan det da være lige meget med at tjekke om det er indtastet rigtigt! eller? og evt. bare nøjes med at bede dem indtaste det sidste tal? eller alle de sidte 4! Du skal jo lige huske på at folk kan "sniffe" de data der sendes mellem server og client. og sendes der adr og CPR i samme POST ja så kan snifferen ganske gode data at gå videre med...

Bare et lille hint...
Avatar billede arne_v Ekspert
02. juli 2008 - 00:46 #11
nu kan man jo bruge HTTPS
Avatar billede arne_v Ekspert
02. juli 2008 - 03:28 #12
Med hensyn til at gemme CPR numre i databasen, så læs:
  http://www.datatilsynet.dk/fileadmin/user_upload/dokumenter/Persondatalovspjece/Persondatalovspjece.htm

Udddrag:

I den offentlige sektor må man bruge personnummeret med henblik på en entydig identifikation eller som journalnummer.

I den private sektor er anvendelsen af personnummeret mere begrænset. Virksomheder m.v. må som hovedregel kun behandle personnummeret, når det følger af en lov, eller hvis den registrerede har givet udtrykkeligt samtykke hertil, og det tjener saglige formål.

Det følger eksempelvis af skattelovgivningen, at en privat virksomhed, der skal foretage indberetning til skattemyndighederne af oplysninger om løn og renter, skal oplyse den registreredes personnummer.

Der gælder særlige regler om private virksomheders videregivelse af personnummeret. Dette må normalt kun ske, hvis det følger af lovgivningen, hvis den registrerede har givet sit udtrykkelige samtykke, eller hvis en offentlig myndighed kræver det, f.eks. af regnskabsmæssige grunde.
Avatar billede arne_v Ekspert
02. juli 2008 - 03:28 #13
Jeg mener ikke at loven stiller specifikke krav til hvordan CPR numre skal opbevares, men
de skal opbevares "sikkert".
Avatar billede moddi100 Seniormester
02. juli 2008 - 11:24 #14
Er det så sikkert nok, hvis man gemmer CPR-numrene i en mysqldatabase, hvor man bruger https hver gang, man henter/indsætter det?
Avatar billede arne_v Ekspert
02. juli 2008 - 15:35 #15
(jeg vil antage at I matcher kriterierne for at I maa bruge CPR numre)

Kryptering af transport af CPR numre er et must.

Se:
http://www.datatilsynet.dk/nyheder/seneste-nyheder/artikel/datatilsynets-krav-og-anbefalinger-i-forbindelse-med-overfoersel-af-personoplysninger-via-internettet/

Som sagt er der ikke mange faste regler, men jeg vil ikke vurdere brug af HTTPS ved
transport som vaerende tilstraekkeligt. Der skal yderligere tiltag til.

Gemt i en separat tabel i et krypteret felt er oplagt. Bemaerk at den kryptering
mere beskytter backups end mod hacking, da applikationen jo stadig skal have
adgang til data.

Kun adgang til den tabel via andet brugernavn end de normale data. Beskytter delvist
mos huller i den generelle applikation saasom SQL injection.

Bedst at encapsulate adgangen via en service eller et modul som kun tillader
meget begraensede funktioner - f.eks. kun GetOne ikke GetAll. Og lad endelig
den service / modul dobbelt checke authentication igen. Den service / modul kan
naturligvis ikke tilgaaes udefra direkte.

Der er sikkert flere mulige tiltag. Dette var bare nogle af de mest oplagte.
Avatar billede cronaldo Nybegynder
05. juli 2008 - 00:33 #16
hmm, ja ok :) .. takker for svar, men det bliver droppet :) .. gør det bare til at folk skal være aktiverede for at se visse info :)

smid svar! :)
Jeg deler point i mellem jer :)
Avatar billede arne_v Ekspert
05. juli 2008 - 01:15 #17
svar
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