Whitepaper Verseon en informatiebeveiliging
Circle Software Group B.V., 22 november 2013. Alle rechten voorbehouden. Herdruk of uitgave aan derden op welke wijze dan ook is niet toegestaan zonder voorafgaande schriftelijke toestemming van de copyrighthouder. Rapportnummer: CSG/2013/40193
Circle Software Whitepaper Verseon en informatiebeveiliging
INHOUDSOPGAVE 1.
REVISIE OVERZICHT
1
2. 2.1 2.2
INLEIDING Informatiebeveiliging Doelstelling
2 2 2
3. 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8
INFORMATIEBEVEILIGING IN VERSEON Informatiebeveiliging Identificatie en authenticatie Access control Data confidentiality Integrity Data availability Authenticity en Non-repudiation Auditing
4 4 4 5 6 8 8 9 9
4.
BEVEILIGING IN RELATIE TOT ISO/IEC 27001:2005
CSG/2013/40193
22 november 2013
11
i
Circle Software Whitepaper Verseon en informatiebeveiliging
1. REVISIE OVERZICHT Revisie 1.0
CSG/2013/40193
Wijziging Initiële versie Aanpassingen n.a.v. reviews
22 november 2013
Datum Oktober 2013 November 2013
CSG-nummer CSG/2013/40193
1
Circle Software Whitepaper Verseon en informatiebeveiliging
2. INLEIDING 2.1 Informatiebeveiliging Informatiebeveiliging is het geheel van preventieve, detectieve, repressieve en correctieve maatregelen alsmede procedures en processen die de beschikbaarheid, exclusiviteit en integriteit van alle vormen van informatie binnen een organisatie (of een maatschappij) garanderen, met als doel de continuïteit van de informatie en de informatievoorziening te waarborgen en de eventuele gevolgen van beveiligingsincidenten tot een acceptabel, vooraf bepaald niveau te beperken. Men doet dit door het treffen van de noodzakelijke organisatorische, procedurele en technische maatregelen die gebaseerd zijn op een (organisatieafhankelijke) risicoanalyse of een wettelijke verplichting. Op basis van deze risicoanalyse kan het gewenste niveau van beveiliging worden bepaald. Informatiebeveiliging in relatie tot Verseon Zoals hierboven beschreven is Verseon een technisch onderdeel in het geheel als het gaat om informatiebeveiliging. Het inzetten en configureren van het Verseon Platform betekent dus niet dat een organisatie geen risico’s loopt op het gebied van informatiebeveiliging. Bovendien is het van belang dat de mate waarin beveiligingsmaatregelen (in de organisatie, procedures of in/door techniek) genomen dienen te worden sterk afhankelijk is van een organisatieafhankelijke risicoanalyse. De gewenste/benodigde maatregelen, en daarmee ook eisen aan de techniek, kunnen per organisatie verschillen in functie van het risico dat men afgedekt wil zien. Het Verseon Platform is bij uitstek geschikt om op basis van deze organisatieafhankelijke risicoanalyse ingericht te kunnen worden.
2.2 Doelstelling Dit whitepaper biedt (potentiële) klanten en partners inzicht in de visie, de concepten en de architectuur van het Verseon platform met betrekking tot informatiebeveiliging. Het whitepaper geldt niet als (functionele of technische) specificatie en er kunnen dus ook geen rechten ontleend worden aan de inhoud van dit document. Meer specifiek beschrijft dit whitepaper reeds beschikbare, in ontwikkeling zijnde en voorziene functionaliteit. Vanwege leesbaarheid wordt dit niet in alle gevallen uitdrukkelijk vermeld. Dit whitepaper behandelt niet de aspecten ten aanzien van organisatie en beleid, bedrijfsmiddelen, personeel, fysieke beveiliging etc., maar gaat in op de belangrijkste beveiligingsaspecten die direct betrekking hebben op het Verseon platform. Informatiebeveiliging is onderverdeeld in een zestal eisen of principes. Deze zijn belangrijk voor het waarborgen van de betrouwbaarheid, integriteit en beschikbaarheid van het Verseon platform. Hoofdstuk 3 beschrijft deze principes en op welke wijze die door Verseon ondersteund worden. Circle Software heeft zich tot doel gesteld haar Verseon platform af te stemmen op de voor de overheidsmarkt relevante beveiligingsrichtlijnen en standaarden. Deze richtlijnen en standaarden zijn geformuleerd op het gebied van informatiebeveiliging die, afhankelijk van een risicoanalyse binnen een bedrijf, kunnen worden gesteld aan organisatie, procedures en techniek. Ze bieden een uitgebreide verzameling maatregelen voor een goede implementatie (best practices) van informatiebeveiliging. Dit whitepaper gaat alleen in op de maatregelen direct gerelateerd aan het Verseon platform, en niet het geheel aan organisatorische, procedurele en technische aspecten.
CSG/2013/40193
22 november 2013
2
Circle Software Whitepaper Verseon en informatiebeveiliging
De volgende standaarden en richtlijnen voor Informatiebeveiliging zijn bedoeld als referentiepunt voor het vaststellen van de reeks beveiligingsmaatregelen die nodig zijn als informatiesystemen worden gebruikt. ISO/IEC 27001:2005 internationale standaard voor informatiebeveiliging. ICT-Beveiligingsrichtlijnen voor webapplicaties van het Nationaal Cyber Security Centrum (NCSC). ICT-Beveiligingsassessment DigiD van het Kwaliteitsinstituut Nederlandse Gemeenten (KING). Baseline Informatiebeveiliging Nederlandse Gemeenten (BIG) van het Kwaliteitsinstituut Nederlandse Gemeenten (KING). Op basis van deze richtlijnen en standaarden kunnen vervolgens eisen worden bepaald die een opdrachtgever stelt aan de software. De ISO 27001 standaard is een algemeen geaccepteerde standaard in de ICT. Hoofdstuk 4 beschrijft op welke wijze het Verseon platform aan de standaard, beperkt tot de richtlijnen aangaande de software en de inrichting van het Verseon platform, voldoet.
CSG/2013/40193
22 november 2013
3
Circle Software Whitepaper Verseon en informatiebeveiliging
3. INFORMATIEBEVEILIGING IN VERSEON 3.1
Informatiebeveiliging
Informatiebeveiliging kan worden onderverdeeld in zes eisen of principes. Alle principes zijn even belangrijk voor het waarborgen van de veiligheid van het systeem en zijn het fundament waarop de beveiligingsadministratie is gebaseerd. De primaire doelstelling is het waarborgen/veilig stellen van: Identificatie en authenticatie Identificatie heeft betrekking op gebruikersnamen en hoe gebruikers zich identificeren met het Verseon platform. Authenticatie is hoe gebruikers aan het systeem bewijzen dat ze zijn wie ze beweren te zijn. Access control (ook wel autorisatie genoemd) Autorisatie betreft toegang en privileges verleend aan gebruikers, zodat zij bepaalde functies kunnen uitvoeren en/of bepaalde data kunnen gebruiken in het Verseon platform. Een extra functionaliteit in Verseon is dat data, waarvoor een gebruiker niet geautoriseerd is, voor die gebruiker als ‘niet bestaand’ wordt beschouwd en dus op geen enkele wijze benaderbaar en/of zichtbaar is. Data confidentiality Alleen geautoriseerde gebruikers kunnen gegevens benaderen. Integrity Data integriteit in de context van informatiebeveiliging betekent het behoud en de garantie van de juistheid en consistentie van de gegevens over de gehele levenscyclus. Alle geautoriseerde gebruikers moeten erop kunnen vertrouwen dat de gepresenteerde gegevens accuraat en niet ten onrechte gewijzigd zijn. Data availability Geautoriseerde gebruikers moeten in staat zijn om toegang te krijgen tot de gegevens die ze nodig hebben, wanneer ze die nodig hebben. Authenticity en Non-repudiation Bij gegevensbeveiliging is het van belang dat bij officiële documenten en communicatie de echtheid van de informatie vastgesteld kan worden. Ook is het belangrijk dat zekerheid bestaat over het tijdstip waarop ondertekend is en over de identiteit van de persoon die de informatie ondertekend heeft. Zo is een geldige digitale handtekeningen het bewijs dat het bericht, document of data onweerlegbaar is en door een persoon of organisatie ondertekend is, waarvan gevalideerd kan worden dat hij/zij daadwerkelijk is, wie hij/zij beweert te zijn. Informatiebeveiliging binnen het Verseon Platform betreft een geheel aan maatregelen en principes van beveiligingsmogelijkheden die door Verseon ondersteund worden. De opvolgende zes secties beschrijven per genoemd principe hoe die ondersteund worden. Auditing wordt niet beschouwd als een van de zes beveiligingsprincipes, omdat het niet een beveiligings-specifieke functie is. Echter, auditing is wel belangrijk voor elke geautomatiseerd systeem voor het vaststellen van een inbreuk op de beveiliging en reconstructie van uitgevoerde bedrijfsprocessen. Zie sectie 3.8.
3.2 Identificatie en authenticatie Alle toegang tot (vertrouwelijke) informatie en Verseon voorzieningen moet worden gecontroleerd en beperkt zijn tot geautoriseerde personen. Toegang tot Verseon is alleen mogelijk nadat een gebruiker geauthentiseerd is. Dit kan op diverse manieren: Met een username/password combinatie, met mogelijkheid tot uitsluiting (tijdgebonden of permanent) van de gebruiker na herhaalde foutieve inlogpogingen. Op basis van de Windows identiteit van de gebruiker, al dan niet via LDAP. Beide varianten bieden de mogelijkheid tot Single Sign On (SSO). Op basis van de Novell identiteit van de gebruiker (geldt niet voor de Web applicaties), al dan niet via LDAP. Ook hier bieden beide varianten de mogelijkheid tot Single Sign On (SSO).
CSG/2013/40193
22 november 2013
4
Circle Software Whitepaper Verseon en informatiebeveiliging
In een toekomstige versie zal waarschijnlijk claims-based authentication ondersteund gaan worden.
Authenticatie voor toegang tot de diverse Verseon (web) services is enigszins afhankelijk van de concrete behoeftes voor betreffende service en kan gebaseerd zijn op: Windows authenticatie. Client certificaat. Username/password (gebruik hiervan wordt afgeraden). Specifiek door een interne service die o.a. opdrachten van Verseon Web afhandelt, wordt gebruik gemaakt van een encrypted ticket met een beperkte geldigheidsduur. De sleutel voor deze encryptie ligt vast in de Verseon database. In een toekomstige versie zal waarschijnlijk claims-based authentication ondersteund gaan worden. Sommige services kunnen ook zodanig geconfigureerd worden dat met specifieke clients (die zich op een van voornoemde wijzen authenticeert) een 'chain of trust' opgezet kan worden. Dit betekent dat betreffende client zodanig vertrouwd wordt dat die zelf, zonder verdere validatie in Verseon, de identiteit van de aanroeper mag specificeren. Dit is natuurlijk een optie die men alleen moet inzetten indien er voldoende garanties zijn dat die client te vertrouwen is en zelf voldoende zware authenticatie eisen stelt. Speciaal voor services en achtergrondprocessen bestaat er een 'system user' (die altijd gekoppeld is aan een Windows user) die in Verseon volledige rechten heeft. Met deze user is het ook mogelijk andere gebruikers te impersoneren. Voor sommige (met name legacy) koppelingen vindt geen authenticatie plaats of is geen veilige authenticatie mogelijk en moeten daarom andere, infrastructurele, maatregelen getroffen worden. Hierbij kan men denken aan: controle op IP-adres, gebruik van een VLAN, etc.
3.3 Access control Nadat een gebruiker binnen Verseon geauthentiseerd is, wordt door het autorisatiemechanisme bepaald wat de gebruiker in de applicatie mag doen (lezen, wijzigen, etc.). Hiervoor zijn in Verseon een aantal (al dan niet optionele) mechanismen beschikbaar die tegelijkertijd ingezet kunnen worden (het is dus niet per se of of).
3.3.1 Role based autorisatie Bij role based autorisatie is de autorisatie gebaseerd op de rol die de gebruiker binnen de organisatie vervult, of meer concreet, die hem binnen de applicatie is toegekend. Binnen Verseon wordt de role based autorisatie toegepast om gebruikers op model (hele applicatie en beheeromgeving) en type/class niveau (dus niet voor individuele objecten) te autoriseren voor de diverse operaties. Hiermee wordt dus in feite de 'view' bepaald die een gebruiker op de applicatie krijgt. Hierbij kunnen per rol zeer gedetailleerd (tot op attribuut, associatie en operatie niveau) de beschikbare rechten ingesteld worden.
3.3.2 Autorisatie op object niveau Het autoriseren van (groepen van) gebruikers voor specifieke objecten kan: Op basis van Access Control Lists (ACL's). Dit is een opsomming van (groepen van) gebruikers en de rechten die ze toegekend krijgen (Access Control Entries, ACE's). Daarnaast zijn er aparte ACE's voor de eigenaar van het object en iedereen (publieke rechten). Deze ACL's kunnen d.m.v. functies (aan te roepen vanuit bijvoorbeeld business rules) niet alleen gewijzigd worden, maar ook compleet vervangen worden door o.a. vooraf gedefinieerde ACL's. Het systeem kan zodanig geconfigureerd worden dat de aan een object gekoppelde ACL automatisch ook geldt voor aan dit object gekoppelde objecten (bijvoorbeeld ACL van zaak object geldt ook voor zijn gekoppelde taken).
CSG/2013/40193
22 november 2013
5
Circle Software Whitepaper Verseon en informatiebeveiliging
Op basis van het bestaan van een specifieke geconfigureerde relatie (rol) tussen gebruiker (-groep) en object. Hierdoor worden aan de gekoppelde gebruiker (of gebruikersgroep) vooraf geconfigureerde extra rechten toegekend voor de duur van het bestaan van de relatie. Zo kunnen bijvoorbeeld aan de behandelaar van een zaak (tijdelijk) rechten toegekend worden. In aanvulling hierop kunnen eventueel ook aan gerelateerde gebruikers specifieke rechten worden toegekend (bijvoorbeeld het secretariaat van de behandelaar). Indien de extra toegekende rechten ook beschikbaar moeten zijn op gekoppelde objecten, of indien er meerdere gebruikers/groepen gekoppeld moeten kunnen zijn, dan is er een mogelijkheid om dit m.b.v. een aantal functies, aan te roepen vanuit te modelleren business rules, op te lossen op basis van ACL's. Het systeem biedt uitgebreide configuratiemogelijkheden om aan te geven welke elementen van een object hoe benaderd mogen worden, afhankelijk van de toegekende rechten. Daarbij is het ook mogelijk een recht te koppelen aan een status, waarmee het mogelijk wordt een gebruiker een operatie toe te staan die anders alleen maar beschikbaar is als het object zich in een bepaalde toestand bevindt. Bijvoorbeeld "mutatie bij afgehandeld": een gebruiker met dit recht mag het object muteren als ware de toestand van het object "niet afgehandeld", zelfs als de toestand van het object "afgehandeld" is.
3.3.3 Vertrouwelijkheid Objecten kunnen gemarkeerd worden als vertrouwelijk, waarbij meerdere niveaus van vertrouwelijkheid mogelijk zijn. Dit heeft tot gevolg dat deze objecten alleen maar zichtbaar zijn voor gebruikers die geautoriseerd zijn voor objecten met minimaal hetzelfde niveau van vertrouwelijkheid. Vertrouwelingen (en het in hun gestelde vertrouwen) worden ingesteld per groep of gebruiker waartoe een vertrouwelijk object kan behoren. Indien dit standaard vertrouwelijkheidsmechanisme niet voldoet, is het ook mogelijk een ander vertrouwelijkheidsregime in te stellen met behulp van business rules en autorisatie op objectniveau.
3.4 Data confidentiality Confidentiality heeft te maken met encryptie; het versleutelen van informatie die nodig is om toegang te krijgen tot data. Confidentiality mechanismen zien erop toe dat alleen geautoriseerde gebruikers de data die opgeslagen op of getransporteerd over het netwerk, kunnen zien. Deze sectie gaat in op de wijze waarop het Verseon platform de toegang tot data beveiligt en op welke wijze de netwerkbeveiliging gerealiseerd is. Voor de beveiliging (maar ook voor de data integriteit en consistentie) van data is Verseon voor een groot deel mede afhankelijk van de beveiliging van de onderliggende infrastructuur. Voor opslag van data wordt gebruik gemaakt van een DBMS (Oracle of SQL Server) dat naar behoefte eventueel aangevuld kan worden met een FTP server voor de opslag van brondocumenten. Overigens kunnen de brondocumenten ook in de database worden opgeslagen. Hierdoor wordt het ook iets gemakkelijker om de data consistentie te garanderen (denk bijvoorbeeld aan back-up). Het overgrote deel van de specifieke beveiliging (authenticatie, autorisatie) van Verseon valt onder verantwoordelijkheid van de applicatie. Dit betekent dat het een gebruiker niet toegestaan moet zijn om de onderliggende data (in database of op FTP server) rechtstreeks te benaderen 1.
1
In het kader van beheer- en supportwerkzaamheden zullen (specifieke) medewerkers van ICT-afdelingen, op basis van hun functie, vaak wel rechtstreekse toegang tot deze data hebben. De volledige verantwoordelijkheid hiervoor ligt bij de organisatie zelf en moet idealiter in haar beleid zijn verankerd. Zie o.a. ISO 27001 voor handvaten om hier invulling aan te geven.
CSG/2013/40193
22 november 2013
6
Circle Software Whitepaper Verseon en informatiebeveiliging
Aangezien de Verseon C/S processen in de user context van een eindgebruiker worden uitgevoerd, is het hierdoor niet mogelijk om de authenticatie richting database en FTP server te baseren op Windows credentials. Daarom vindt de authenticatie hier plaats met credentials op basis van username/password die versleuteld in Verseon zijn opgeslagen. Richting database worden deze credentials altijd beveiligd verstuurd, richting FTP server is dit afhankelijk van de configuratie (hiervoor is het noodzakelijk secure FTP in te stellen). Voor de beveiliging van de verbinding naar het DBMS wordt gebruik gemaakt van de standaard functionaliteit van het betreffende DBMS.
3.4.1 Standaard data/netwerkverkeer binnen gangbare netwerken Het standaard data/netwerkverkeer binnen de meeste organisaties is onversleuteld. Dit data/netwerkverkeer kan echter alleen met speciale netwerktools worden bekeken. Hiervoor geldt normaal gesproken dat deze alleen gebruikt mogen worden door geautoriseerde medewerkers. De verantwoordelijkheid hiervoor ligt volledig bij organisatie (zie ook ISO 27001). In relatie tot de Verseon applicatie betekent dit dat ook de Verseon applicatie infrastructuur gebruik maakt van de standaard functionaliteit van gangbare netwerken en protocollen. Het benaderen en opslaan van bestanden (bijvoorbeeld MSOffice) op servers (shares) is dan ook onversleuteld.
3.4.2 Beveiliging van wachtwoorden Wachtwoorden worden binnen Verseon voor 2 verschillende doelen gebruikt. Hierbij wordt steeds op de meest veilige manier met deze wachtwoorden omgegaan: 1. Wachtwoorden gebruikt om een gebruiker (eindgebruiker of externe service) binnen Verseon te authenticeren. Deze wachtwoorden worden direct bij binnenkomst in de applicatie op een niet omkeerbare wijze versleuteld (kunnen dus niet meer ontsleuteld worden) en alleen het resultaat van de versleuteling (hash) wordt verder gebruikt en/of opgeslagen. 2. Wachtwoorden waarmee de Verseon applicatie zichzelf authenticeert bij de onderliggende database of FTP server en bij externe services. Deze wachtwoorden worden altijd versleuteld opgeslagen, vaak samen met de rest van de connectiegegevens. Voor ieder gebruik worden ze in de applicatie weer ontsleuteld om als credentials richting extern systeem te kunnen dienen. Deze credentials zullen zo mogelijk altijd versleuteld over het netwerk naar het externe systeem worden gestuurd. Of er daadwerkelijk versleuteling plaatsvindt en hoe die er dan uitziet, is afhankelijk van de mogelijkheden (en configuratie) van het externe systeem.
3.4.3 Beveiliging externe koppelingen Afhankelijk van de specifieke koppeling en de mogelijkheden van het externe systeem kan de verbinding tussen Verseon en het externe systeem beveiligd worden met SSL. Ook de gebruikte methode voor authenticatie van externe systemen is (mede) afhankelijk van de mogelijkheden van het externe systeem en kan bijvoorbeeld bestaan uit Windows authenticatie, een client certificaat (dus 2-way SSL) of username/password. Zie ook sectie 3.2.
3.4.4 Vrije tekst indexering door het Oracle DMBS van brondocumenten op een FTP server Indien bij gebruik van het Oracle DBMS brondocumenten die op een FTP server staan geïndexeerd moeten worden voor vrije tekst zoeken, stelt dit een aantal beperkingen m.b.t. beveiliging. Oracle kan alleen maar gebruik maken van het standaard (onbeveiligd) FTP protocol, waarbij password en documenten onversleuteld over het netwerk gaan. Verder moet van ieder bestand een complete verwijzing, dus inclusief FTP username en password, in een database tabel opgenomen zijn. Deze gegevens kunnen niet versleuteld zijn. Om dit toch te kunnen beveiligen, moeten infrastructurele maatregelen getroffen worden (VLAN, filteren op IP-adres, …).
CSG/2013/40193
22 november 2013
7
Circle Software Whitepaper Verseon en informatiebeveiliging
3.4.5 Vrije tekst indexering door het SQL Server DMBS van brondocumenten op een FTP server Indien bij gebruik van het SQL Server DBMS brondocumenten die op een FTP server staan geïndexeerd moeten worden voor vrije tekst zoeken, zal de indexer deze documenten normaliter via een standaard bestandspad benaderen. Dit zal vaak een UNC pad zijn, zeker als de bestanden op een ander systeem staan. In die gevallen worden deze bestanden benaderd door middel van standaard netwerkprotocollen (zie 3.4.1), op basis van standaard Windows credentials (van het indexer proces).
3.5 Integrity Integriteit geeft de mate aan waarin de informatie actueel en correct is. Kenmerken zijn juistheid, volledigheid en correctheid van informatie gedurende haar lifecycle. Met andere woorden: in hoeverre is de data gelijke aan wat deze zou moeten zijn en hoe deze ook bedoeld is? Dit houdt in dat data niet op een ongeautoriseerd of niet-detecteerbare wijze gemuteerd kan worden. Gegevensintegriteit mechanismen zorgen ervoor dat data niet verminkt of onterecht gewijzigd wordt of tijdens transport verloren gaat. Voor het grootste deel wordt de gegevensintegriteit automatisch gegarandeerd als de data confidentiality (zie sectie 3.4) gewaarborgd is. Dat betekent, als alleen geautoriseerde gebruikers toegang hebben tot het Verseon platform, daarmee impliciet oneigenlijk gebruik voorkomen moet zijn.
3.6 Data availability Wanneer een systeem met regelmaat niet functioneert en daardoor in de beschikbaarheid van data wordt belemmerd, heeft dat grote impact voor de gebruikers van het systeem. Echter wanneer data niet veilig maar wel gemakkelijk beschikbaar is, kan de informatiebeveiliging geschonden zijn, waardoor data op eenvoudige wijze door niet-geautoriseerde gebruikers benaderbaar is. Beschikbaarheid van informatie waarborgt dat geautoriseerde partijen in staat zijn om toegang te krijgen tot de informatie wanneer dat nodig is. Dit betekent dat het Verseon platform de data onderhoudt en beschikbaar stelt binnen de grenzen van de geldende beveiligingsregels. Beschikbaarheid van data is dus afhankelijk van een goede werking van Verseon, maar ook van de onderliggende hardware, infrastructuur en systeemsoftware. Andere factoren die kunnen leiden tot geen of beperkte beschikbaarheid van data zijn storingen ten gevolge van stroomuitval of hackersaanvallen waaronder DDos. De beveiligingsmechanismen van Verseon voor het geautoriseerd toegang krijgen tot data, zijn vermeld in sectie 3.3. Deze beveiligingsmechanismen zijn als een integrale laag in de architectuur verankerd en waarborgen het geautoriseerd acces van data in het gehele Verseon platform. Een belangrijk kenmerk van Verseon is dat de data waartoe een gebruiker niet geautoriseerd is, ook niet beschikbaar zal zijn voor die gebruiker. Om dit principe te kunnen waarborgen, zullen de gegevensbronnen zoals databases en file servers niet direct benaderbaar en het gegevenstransport veilig moeten zijn. Sectie 3.4 beschrijft op welke wijze dit mogelijk is. Storingen op hardware, infrastructuur en systeemsoftware kan tot minder of zelfs geen beschikbaar van data leiden. Het zorgdragen voor een hoge beschikbaarheid van gegevens, is het periodiek maken van consistente backups. Daar waar de beschikbaarheid van data zeer kritisch is, kan redundantie van de data een oplossing zijn. Deze vorm van storingen valt buiten de context en verantwoordelijkheid van het Verseon platform.
CSG/2013/40193
22 november 2013
8
Circle Software Whitepaper Verseon en informatiebeveiliging
3.7 Authenticity en Non-repudiation Authenticity bewijst wie je bent, terwijl non-repudation een middel is om te bewijzen welke data verzonden dan wel ontvangen is. Beide principes van informatiebeveiliging spelen een rol bij het ondertekenen van elektronische documenten. De doelstelling is dat de lezer van een elektronisch document wil weten wat de status van een document is. Wie is verantwoordelijk voor de inhoud? En is het document wel authentiek? Een digitaal ondertekend document heeft als kenmerk: Een organisatie/persoon die een elektronisch document ondertekent2 of waarmerkt3, geeft aan dat het document een zekere status heeft. De lezer kan met zekerheid vaststellen dat het document van die organisatie/persoon afkomstig is. Een ondertekend of gewaarmerkt document is beschermd tegen wijzigingen. Het document is daarmee authentiek. Bij het openen van een gemanipuleerd document krijgt de lezer onmiddellijk een melding dat het document is gewijzigd. Verseon garandeert met haar oplossing van digitale handtekening de betrouwbaarheid bij elektronische gegevensuitwisseling; de authenticiteit (zijn de gegevens daadwerkelijk van de afzender afkomstig; tijdstip en datum 4) en de integriteit (zekerheid dat gegevens volledig zijn en niet door onbevoegden gewijzigd). Verseon biedt de volgende functionaliteit: 1. Als een document door een persoon ondertekend wordt, dan wil dat zeggen dat die persoon akkoord is met de inhoud van het document. Een elektronisch document is dan voorzien van een persoonsgebonden handtekening. Voor het digitaal ondertekenen van het document wordt gebruikt gemaakt van een PKI Certificaat dat alleen toegankelijk is voor betreffende persoon. Met de persoonsgebonden handtekening is tevens de authenticiteit van het document gewaarborgd. Als bij ondertekenen een gekwalificeerd certificaat is gebruikt, dan heeft de elektronische handtekening dezelfde rechtsgeldigheid als een handgeschreven handtekening. 2. Als een document is gewaarmerkt, dan is aangegeven dat de inhoud van het document correct is. Een persoon of functionaris is dan niet verantwoordelijk voor de inhoud. Het is een verklaring van de organisatie dat het document authentiek is en van die organisatie afkomstig is. Het elektronisch document bevat dan een organisatie-gebonden handtekening. Ook hierbij wordt gebruik gemaakt van een PKI Certificaat, ditmaal echter niet gekoppeld aan een enkele persoon, maar aan de organisatie (of onderdeel daarvan). 3. Een ondertekend (PDF) document voldoet aan de eisen van digitale duurzaamheid (archiefwet). 4. Een document kan optioneel worden voorzien van een ‘IntelliStamp’, een barcode waarmee een afgedrukt exemplaar kan worden gevalideerd. Om een afgedrukt exemplaar van een digitaal ondertekend document te kunnen controleren op authenticiteit dient het centraal gearchiveerd te zijn.
3.8 Auditing De audit functionaliteit waarover Verseon beschikt, heeft tot doel een auditor te ondersteunen in het reconstrueren (wie, wat, wanneer) van bedrijfsprocessen, voor zover deze een weerslag hebben gehad in Verseon5. De functionaliteit beperkt zicht overigens tot mutaties in het systeem; raadplegingen kunnen niet worden geaudit. Een van de redenen hiervoor is de aard van presentatie in Verseon, waarbij niet eenduidig is te definiëren wanneer een object door de gebruiker is ingezien (bijvoorbeeld scrollen door een resultaatlijst met preview).
2
Personen die uit hoofde van hun functie documenten ondertekenen moeten over een op naam gesteld certificaat beschikken. 3 Voor het waarmerken van documenten zal een organisatie-gebonden certificaat beschikbaar moeten zijn. 4 Vereist mogelijk een additioneel abonnement. 5 Naast auditing biedt Verseon (en meer in het bijzonder: het toegepaste model, zoals MNG) nog diverse andere mogelijkheden om controles uit te voeren. Denk hierbij aan versiebeheer op documenten, waarmee inzichtelijk wordt wie op welk moment documenten heeft gewijzigd, maar ook aan het gebruik van workflows, waarin zichtbaar is wie op welk moment in het proces een zaak heeft behandeld. CSG/2013/40193
22 november 2013
9
Circle Software Whitepaper Verseon en informatiebeveiliging
In de huidige versie van Verseon is een basisimplementatie van auditing aanwezig. Hiermee wordt de mogelijkheid geboden om de meest essentiële wijzigingen in zaken, activiteiten en NAW's te auditen, alsmede versiebeheer op documenten. Doordat de oplossing is gebaseerd op business rules, waarbij de auditgegevens binnen de afzonderlijke business objecten worden vastgelegd, is auditing ook een functionele verrijking binnen de afhandeling van bedrijfsprocessen. Zo kan bijvoorbeeld een auditlogs bij een zaak getoond worden waarin gerapporteerd is, wie op welk moment een officieel document geparafeerd heeft. In versie 2.2 van het Verseon platform is de audit functionaliteit uitgebreid met een auditing logging voorziening volledig in het systeem geïntegreerd. Hierdoor is de compleetheid van de auditlog gegarandeerd: een actie in Verseon kan alleen uitgevoerd worden indien de bijbehorende logging ook slaagt. Het achteraf wijzigen van de log wordt belemmerd door een afzonderlijk beveiligingsmechanisme. Via de standaard onderhoudstool, Verseon Studio, kan auditing worden geconfigureerd. Er kan worden aangegeven op welke klassen, attributen en rollen ge-audit wordt. In de meeste gevallen kan worden aangeven of alleen de mutatie moet worden gesignaleerd, of dat ook oude en nieuwe waardes moeten worden gelogd. Standaard wordt hierbij steeds de actuele status van het object gelogd (in te stellen als configureerbare expressie) en uiteraard de ‘wie’ en ‘wanneer’ informatie. Hiermee kan op een flexibele wijze afgestemd worden op de organisatie-specifieke wensen (voortvloeiend uit een risicoanalyse). Uiteraard is het configureren van de auditing beperkt tot gebruikers die hiervoor deze speciale rechten hebben. Extra is de mogelijkheid tot het auditen van die gegevens m.b.t. authenticatie-instellingen die van belang kunnen zijn voor het ontdekken van onregelmatigheden (bijvoorbeeld verdachte wijzigingen in gebruikerskoppelingen).
CSG/2013/40193
22 november 2013
10
Circle Software Whitepaper Verseon en informatiebeveiliging
4. BEVEILIGING IN RELATIE TOT ISO/IEC 27001:2005 De richtlijnen van de NEN-ISO/IEC 27001:2005 betreffen beheerdoelstellingen en beheersmaatregelen met betrekking tot informatiebeveiliging. Dit document gaat alleen in op compliancy van het Verseon platform in relatie tot de ISO 27001 beveiligingsrichtlijnen. Het behandelt niet de aspecten ten aanzien van organisatie en beleid, bedrijfsmiddelen, personeel, fysieke beveiliging etc., maar gaat in op de belangrijkste beveiligingsaspecten die gerelateerd zijn aan de Verseon software. De in dit hoofdstuk genoemde beheerdoelstellingen en beheersmaatregelen zijn rechtstreeks ontleend aan en afgestemd op de doelstellingen en maatregelen van ISO/IEC 27002:20056, hoofdstukken 5 t/m 15, die direct de software van het Verseon platform raken; een organisatie kan besluiten dat aanvullende beheerdoelstellingen en beheersmaatregelen noodzakelijk zijn. De cursieve teksten beschrijven op welke wijze het Verseon platform dit ondersteunt. A.10 Beheer van communicatie- en bedieningsprocessen A.10.1 Bedieningsprocedures en verantwoordelijkheden A.10.1.4 Scheiding van faciliteiten voor ontwikkeling, testen en productie Faciliteiten voor ontwikkeling, testen en productie moeten zijn gescheiden om he t risico van onbevoegde toegang tot of wijzigingen in het productiesysteem te verminderen. Verseon biedt OTAP ondersteuning waarmee toegang tot een test- of acceptatietest omgeving niet automatisch leidt tot toegang tot productieomgevingen. Voor toegangsverlening tot een van de omgevingen in een OTAP zijn expliciet handelingen van de applicatiebeheerder in Verseon Studio nodig. A.10.6 Beheer van netwerkbeveiliging A.10.6.1 Maatregelen voor netwerken Netwerken moeten adequaat worden beheerd en beheerst om ze te beschermen tegen bedreigingen en om beveiliging te handhaven voor de systemen en toepassingen die gebruikmaken van het netwerk, waaronder informatie die wordt getransporteerd. De Verseon software en de onderliggende ondersteunende software en infrastructuur componenten kunnen zodanig geconfigureerd worden dat het netwerkverkeer tegen bedreigingen beschermd is. De ondersteunde protocollen https en ftps voorzien in een beveiligd transport van informatie over het netwerk. Authenticatiegegevens voor toegang tot een FTP server kunnen hiermee versleuteld over het netwerk verstuurd worden. Netwerkbeveiliging van connecties met DBMS’en wordt door het DBMS ondersteund. Relevante onderdelen van gebruikersregistraties zoals wachtwoorden en database connectiegegevens zijn versleuteld opgeslagen. Ook die delen van configuratiegegevens die voor de toegangs- en netwerkbeveiliging van belang zijn, zijn versleuteld. A.10.8 Uitwisseling van informatie A.10.8.4 Elektronische berichtuitwisseling Informatie die een rol speelt bij elektronische berichtuitwisseling moet op geschikte wijze worden beschermd. Berichtenverkeer tussen Verseon en andere toepassingen verloopt standaard via de broker component van Verseon; de Verseon Enterprise Service Bus (ESB). De beveiliging van de berichtuitwisseling is gegarandeerd door de 2 way SSL beveiliging op de verbinding tussen Verseon en de Verseon ESB. De mogelijkheden voor de beveiliging van de berichtuitwisseling tussen de Verseon ESB en de externe systemen is mede afhankelijk van de mogelijkheden van het 6
. ISO/IEC 27002:2005 (oorspronkelijk ISO/IEC 17799:2005) omvat een gedetailleerde lijst van algemeen aanvaarde werkwijzen rondom informatiebeveiliging, De informatiebeveiligingsstandaard ISO IEC 27001 beperkt zich tot de praktijk cases die betrekking hebben op beveiligingsrisico’s en eisen. CSG/2013/40193
22 november 2013
11
Circle Software Whitepaper Verseon en informatiebeveiliging
externe systeem. Zo nodig moeten hier (additionele) infrastructurele maatregelen getroffen worden. A.10.8.5 Systemen voor bedrijfsinformatie Beleid en procedures moeten worden ontwikkeld en geïmplementeerd om informatie te beschermen die een rol speelt bij de onderlinge koppeling van systemen voor bedrijfsinformatie. Verseon ESB is het intermediair die verbindingen legt met back office systemen en toepassingen van ketenorganisaties. Authenticatie o.b.v. Verseon ESB is als volgt gewaarborgd: Normaal gesproken doet Verseon zelf de authenticatie van de client. Bij gebruik van de Verseon ESB is deze client feitelijk het broker proces, dat echter namens iemand anders (de ‘echte’ client) een bericht doorstuurt. Verbindingen met de Verseon ESB worden op basis van een trustrelationship gelegd, waarbij Verseon de component/broker vertrouwt om de client te authenticeren en de identiteit door te geven. Dit vereist het volgende: De broker moet zijn clients kunnen authenticeren, d.w.z. op een betrouwbare wijze de identiteit van de client vaststellen. Verseon moet de broker kunnen authenticeren. De identiteit van de client moet in het bericht naar Verseon opgenomen kunnen worden. Mogelijk relevante authenticatiemethoden zijn: 1. Verstrekken van geheime informatie (username/password; ticket) in het bericht. Deze methode kan met de standaard beschikbare functionaliteit al ondersteund worden (het zijn gewoon velden in het inkomend bericht). Gebruik van deze methode is het minst aan te raden. 2. Bepaling van het client IP-adres. Het IP-adres moet in het proces beschikbaar gesteld worden. 3. Een client certificaat. Bij voorkeur moeten de verschillende relevante properties van het certificaat in het proces beschikbaar gesteld worden. 4. Integrated Windows Authentication (IWA). De Windows user moet in het process beschikbaar gesteld worden. 5. Een claims-based identity, bijvoorbeeld op basis van de WS-Trust/WS-Federation specificaties. De specifieke claims dienen configureerbaar te zijn en moeten allemaal in het proces beschikbaar gesteld worden. In een toekomstige versie zal waarschijnlijk claims-based authentication ondersteund gaan worden. A.10.10 Controle A.10.10.1 Aanmaken audit- logbestanden Activiteiten van gebruikers, uitzonderingen en informatiebeveiligingsgebeurtenissen moeten worden vastgelegd in audit-logbestanden. Deze logbestanden moeten gedurende een overeengekomen periode worden bewaard, ten behoeve van toekomstig onderzoek en toegangscontrole. De huidige auditing functionaliteit, afgestemd op het standaard MNG 2.0 model, ondersteunt de logging voor mutaties op het Zaak, NAW en de Activiteit entiteit. Hiermee wordt de mogelijkheid tot reconstructie van de belangrijkste processen geboden. Auditing in de opvolgende versie van Verseon (versie 2.2) is uitgebreider waarmee te auditen mutaties afgestemd kunnen worden op de behoefte en werkwijze van een organisatie. In algemene zin betreft dit de auditing van: mutaties van gegevens op een business object en mutaties op relaties tussen business objecten; mutaties van de toegang- en rechtenregistraties.
CSG/2013/40193
22 november 2013
12
Circle Software Whitepaper Verseon en informatiebeveiliging
A.10.10.3 Bescherming van informatie in logbestanden Logfaciliteiten en informatie in logbestanden moeten worden beschermd tegen inbreuk en onbevoegde toegang. Auditing in Verseon is beveiligd tegen ongeautoriseerd gebruik. Entries in audit-logbestanden kunnen standaard niet gewijzigd maar alleen toegevoegd of gelezen worden. Voor het kunnen wijzigen van auditing instellingen in Studio is een apart privilege vereist. A.11 Toegangsbeveiliging A.11.1 Bedrijfseisen ten aanzien van toegangsbeheersing A.11.1.1 Toegangsbeleid Er moet toegangsbeleid worden vastgesteld, gedocumenteerd en beoordeeld op basis van bedrijfseisen en beveiligingseisen voor toegang. Het toegangsbeheer in Verseon kan in Verseon Studio uitgevoerd worden. Registratie en afmelding van gebruikers als ook het verlenen en intrekken van toegangsrechten tot onderdelen van Verseon en onderdelen van de Verseon Studio beheeromgeving behoren tot de mogelijkheden. Het toewijzen en gebruik van speciale bevoegdheden kan hiermee worden beperkt en beheerd. A.11.5 Toegangsbeveiliging voor besturingssystemen A.11.5.2 Gebruikersidentificatie en –authenticatie Elke gebruiker moet over een unieke identificatiecode beschikken (gebruikers-ID) voor persoonlijk gebruik, en er moet een geschikte authenticatietechniek worden gekozen om de geclaimde identiteit van de gebruiker te verifiëren. Voor gebruik binnen Verseon zijn, de volgende authenticatiemethodes mogelijk: Individual sign on. Authenticatie gebeurt door het verstekken van user credentials (bijvoorbeeld username/password) aan de afzonderlijke applicaties. 1. Username/Password. Credentials bestaan uit een identificatie in de vorm van een username gecombineerd met een geheim password als authenticatie. Deze methode is vooral geschikt voor interactief gebruik, waarbij het password niet opgeslagen hoeft te worden. Single Sign On via centralized authentication. Authenticatie gebeurt door het eenmalig verstrekken van user credentials aan een centrale authenticatie server/service. De afzonderlijke applicaties vragen bij deze service de identificatie van de gebruiker op. 1. NT (of Windows) authenticatie. Identificatie gebeurt op basis van de NT user waaronder de applicatie draait (of eventueel waarvandaan deze aangeroepen wordt). Verseon user wordt bepaald door mapping van de NT user. 2. LDAP authenticatie. Identificatie wordt via LDAP bij een directory service opgevraagd. Verseon user wordt bepaald door mapping van de LDAP user of door extra properties in LDAP. Single Sign On via a “chain of trust”. Authenticatie wordt door één applicatie uitgevoerd die weer andere applicaties aanroept en daarbij een identificatie van de user verstrekt. Voorwaarde is dat de aangeroepen applicatie kan vaststellen wie de aanroepende applicatie is en deze vertrouwt. Het aanroepen kan ook genest gebeuren. 1. Verseon identificatie. User wordt geïdentificeerd door een Verseon username. Deze is binnen Verseon direct te gebruiken. 2. NT identificatie. User wordt geïdentificeerd door een NT(/Windows) username. Verseon beschikt intern al over een mapping naar een Verseon gebruiker. 3. LDAP identificatie. User wordt geïdentificeerd door een LDAP user. Deze kan in Verseon gemapt worden op een Verseon gebruiker. Alternatief is dat de directory service wordt uitgebreid met properties zodat via LDAP de Verseon gebruiker op te vragen is.
CSG/2013/40193
22 november 2013
13
Circle Software Whitepaper Verseon en informatiebeveiliging
A.11.5.3 Systemen voor wachtwoordbeheer Systemen voor wachtwoordbeheer moeten interactief zijn en moeten bewerkstelligen dat wachtwoorden van geschikte kwaliteit worden gekozen. Van de credentials beheerd door Verseon bij de ‘individual sign on’ authenticatiemethode wordt een ingestelde lengte van het wachtwoord afgedwongen. Na meerdere foutieve inlogpogingen wordt het gebruikersaccount geblokkeerd om inbraakpogingen te bestrijden. Met Verseon kunnen goed en eenvoudig credentials beheerd worden echter daar ligt niet de primaire taak van dit platform. Geadviseerd wordt om zo nodig een van de andere ondersteunde authenticatiemechanismen (zie sectie 3.2) te gebruiken die op toegangsbeveiliging zijn toegespitst. A.11.5.5 Time-out van sessies Inactieve sessies moeten na een vastgestelde periode van inactiviteit worden uitgeschakeld. Verseon C/S biedt zelf geen ondersteuning voor een time-out mechanisme, maar vertrouwt op het screen locking mechanisme van Windows. Verseon Web, de web-based toepassing van Verseon, maakt gebruik van de sessie time-out instellingen van IIS. A.11.7 Draagbare computers en telewerken Waarborgen van informatiebeveiliging bij het gebruik van draagbare computers en faciliteiten voor telewerken. Verseon Web ondersteunt het gebruik van versleutelde (https) verbindingen, waarmee op een veilige wijze het Verseon platform voor telewerken ingezet kan worden. A.12 Verwerving, ontwikkeling en onderhoud van informatiesystemen A.12.2 Correcte verwerking in toepassingen Voorkomen van fouten, verlies, onbevoegde modificatie of misbruik van informatie in toepassingen. A.12.2.1 Validatie van invoergegevens Gegevens die worden ingevoerd in toepassingen moeten worden gevalideerd om te bewerkstelligen dat deze gegevens juist en geschikt zijn. Invoergegevens worden standaard gevalideerd aan de eigenschappendefinities die voor het betreffende invoerveld in Verseon Studio gedefinieerd zijn. Dit betreft onder meer datatype, lengte, verplicht en specifieke validatie die door business rules op het betreffende veld afgedwongen kunnen worden. A.12.2.2 Beheersing van interne gegevensverwerking Er moeten validatiecontroles worden opgenomen in toepassingen om eventueel corrumperen van informatie door verwerkingsfouten of opzettelijke handelingen te ontdekken. Verseon Web conformeert zich aan het Open Web Application Security Project (OWASP) waaronder 'SQL injection’, als meest belangrijk onderdeel. A.12.4 Beveiliging van systeembestanden Doelstelling: Beveiliging van systeembestanden bewerkstelligen. A.12.4.2 Bescherming van testdata Testgegevens moeten zorgvuldig worden gekozen, beschermd en beheerst. Het Verseon platform ondersteunt OTAP door configuraties in Verseon Studio in te stellen. Hiermee ondersteunt Verseon gescheiden test- en productieomgevingen waarmee data en gegevens van OTAP-omgevingen van elkaar geïsoleerd zijn. Voor de testomgeving kunnen dezelfde beveiligingsmaatregelen worden toegepast als voor een productieomgeving. CSG/2013/40193
22 november 2013
14
Circle Software Whitepaper Verseon en informatiebeveiliging
A.15 Naleving A.15.1 Naleving van wettelijke eisen Doelstelling: Voorkomen van schending van enige wetgeving, wettelijke en regelgevende of contractuele verplichtingen, en van enige beveiligingseisen. A.15.1.3 Bescherming van bedrijfsdocumenten Belangrijke registraties moeten worden beschermd tegen verlies, vernietiging en vervalsing, overeenkomstig wettelijke en regelgevende eisen, contractuele verplichtingen en bedrijfsmatige eisen. Documenten vallen net zoals alle data binnen Verseon onder het beveiligingsregime van het Verseon platform. Enkel gebruikers aan wie rechten verleend zijn op data kunnen die betreffende data benaderen. Het kunnen benaderen van data vereist verleende privileges op alle gelaagde beveiligingsniveaus van Verseon; toegangsbeveiliging, rol-gebaseerde autorisatie en objectbeveiliging. Hiermee is het mogelijk tot op veldniveau, en hiermee ook op een brondocument, rechten te verlenen. Voor objecten of onderdelen van objecten waarop versiebeheer van toepassing is, blijven naar gelang de instellingen van versiemanagement, oude versies van de data bewaard. Bij een uiteindelijke archivering van data, wordt deze voor alleenlezen opgeslagen en worden brondocumenten naar een duurzaam formaat geconverteerd. Documenten al dan niet bestemd voor gebruik buiten Verseon, kunnen elektronisch ondertekend worden, waarmee voldaan wordt aan de eisen van digitale duurzaamheid (archiefwet).
CSG/2013/40193
22 november 2013
15