2. Säkerhet 3. Autentisering. 5. Dataintegritet 6. Data privacy 7. PuL 8. Personuppgifter 9. Säkerhetspolicy. Pär Douhan,

Relevanta dokument
FÖ 13: Databaskursen. Pär Douhan,

9. :new och :old -värden 10. Triggerns olika delar 11. Olika typer av triggrar 12. Kodexempel. Pär Douhan,

1. PLSQL 2 2. Select into

Instruktion för integration mot CAS

PERSONUPPGIFTSLAGEN (PUL)

Personuppgiftspolicy. Fastställd efter FS-beslut 19 april 2018

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av känsliga personuppgifter i mobila enheter

Rutin för webbpublicering av personuppgifter

Regel. Behandling av personuppgifter i Riksbanken. 1 Personuppgifter

Lathund Personuppgiftslagen (PuL)

Publicering på Internet

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av personuppgifter i e-post

Riktlinjer för informationssäkerhet

Tillsyn enligt personuppgiftslagen (1998:204) uppföljning av ärende om Kristdemokraternas medlemsregister

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av känsliga personuppgifter i mobila enheter

Identity Management i ett nätverkssäkerhetsperspektiv. Martin Fredriksson

Den nya dataskyddsförordningen Vad innebär förordningen för din verksamhet?

Förteckning över personuppgifter som behandlas i C3 Connect

Övningar i SQL. SQLAccess.doc Ove Lundgren

Personuppgiftslagen (PuL) - En kort introduktion

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av personuppgifter i e-post

Känsliga uppgifter 6. Personnummer på klasslistor 8. Uppgifter om familjemedlemmar 8. Bevarande av uppgifterna 10. Innehållsförteckning.

Beslut efter tillsyn enligt personuppgiftslagen (1998:204) PuL

GDPR Utbildning Varför görs denna förändring? När börjar den nya lagen gälla? Individens rätt Likformighet Uppdatering Kostnadsbesparingar

1. SQL DML (Data Manipulation Language) 2. Lägga till data. 4. Uppdatera data 5. Aktivera default value 6. Hantera datum 7.

Mats Gustavsson Jurist Personuppgiftsombud Karolinska Institutet tfn ,

PRINCIPER FÖR BEHANDLING AV PERSONUPPGIFTER I SALA KOMMUN

Riktlinjer för webbpublicering enligt PuL

Säkerhet. Säkerhet. Johan Leitet twitter.com/leitet facebook.com/leitet. Webbteknik II, 1DV449

1. Förvaltning:... Verksamhetsområde: Kontaktperson: Personregistrets benämning. 4. Hur sker information till de registrerade?

Vyer, Prepared Statements, Triggers

Introduktion till protokoll för nätverkssäkerhet

Punkt 21 Riktlinje för fritextfält

e-förvaltning och juridiken 8 maj 2008 Kristina Blomberg

BILAGA Personuppgiftsbiträdesavtal

riktlinje modell plan policy program regel rutin strategi taxa för behandling av personuppgifter i socialnämndens dataregister ...

Dataskyddsförordningen ( GDPR ) Vad innebär förordningen för verksamheten?

Kerstin Wardman, 25 april 2018

GOOGLE APPS FOR EDUCATION

Innehåll MySQL Intro. Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata

Behandling av personuppgifter vid Göteborgs universitet

Beslut efter tillsyn enligt personuppgiftslagen (1998:204) PuL

Tillsyn enligt personuppgiftslagen (1998:204) avseende behörighetsstyrning i ParaGå

Pul i praktiken LINKÖPINGS KYRKLIGA SAMFÄLLIGHET

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av personuppgifter i e-post

Säkerhet. Föreläsning 6 Säkerhet. Johan Leitet twitter.com/leitet facebook.com/leitet. Webbteknik II, 1DV449

Personuppgiftspolicy

Bilaga Personuppgiftsbiträdesavtal

1. SQL DDL (Data Definition Language) 2. Skapa tabell

Instruktion enligt personuppgiftslagen (1998:204) för Eskilstuna kommunkoncern

Allmänna riktlinjer för behandling av personuppgifter enligt Personuppgiftslagen (PuL)

Välkommen Expertanvändarträff Siebel och Phoniro

Riktlinjer för behandling av personuppgifter vid webbpublicering

Personuppgiftslagen konsekvenser för mitt företag

Riktlinjer för informationssäkerhet

Saknar du svar på någon fråga får du gärna hör av dig till oss. Information om hur du kontaktar oss finns under avsnitt 16 Kontaktuppgifter.

Dataskyddsförordningen 2018

Personuppgiftsbiträdesavtal

Säkerhet för personuppgifter

Mertzig Asset Management AB

Dataskyddsförordningen 2018

Tillsyn enligt personuppgiftslagen (1998:204)

INTEGRITETSPOLICY FÖR REVISIONSTJÄNST FALKENBERG AB

Grundkurs i personuppgiftslagen. Grundkurs för personuppgiftsombud

Tillsyn enligt personuppgiftslagen (1998:204) Behandling av känsliga personuppgifter i mobila enheter

Tillsyn enligt personuppgiftslagen (1998:204) uppföljning av ärende om Vänsterpartiets medlemsregister

Integritetspolicy för externa kontakter inom Fastighetspartner i Göteborg AB

Kommunstyrelsen. Godkänt av kommunstyrelsen , 77 Kompletterad av kommunstyrelsen , 162

Riktlinjer för webbpublicering av protokoll i Gislaveds kommun

Datum: Version: Författare: Christina Danielsson Senast ändrad:

Tillsyn enligt personuppgiftslagen (1998:204) uppföljning av ärende om Socialdemokraternas medlemsregister

Beslut efter tillsyn enligt personuppgiftslagen (1998:204) PuL

Personuppgiftsbehandling för forskningsändamål

Personuppgiftsbehandling i forskning

Översikt av GDPR och förberedelser inför 25/5-2018

INTRODUKTION TILL DATASKYDDSFÖRORDNINGEN OCH BEHANDLING AV PERSONUPPGIFTER VID HÖGSKOLAN

Beslut efter tillsyn enligt personuppgiftslagen (1998:204) PuL

Att. GDPR Humlegårdsgatan , Stockholm. Besök oss gärna på

Beslut efter tillsyn enligt personuppgiftslagen (1998:204) PuL

REKRYTERINGSHUSET. RekryteringsHuset i Sverige AB Integritetspolicy

PuL och ny dataskyddsförordning. Nätverksträff Informationssäkerhet i fokus 4 maj 2015

Informationssäkerhet Informationssäkerhet. Medicinteknisk säkerhetskurs

Säkerhet. Säker kommunikation - Nivå. Secure . Alice wants to send secret message, m, to Bob.

ORU /2016 Användning av IT-resurser - riktlinjer vid Örebro universitet

Beslut efter tillsyn enligt personuppgiftslagen (1998:204)

Riktlinjer för publicering av personuppgifter på webbplatser 16 KS

Manual för ansökan till Stiftelsen Kjellbergska Flickskolans Donationer

Telia Centrex IP Administratörswebb. Handbok

Union to Unions policy om dataskyddsförordningen, General Data Protection Regulation (GDPR)

Anmälan av personuppgiftsincident

Snabbstart - "första gången användare"

Säkerhet för personuppgifter

Etikprövningslagen. Reglering efter 2:a världskriget. Lagar som reglerar forskning i Sverige.

Uppstart Inloggning SSMS Skapa Databas Skapa Tabell Skapa Diagram, Fk, RI Hantering av Index, Pk, Fk, Ix Constraints Beräknande fält Några funktioner

Papperskopia av dokumentet endast giltigt med röd stämpel: Registrerad kopia.

INTEGRITETSPOLICY FÖR HUFVUDSTADENS HYRESGÄSTER

Anmälan om att en utbildningsanordnare brister i arbetet med aktiva åtgärder

INTEGRITETSPOLICY FÖR VERKSAMHETEN

GDPR. Datalag Personuppgiftslag Dataskyddsförordning - maj Dataskyddslag - maj 2018

Transkript:

FÖ 13: Databaskursen 1. Olika kodexempel 2. Säkerhet 3. Autentisering 4. Auktorisering i 5. Dataintegritet 6. Data privacy 7. PuL 8. Personuppgifter 9. Säkerhetspolicy 1 Pär Douhan, pdo@du.se

Procedurer, funktioner och triggrar Kodexempel 2

Ny lön PERSONAL anstr fnamn enamn lön 1 Anders Magnusson 36280 2 Maria Bergdahl 41250 3 Amir Nirbashiri 39500 4 Ann-Christin Eriksson 39000 create or replace trigger testa_ny_lön before update on personal for each row begin if (:new.lön <= :old.lön) then raise_application_error( -20001,'För låg ny lön!'); end if; end; 5 Folke Bengtsson 75400 Uppgift: Skapa en trigger som ser till att den nya lönen, efter den årliga löneförhöjningen, inte kan bli lägre än den gamla lönen. 3

Kontrollera att triggern fungerar PERSONAL anstr fnamn enamn lön 1 Anders Magnusson 36280 2 Maria Bergdahl 41250 3 Amir Nirbashiri 39500 4 Ann-Christin Eriksson 39000 5 Folke Bengtsson 75400 update personal set lön = 36280 where anstnr = 1; commit; Error starting at line : 12 in command - update personal set lön = 36280 where anstnr = 1 Error report - SQL Error: ORA-20001: För låg ny lön! ORA-06512: vid "TEST.KOLLANYLÖN", rad 3 ORA-04088: fel vid körning av triggern 'TEST.KOLLANYLÖN' Triggern verkar fungera: Som vi ser så stoppar triggern transaktionen och skiver ut ett felmmedelande: ORA -20001: För låg ny lön! 4

Räkna personal AVDELNING avdnr avdnamn antal PERSONAL anstnr fnamn enamn lön anstdatum avdnr 100 Ekonomi 0 200 Produktion 0 300 Marknadsföring 0 Uppgift: Skapa en trigger som ser till att hålla reda på hur många anställda det jobbar på varje avdelning. Om en person anställs ska triggern öka värdet med 1 i kolumnen AVDELNING(antal). Om en person slutar ska triggern minska värdet med ett, och om en anställd byter avdelning ska även det lösas av triggern. 5

Checklista Anställning: En insert i tabellen personal betyder att en person anställs på en viss avdelning. Efter insert på tabellen personal ska triggern alltså uppdatera tabellen avdelning genom att öka på antalet anställda med +1. Anställning upphör: En delete på tabellen personal betyder att en person avslutar sin anställning på företaget. Efter delete på tabellen personal ska triggern uppdatera tabellen avdelning genom att minska på antalet anställda med 1. Byte av avdelning: 6 En update på tabellen personal och kolumnen avdnr, betyder att en person byter avdelning på jobbet, d.v.s. får andra arbetsuppgifter. Efter update på tabellen personal och kolumnen avdnr ska triggern uppdatera tabellen avdelning genom att minska på antalet anställda med 1 på den avdelning som personen jobbade på, och slutligen öka antalet med +1 på den nya avdelningen som personen börjar jobba på.

Vad behöver vi? Tre procedurer som utför update på tabellen avdelning: 1. öka med 1 2. minska med 1 3. öka med 1 och minska med 1 4. Procedurerna kommer att behöva avdnr som inparameter. Detta för att veta vilken avdelning som ska uppdateras Tre triggrar som anropar procedurerna efter DML (insert, update och delete) på tabellen personal: 1. After insert on personal 2. After delete on personal 3. After update on personal of avdnr 7

Procedurer Vi börjar med att skapa procedurer: -- Procedur som ser till att antalet ökas med 1 vid anställning create or replace procedure do_anställning( p_avdnr in avdelning.avdnr%type) as begin update avdelning set antal = antal + 1 where avdnr = p_avdnr; end; -- Procedur som ser till att antalet minskas med 1 vid avsked create or replace procedure do_avsked( p_avdnr in avdelning.avdnr%type) as begin update avdelning set antal = antal - 1 where avdnr = p_avdnr; end; 8

Procedurer En procedur kvar: /* Procedur som ser till att antalet minskas med 1 och ökas med 1 vid byte av jobb */ create or replace procedure do_byt_jobb( _ p_avdnr_old in avdelning.avdnr%type, p_avdnr_new in avdelning.avdnr%type) as begin update avdelning set antal = antal - 1 where avdnr = p_avdnr_old; update avdelning set antal = antal + 1 where avdnr = p_avdnr_new; end; Testa att procedurerna fungerar! 9

Översikt avdelning # avdnr antal update update update P P P T T T personal # anstnr (#) avdnr T Trigger after insert: anropar procedur: do_anställning(:new.avdnr) T Trigger after delete: anropar procedur: do_avsked(:old.avdnr) T Trigger after update: anropar procedur: do_byt_jobb(:old.avdnr,:new.avdnr) 10

Triggrar Bara att köra på! -- Triggern startar efter insert på tabellen personal create or replace trigger fixa_anställning after insert on personal for each row begin do_anställning(:new.avdnr); Anrop av proceduren do_anställning end; -- Triggern startar efter delete på tabellen personal create or replace trigger fixa_avsked after delete on personal for each row begin do_avsked(:old.avdnr); end; 11

Triggrar En trigger kvar: /* Triggern startar efter update på tabellen kund och bara när avdnr uppdateras. OBS! Triggern måste skicka med både old och new-värden till proceduren i rätt ordning old = den gamla avdelningen som personen slutat på, och new = den nya avdelningen som personen börjar jobba på. */ create or replace trigger fixa_byt_jobb after update of avdnr on personal for each row begin do_byt_jobb(:old.avdnr,:new.avdnr); end; 12

Testa att after insert fungerar AVDELNING avdnr avdnamn antal PERSONAL anstnr fnamn enamn lön anstdatum avdnr 100 Ekonomi 01 1 Lars Berg 42500 20090217 100 200 Produktion 0 300 Marknadsföring 0 insert into personal(anstnr,fnamn,enamn,lön,anstdatum,avdnr) values(1,'lars','berg',42500,to_date('20090217','yyyymmdd'),100); commit; select * from avdelning; AVDNR AVDNAMN ANTAL ----- ---------------------- ------ 100 Ekonomi 1 200 Produktion 0 300 Marknadsföring 0 13

Testa att after insert fungerar insert into personal(anstnr,fnamn,enamn,lön,anstdatum,avdnr) values(2,'maria','ek',45000,to,,45000,to_date( date('20120610','yyyymmdd'),100); commit; select * from avdelning; AVDNR AVDNAMN ANTAL ----- ---------------------- ------ 100 Ekonomi 2 200 Produktion 0 300 Marknadsföring 0 Vi ser att triggern räknar upp efter anställning g av en ny personal. insert into personal(anstnr,fnamn,enamn,lön,anstdatum,avdnr) values(3,'hasan','fley',43000,to_date('20110502','yyyymmdd'),100); commit; select * from avdelning; AVDNR AVDNAMN ANTAL ----- ---------------------- ------ 100 Ekonomi 3 200 Produktion 0 300 Marknadsföring 0 14

Testa att after delete fungerar AVDELNING avdnr avdnamn antal 100 Ekonomi 32 200 Produktion 0 300 Marknadsföring 0 PERSONAL anstnr fnamn enamn lön anstdatum avdnr 1 Lars Berg 42500 20090217 100 2 Maria Ek 45000 20120610 100 3 Hasan Fley 43000 20110502 100 delete from personal where anstnr = 3; commit; select * from avdelning; AVDNR AVDNAMN ANTAL ----- ---------------------- ------ 100 Ekonomi 2 200 Produktion 0 300 Marknadsföring 0 15

Testa att after update fungerar update personal set avdnr = 300 where anstnr = 1; commit; Alla triggrar och procedurer verkar fungera som de ska! select * from avdelning; AVDNR AVDNAMN ANTAL ----- ---------------------- ------ 100 Ekonomi 1 200 Produktion 0 300 Marknadsföring 1 column fnamn format a14 column enamn format a14 select * from personal; Kan användas för att formatera utskriften i t.ex. SQL Developer eller SQL Plus. Om man har fnamn varchar2(50) så blir det onödigt breda kolumner i resultatet. a14 = 14 tecken bred kolumn. ANSTNR FNAMN ENAMN LÖN ANSTDATUM AVDNR ------ -------------- -------------- ---------- ------------ ------ 2 Maria Ek 45000 2012-06-10 100 1 Lars Berg 42500 2009-02-17 300 16

Behörighetskontroll PASSERKORT SALSBEHÖRIGHET SAL pkortnr user radnr pkortnr salsnr salsnr sittplatser t 114588 pdo 332255 hro 124589 h14ankre 235147 afm 25 114588 B349 26 114588 B311 27 114588 B320 28 332255 B320 B349 20 B311 60 B320 60 B319 30 985214 h12ermag 29 124589 B349 B310 60 Tabellen Salsbehörighet innehåller information om vilka passerkort som öppnar dörrar till vissa salar. Vi ser att kort 114588 öppnar dörren till salar B349, B311 och B320. En insert i tabellen Salsbehörighet innebär att ägaren till ett unikt passerkort har rätt att komma in i en viss sal. Kombinationen av (pkortnr, salsnr) i tabellen Salsbehörighet är unik. 17

Uppgift SALSBEHÖRIGHET radnr pkortnr salsnr 25 114588 B349 26 114588 B311 27 114588 B320 28 332255 B320 Vi antar att all data som finns i tabellen Salsbehörighet är den som vi ser i tabellen här bredvid. Om en person med passerkort 332255 försöker gå in i sal B349, så kommer det inte att gå. Detta följer av att det finns 0 (noll) rader i tabellen där pkortnr = 332255 OCH salsnr = B349. 29 124589 B349 Uppgift: Skapa en funktion med namnet open_door som returnerar 1 (ett) om en person är behörig till en viss sal, och 0 (noll) om personen är obehörig. 18

Räkna rader create or replace function open_door( p_pkortnrpkortnr salsbehörighet.pkortnr%type, p_salsnr salsbehörighet.salsnr%type) return number as v_ resultat number(1); begin select count(radnr) into v_resultat Kan bara innehålla 1(ett) eller 0(noll) from salsbehörighet where pkortnr = p_pkortnrpkortnr and salsnr = p_salsnr; return v_resultat; Returnerar således alltid 1 eller 0 end; select open_door(114588,'b349') from dual; OPEN_DOOR ---------- 1 19

En annan lösning create or replace function open_door( p_pkortnr salsbehörighet.pkortnr%type, p_salsnr salsbehörighet.salsnr%type) return number as v_resultat number(1); begin select radnr into v_resultat from salsbehörighet where pkortnr = p_pkortnr and salsnr = p_salsnr; return 1; exception when no_data_found then return 0; end; Om vi inte hittar någon rad, så innehåller v_resultat NULL. Om v_resultat innehåller NULL så kastas undantaget no_data_found och funktionen returnerar 0 select open_door(114588,'b349') from dual; OPEN_DOOR ---------- 1 20

Säkerhet Grundläggande begrepp 21

1. Authentication Vi börjar med att titta på fyra olika grundbegrepp som är relaterade till säkerhet: 1. Authentication Autentisering: visa "att jag är jag". Att koppla samman en användare med ett användarkonto och kontrollera att användaren har rätt till detta, kallas autentisering (eftersom det kontrollerar att användaren är autentisk). En alternativ benämning är inloggning (speciellt då autentiseringen sker med lösenord). Mobilt BankID och e-legitimation. 22

Centraliserad autentisering Centraliserad autentisering och "Single Sign-on" Centraliserad autentisering ger också fördelen av single sign-on (SSO) för användarna. Single sign-on möjliggör för användare att få tillgång till flera konton och applikationer med ett enda lösenord. En användare behöver bara logga in en gång och kan sedan automatiskt ansluta till någon annan tjänst utan att behöva ge ett användarnamn och lösenord igen. Single sign-on eliminerar behovet för användaren att komma ihåg och administrera flera lösenord, vilket minskar den tid du loggar in flera tjänster. 23

Steg för steg Så här fungerar centraliserad nätverks-autentisering: 1. En användare (klient) begär autentiseringstjänster och tillhandahåller identifieringsinformation, såsom en token eller lösenord. 2. Autentiseringsservern validerar klientens identitet, och skickar sedan tillbaka autentiseringsuppgifter, ett certifikat, (som kan innehålla en giltighetstid) till klienten. 3. Klienten skickar dessa autentiseringsuppgifter till Oracle-servern tillsammans med en begäran att få en databasuppkoppling. 4. Oracle-servern skickar certifikatet tillbaka till autentiseringsservern för autentisering. 5. Om autentiseringsservern accepterar certifikatet så meddelar autentiseringsservern Oracle-servern om att allt är OK och klienten får sin databasuppkoppling. 6. Om autentiseringsservern inte accepterar certifikatet så meddelar autentiseringsservern Oracle-servern om att autentiseringen misslyckades. Klienten nekas sin databasuppkoppling. 7. Oracle har stöd för följande industristandarder (protokoll): Kerberos RADIUS (Remote Authentication Dial-In User Service) DCE (Distributed Computing Environment) Secure Sockets Layer (with digital certificates) Entrust/PKI 24

2. Authorization 2. Authorization Auktorisering, bemyndiga eller godkänna. När klienten väl har auktoriserats (loggat in), vad har klienten rätt att göra? Vilka behörigheter har klienten i systemet? RBAC, Role-Based Access Control (Rollbaserad åtkomst). Innebär att roller skapas som motsvarar vissa arbetsuppgifter på ett företag eller i en organisation. Dessa roller tilldelas sedan olika behörigheter som krävs för att utföra de arbetsuppgifter som är kopplade till rollen. Några exempel på behörigheter kan vara: "Skapa kundorder", "titta på lagersaldo" etc. Slutligen tilldelar man en eller flera roller till användarna. Behörigheter delas aldrig ut direkt till användarna. PERMISSIONS USERS ROLES OBJECTS OPERATIONS (UA) (PA) Permission User Assignment Assignment 25

3. Data integrity 3. Data integrity ty Dataintegritet betyder att ett meddelande inte förändras under transport över ett nätverk. Detta kan realiseras med krypterade checksummor som skickas tillsammans med meddelandet. Till exempel: MD5 och SHA-1 hash algoritmer. 26

4. Data privacy 4. Data privacy Data privacy eller data protection innebär att ingen ska kunna spionera på data som transporteras över ett nätverk. Olika krypteringstekniker med privat och publik nyckel. 27

Säkerhet Datainspektionen och PuL 28

Fakta Personuppgifter Med personuppgifter avses all slags information som direkt eller indirekt kan kopplas till en fysisk person som är i livet. Exempel på sådan information är namn, personnummer och kundnummer. En bild kan också vara en personuppgift om det går att se vem personen/personerna på bilden är. Personuppgiftsansvarig Personuppgiftsansvarig g kallas den som bestämmer varför och hur personuppgifter ppg ska behandlas. En personuppgiftsansvarig kan till exempel vara en kommun, myndighet, organisation eller ett företag. Det är alltså är inte chefen på en arbetsplats eller en anställd som är personuppgiftsansvarig. Undantagsvis kan en fysisk person vara personuppgiftsansvarig, till exempel en enskild företagare. 29

Publicering på Internet Vad får man lägga ut på webben? I personuppgiftslagen (PuL) finns inga särskilda regler för publicering på internet. Personuppgiftslagens generella regler för behandling av personuppgifter gäller även när man publicerar personuppgifter på webbplatser, bloggar och liknande. Om personuppgifter publiceras i en löpande text på internet, till exempel i en blogg, är publiceringen i princip tillåten så länge man inte kränker den som personuppgifterna handlar om. Det är inte möjligt att generellt slå fast vad som är en kränkning av den personliga integriteten utan man måste göra en bedömning i varje enskilt fall och väga in samtliga omständigheter. Faktorer som påverkar bedömningen är bland annat syftet med publiceringen, vilka uppgifter som publiceras, var dessa publiceras, vilken information som har lämnats och hur länge uppgifterna publicerats på internet. Att publicera personuppgifter i syfte att skandalisera eller "hänga ut" någon är tydliga exempel på publicering som normalt är kränkande enligt personuppgiftslagen. 30

Undantag Det finns undantag för journalistiska s a ändamål Ibland publiceras personuppgifter på internet på ett sätt som är kränkande utan att publiceringen står i strid med personuppgiftslagens bestämmelser. Det beror bland annat på att det i personuppgiftslagen finns ett undantag för journalistiska ändamål. Att informera och debattera om personal som missköter sitt arbete och om situationen vid ett vårdboende kan vara tillåtet med stöd av detta undantag trots att det kan finnas information som kan uppfattas som kränkande för personalen. 31

Känsliga personuppgifter Bedöm hur känsliga uppgifterna är Enligt personuppgiftslagen gäller särskilda begränsningar för behandling av vissa kategorier av personuppgifter. I lagen betecknas dessa uppgifter som känsliga personuppgifter. Känsliga personuppgifter är enligt personuppgiftslagen sådana som avslöjar: ras eller etniskt ursprung politiska åsikter religiös eller filosofisk övertygelse medlemskap i fackförening uppgifter som rör hälsa eller sexualliv. 32

Säkerhetskrav Personuppgiftslagens (1998:204) krav på säkerhet vid behandling av personuppgifter: Säkerhetskraven innebär enligt 31 personuppgiftslagen att den personuppgiftsansvarige ska vidta lämpliga tekniska och organisatoriska åtgärder för att skydda de personuppgifter som behandlas. Åtgärderna ska åstadkomma en säkerhetsnivå som är lämplig med beaktande av: de tekniska möjligheter som finns, vad det skulle kosta att genomföra åtgärderna, de särskilda risker som finns med behandlingen av personuppgifterna, och hur pass känsliga de behandlade personuppgifterna är. 33

Organisation Personalen Personalen är den viktigaste resursen i säkerhetsarbetet. Man kan ha bra och dyr teknisk utrustning för säkerhet, men om utrustningen inte används rätt är investeringen bortkastad. Fungerande administrativa rutiner är väl så viktiga som tekniska lösningar. Säkerhetspolicy En personuppgiftsansvarig bör, i vart fall om en omfattande behandling av personuppgifter utförs eller om känsliga personuppgifter behandlas, ha en fastställd säkerhetspolicy. I en säkerhetspolicy bör man lämpligen redovisa organisationens säkerhetsstrategi, ansvarsfördelning och övergripande mål för säkerheten. En säkerhetspolicy bör vara tydlig samt lätt att förstå och tillämpa i praktiken. 34

Mänskliga misstag Den personuppgiftsansvarige bör se till att personalen informeras om vikten av att följa gällande säkerhetsrutiner. Den personuppgiftsansvarige bör göra klart för personalen att det är viktigt att: inte skriva upp lösenord, logga ut när man lämnar arbetsstationen, låsa arbetsrummet när man inte är där, inte ha bildskärmen vänd så att obehöriga kan läsa informationen, inte dela med sig information till någon annan utan att vara säker på att den personen är behörig att få ta del av informationen, inte skriva ut känslig information på en skrivare som obehöriga har eller lätt kan skaffa sig tillgång till. 35

Andra åtgärder När det gäller åtgärder mot otillbörlig åtkomst bör den personuppgiftsansvarige även se över behovet av till exempel: rutiner vid besök, rutiner och regler vid distansarbete och Internetanvändning, rutiner för att ta bort inaktuella användarkonton, installation av aktuella programuppdateringar från leverantörerna för att motverka säkerhetshål i programvaror. 36

The End 37