wiki:Documentatie/Beheerder/Schermen/Toegangsrechten

Toegangsrechten

In OpenAC wordt gewerkt met toegangsrechten, die bepalen of een gebruiker gegevens mag inzien, aanpassen, uitbreiden, of verwijderen. Hiervoor bestaat een systeem dat aan elk veld dat gebruikt wordt, toegangsrechten toewijst voor de ingelogde gebruiker.

Een gebruiker kan individuele rechten hebben (Pietje mag roepnamen invoeren), en een gebruiker behoort tot een of meer gebruikersgroepen en die gebruikersgroepen hebben ook rechten (Pietje hoort bij het secretariaat, en het secretariaat mag patienten toevoegen).

Deze handleiding legt het beheer van groepen, gebruikers en de bijbehorende toegangsrechten uit.

Gebruikersgroepen

De gebruiker admin kan gebruikerssgroepen beheren, en heeft daarvoor in de taakbox van het scherm 3. Medewerkers in het hoofdscherm extra knoppen om over te schakelen op het beheer van de groepen. In de mode voor het beheer van gebruikersgroepen staat er een lijst van groepen op het scherm. Een AC kan kiezen om eigen groepen te definiëren. Er zijn ook standaard groepen zoals financieel eindverantwoordelijke.

Aan elke groep kunnen rechten worden toegekend. Dit doet u in het toegangsrechtenscherm, hieronder beschreven.

Het toegangsrechten scherm

Vanaf versie 2.010 kent OpenAC uitgebreide mogelijkheden om toegangsrechten te koppelen aan gebruikersgroepen en individuele gebruikers. Je kunt toegangsrechten beheren vanuit het startscherm, sectie beheer, knop Toegangsrechten. Het volgende scherm verschijnt:

Het scherm bestaat uit twee gedeelten:

  • links staat een hiërarchische lijst van alle entiteiten in OpenAC waarvoor u toegangsrechten kunt toekennen;
  • rechts kun je toegangsrechten toekennen aan groepen of individuele gebruikers.

Je kunt de volgende rechten toekennen:

  • C(reate) - aanmaken van een entiteit;
  • R(ead) - lezen van een entiteit;
  • U(pdate) - wijzigen van een entiteit;
  • D(elete) - verwijderen van een entiteit.

Om rechten toe te kennen selecteer je eerst links een entiteit. In de screenshot hierboven is tabel "patient" geselecteerd. Vervolgens selecteer je rechts een groep. In de screenshot is de gebruikersgroep "onderzoeker" geselecteerd. Daarna kun je rechten toekennen door op de knoppen "C", "R", "U" en/of "D" te klikken. Sla de de wijzigingen vervolgens op met de knop "Opslaan".

De toegekende rechten worden automatisch geërfd door onderliggende entiteiten.

OpenAC past de rechten als volgt toe:

  • C - zonder create rechten is het niet mogelijk nieuwe items aan te maken;
  • R - zonder read rechten worden items niet afgebeeld;
  • U - zonder update rechten zijn items readonly;
  • D - zonder delete rechten zijn er geen prullenbakjes en is het niet mogelijk om items te verwijderen.

Op elk niveau kan een nieuwe regel toegevoegd worden aan de Access Control List (ACL). Door te klikken op "behandelingen", zoals in bovenstaand voorbeeld, verschijnt een nieuwe rij knoppen voor entiteit "patient/behandelingen". In het voorbeeld zijn update-rechten toegevoegd aan de rechten die zijn geërfd van "patient". Je ziet dat onder elke rij knoppen de cummulatieve rechten worden afgebeeld. Na de eerste regel heeft de groep onderzoeker leesrechten voor tabel "patient" en alles wat daaronder ligt. Na de tweede regel heeft de groep onderzoeker lees- en updaterechten voor "patient/behandelingen" en alles wat daaronder ligt.

Bij het inrichten van de ACL kun je het beste de groepsrechten op het hoogste niveau vastleggen. Vervolgens registreer je op diepere niveau's steeds de uitzonderingen.

Individuele toegangsrechten

Je kunt niet alleen op groepsniveau maar ook op individueel niveau toegangsrechten toekennen. Het is belangrijk om eerst de rechtenstructuur op groepsniveau volledig in te richten. Daarna kun je eventueel op individueel niveau uitzonderingen maken. Als je merkt dat je vaak individuele uitzonderingen maakt dan is het tijd om nog eens goed na te denken over de rechtenmatrix op groepsniveau.

Bij individuele toegangsrechten zie je steeds welke rechten zijn geërfd van de groepsrechten. In bovenstaand voorbeeld zie je de toegangsrechten van een gebruiker voor "patient/behandelingen". Uit de groepsrechten van groep "onderzoeker" voor entiteit "patient" worden leesrechten geërfd. Uit de groepsrechten van groep "onderzoeker" voor "patient/behandelingen" worden updaterechten geërfd. Vervolgens zijn op individueel niveau verwijderrechten toegevoegd. De cummulatieve of effectieve rechten voor "patient/behandelingen" zijn daardoor +RUD,-C. Natuurlijk is het ook mogelijk om op individueel niveau rechten die zijn geërfd van de groep weer in te trekken.

Het vinkje "toplevel"

Het vinkje "toplevel" links bovenin het scherm maakt het mogelijk om een gefilterde lijst van OpenAC-tabellen weer te geven. Als het vinkje aanstaat worden alleen de zogenaamde toptabellen afgebeeld. Dit zijn de belangrijkste tabellen van OpenAC. Als het vinkje aanstaat worden alle tabellen afgebeeld. De lijst met tabellen wordt daardoor meer dan zes keer zo lang. Met het vinkje uit is het o.a. mogelijk om toegangsrechten toe te kennen voor codetabellen. Hierdoor kunnen gebruikers zonder beheersrechten toegang krijgen tot het scherm waarmee codetabellen worden beheerd.

Het vinkje staat standaard aan.

De toegangsrechten voor tabellen of velden die zichtbaar zijn met het toptabel-vinkje uit, zijn onafhankelijk van de toegangsrechten op dezelfde tabellen of velden als die binnen een andere tabel worden aangesproken: bijvoorbeeld dat fin_trajecten onder een behandeling, onafhankelijk zijn van de toegangsrechten op fin_traject als het toptabel-vinkje uit staat.

In enkele gevallen is het nodig om een permissie te geven op een niet-toptabel, om medewerkers toegang te geven tot gegevens in een OpenAC scherm (dit is met name bij het factuurscherm het geval).

Overzicht rechten

Wanneer je op de '/' klikt, dan zie je een overzicht van alle rechten die die groep of gebruiker heeft.

Door bij gebruikersrechten het vinkje "Effectieve rechten" uit te zetten zie je de uitzonderingen die op gebruikersniveau zijn toegekend. Met het vinkje aan, de default-instelling, zie je de effectieve rechten. Dat wil zeggen, ook de rechten uit de gebruikersgroepen van deze gebruiker.

Met de knop 'Alle rechten intrekken' kun je alle rechten van een gebruiker of groep wissen. Dat kan handig zijn wanneer veel gebruikers allemaal veel individuele rechten hebben en je die om wil zetten naar verschillende groepen. Zo hoef je niet constant de hele boom langs om alle rechten op te zoeken en één voor één uit te zetten.

Voorbeelden

1: Invoerblokken verbergen

Bij onderstaande gebruiker zijn de leesrechten voor financiële subtrajecten weggenomen.

Het resultaat hiervan is dat subtrajecten niet zullen worden weergegeven in het dossier.

Voordeel voor deze gebruiker is dat het dossier sneller zal worden geladen.

2: BSN wijzigbaar maken voor individuele gebruikers

In onderstaand voorbeeld zijn de updaterechten voor "patient/bsn" op groepsniveau uitgezet. Voor individuele gebruikers kan dat weer aangezet worden.

Het BSN-nummer is dan wijzigbaar in het dossier.

3: Een codetabel laten beheren door een groep

Om codetabellen zichtbaar te maken in de lijst met entiteiten moet het vinkje "Toplevel" links bovenin het scherm uitgezet worden. In onderstaand voorbeeld heeft de groep "financieel-eindverantwoordelijke" +CRUD-rechten gekregen op de codetabellen "Betalingstermijn" en "Transactiesoort".

Leden uit de groep "financieel-eindverantwoordelijke" kunnen hierdoor beheer voeren over de codetabellen bij module kern.s080_notabeheer.

Permissies

Niet alle permissies, bijvoorbeeld "beheer/backup" of "beheer/tickets" kunnen worden gekoppeld aan een entiteit. Daarom is er een een fictieve toplevel entiteit "__permissies__" waar alle oude OpenAC permissies bij zijn ondergebracht. Zie onderstaande schermafdruk.

Aan deze permissies kunnen op dezelfde manier ACL's worden gekoppeld als bij echte entiteiten. Een aantal van de permissies in deze lijst zullen in latere versies van OpenAC verdwijnen omdat ze overbodig zijn geworden. Kijk onder het kopje Overzicht acties en benodigde rechten welke "oude stijl" permissies nog in gebruik zijn.

Om een permissie toe te kennen aan een gebruiker of gebruikersgroep, volstaat het om de read permissie te geven.

Conflicterende groepsrechten

Een medewerker kan lid zijn van meerdere groepen. Dat gaat goed zolang de rechten die uit de groepen voortkomen elkaar complementeren. Het kan echter voorkomen dat rechten uit verschillende groepen conflicteren. In onderstaand voorbeeld is iemand lid van de groepen onderzoeker en secretariaat.

Je ziet dat de regels voor patient/behandelingen/metingen met elkaar in conflict zijn. Groep onderzoeker definieert de rechten als +CRUD, groep secretariaat als +R,-CUD. Groep secretariaat wint, waardoor de effectieve rechten +R,-CUD zijn. Dit probleem is niet op een redelijke manier automatisch op te lossen. Winnen bij een conflict rechten die worden toegekend of rechten die worden afgenomen?

Een eenvoudige oplossing is rechten toekennen (of afnemen) op individueel niveau zoals in onderstaand voorbeeld. Persoonlijke rechten winnen het altijd van groepsrechten.

Een andere mogelijkheid is gebruikmaken van de eigenschap dat groepsrechten op alfabetische volgorde worden toegepast. Daarom won secretariaat het van onderzoeker. Het is dus mogelijk om een groep x_onderzoeker te maken waarmee zonodig conflicterende rechten worden gecorrigeerd. Door de gebruiker uit het voorbeeld lid te maken van groep x_onderzoeker en deze groep +CRUD te geven op patient/behandelingen/metingen, zijn de effectieve rechten voor deze gebruiker weer +CRUD.

Overzicht acties en benodigde rechten

Soms ligt het niet gelijk voor de hand welke rechten toegekend moeten worden om een bepaalde actie uit te mogen voeren. Deze paragraaf geeft een overzicht van acties en de daarvoor benodigde rechten.

Dossier

ActieEntiteitRechten
Afspraakgegevens inzien in de invoerbox van de agendaafspraak_item+R
Alle verrichtingen fiatteren__permissies__/paraferen-alles+R
Zorgtraject sluiten__permissies__/dossier-afsluiten+R

Facturatie

Dit zijn bijzondere rechten die nodig kunnen zijn in het factuurscherm. De medewerkers hebben rechten nodig in het dossier om de gegevens in het dossier in te zien, maar ook rechten op niet-toplevel tabellen (zet daarom het vinkje uit om deze rechten te regelen) om gegevens in te zien in het factuurscherm.

ActieEntiteitRechten
Financiële trajecten details zien als die geselecteerd zijn in de lijst.fin_traject+R
Bezoek details zien als die geselecteerd zijn in de lijst (voor AWBZ trajecten).behandeldag+R

Beheer

Het Beheer menu in OpenAC kent allerlei acties die normaliter alleen door de OpenAC beheerder worden uitgevoerd. Die acties kunnen via permissies ook aan andere medewerkers worden toegekend (backup maken en export-koppelingen bijvoorbeeld).

ActieEntiteitRechten
OpenAC beheersacties __permissies__/beheer+R
Backups maken __permissies__/beheer/backups+R
Specifieke soorten backup __permissies__/beheer/backups/*+R
Backups terugzetten __permissies__/beheer/restore+R
Specifieke soorten backup terugzetten __permissies__/beheer/restore/*+R
Koppelingen (import/export functies in het beheer-menu gebruiken) __permissies__/koppeling+R
Specifieke koppelingen gebruiken __permissies__/koppeling/*+R

Rapportages

Toegang tot verschillende (management) rapportages wordt geregeld op rapportage-groep niveau (bijvoorbeeld "alle productierapportages") maar kan ook per-rapportage worden ingesteld. Onder elke groep kunnen de rapportages individueel worden aangezet; in de tabel hieronder is dat alleen uitgeschreven voor de productie-rapportages. De indeling van rapportages in groepen staat in de rapportagehandleiding.

ActieEntiteitRechten
Alle rapportages __permissies__/managementinfo+R
Productiecijfers / financieel __permissies__/managementinfo/productie+R
Individuele productie-rapportages __permissies__/managementinfo/productie/*+R
Kwaliteit-monitoring __permissies__/managementinfo/kwaliteit+R
Proces-monitoring __permissies__/managementinfo/monitor+R
Productopbouw __permissies__/managementinfo/producten+R
Patiënt-informatie __permissies__/managementinfo/patienten+R

Andere Permissies

Onderstaande opsomming van permissies is verouderd.

Onderstaand een overzicht van alle permissies in OpenAC. "-" bij versie geeft aan dat de permissie gedefinieerd is maar niet wordt gebruikt. Sommige permissies zijn genest: de permissie beheer staat alle beheerstaken toe, inclusief de daaronder opgenomen beheer/backups. Medewerkers kunnen een permissie worden gegeven met door +R op de permissie te zetten. Bij geneste permissies is het mogelijk om medewerkers op een heel gebied, of op specifieke onderdelen permissie te geven: bij backups bijvoorbeeld alleen enkeldossiers backups, of alle soorten backups, of alle soorten beheer. In gevallen waar er door meerdere modules geneste permissies worden gedefinieerd, zijn die in de tabel met een * aangeduid.

PermissieGedefinieerd inVersieFunctie
beheerd010_systeem-OpenAC beheer
beheer-ticketsd010_systeem2.008Tickets indienen. Bepaalt of de gebruiker een pincode moet invoeren bij het indienen van een ticket via OpenAC. Als de gebruiker permissie beheer-tickets heeft dan hoeft dat niet. Als er een pincode is gedefinieerd en de gebruiker heeft deze permissie niet, dan moet het wel.
2.010__permissies__/beheer-tickets moet +R hebben om deze permissie toe te kennen.
beheer-backupsd010_systeem-Backups maken
beheer/backupsd010_systeem2.012Backups maken (alle soorten). +R is voldoende.
beheer/backups/*-2.012Individuele soorten backups maken (bijvoorbeeld enkeldossiersbackups). +R is voldoende.
beheer/koppelingd010_systeem2.012Koppelingen (import- en export-functies in het beheer menu). +R is voldoende.
beheer/koppeling/*-2.012Individuele koppelingen gebruiken. +R is voldoende.
beheer/restored010_systeem2.012Backups terugzetten (alle soorten).
beheer/restore/*-2.012Individuele soorten backup terugzetten (mn. enkeldossiers of hele database)
dossier-uitwerkend060_decursus2.008Dossier correspondentie uitwerken. Iemand met deze permissie kan de eigenaar van vertrouwelijke decursusitems veranderen. Ook zijn documentlinks van readonly items voor iemand met deze permissie niet readonly
bsn-invoerene080_sbvz2.008BSN invoeren/wijzigen. Het BSN-nummer komt uit de SBV-Z koppeling en is daarom readonly. Iemand met de permissie bsn-invoeren kan desondanks het BSN-nummer invoeren of wijzigen.
bijlage-map-koppelenf080_bijlage2.008Mappen koppelen. Iemand met de permissie bijlage-map-koppelen kan een map toevoegen als bijlage.
codetabellen-inziens010_codetabellen2.008Codetabellen inzien. Iemand met permissie codetabellen-inzien beschikt over de knop "Codetabellen" in de beheersectie van het startscherm.
managementinfos010_rapportages2.008Managementrapportages. Iemand met permissie managementinfo kan managementrapportages opvragen. Elke managementrapportage is een knop in de sectie "Overzichten" van het startscherm. Medewerkers zonder deze permissie beschikken alleen over knoppen voor overzichten die niet als managementrapportage zijn aangemerkt zoals Decursus en Query.
2.010__permissies__/managementinfo moet +R hebben om deze permissie toe te kennen.
globaal-zoekens020_zoekscherm2.008Globaal zoeken. Iemand met de permissie globaal-zoeken beschikt over een globale zoekfunctie (mits de module s020_zoekscherm is geïnstalleerd). Globaal in deze context betekent zoeken in meerdere toptabellen.
medewerkerdossier-inzien-wijzigens030_medewerkers2.008Medewerkerdossier inzien/wijzigen. Iemand met permissie medewerkerdossier-inzien-wijzigen krijgt toegang tot de functionaliteit die s030_medewerkers toevoegt aan de standaard medewerker/gebruikersadministratie. Zonder deze permissie zijn o.a. het bsn-nummer, de aan het medewerkerdossier gekoppelde bestanden en notities niet zichtbaar.
relatie-inziens030_relatie2.008Relatie inzien. Iemand met permissie relatie-inzien beschikt over een knop "Relaties" in de hoofdschermensectie van het startscherm. Hij/zij kan het relatiescherm openen en relatiegegevens inzien.
relatie-aanmakens030_relatie2.008Relatie aanmaken. Iemand met permissie relatie-aanmaken kan nieuwe relaties aanmaken. Functioneel gezien heeft iemand met permissie relatie-aanmaken automatisch permissie relatie-inzien.
relatie-invoerens030_relatie2.008Relatie invoeren. Iemand met permissie relatie-invoeren kan bestaande relaties wijzigen. Functioneel gezien heeft iemand met permissie relatie-invoeren automatisch permissie relatie-inzien.
relatie-correspondenties030_relatie2.008Relatie bestanden en etiketten toevoegen. Iemand met permissie relatie-correspondentie kan nieuwe bestanden (brieven etc.) toevoegen aan de relatie en bestaande bestanden openen.
dossier-inziens040_dossier2.008Dossier inzien. Iemand met permissie dossier-inzien beschikt over een knop "Dossier"in de hoofdschermensectie van het startscherm. Hij/zij kan het dossierscherm openen en bestaande dossiers inzien.
dossier-aanmakens040_dossier2.008Dossier aanmaken. Iemand met permissie dossier-aanmaken kan nieuwe dossiers aanmaken.
dossier-naw-invoerens040_dossier2.008Dossier NAW invoeren. Iemand met permissie dossier-naw-invoeren mag wijzigingen aanbrengen in het N.A.W.-blok van het dossier plus de verzekeringsgegevens. De permissie maakt ook het toevoegen en verwijderen van adressen, telecomadressen en verzekeringen mogelijk.
dossier-behandeltraject-invoerens040_dossier2.008Dossier behandeltraject invoeren. Iemand met permissie dossier-behandeltraject-invoeren mag zorgtrajecten aanmaken, wijzigen en verwijderen.
dossier-productie-invoerens040_dossier2.008Dossier productie invoeren. Iemand met permissie dossier-productie-invoeren mag productie invoeren. Onder productie wordt verstaan het aanmaken, wijzigen en verwijderen van bezoeken, verrichtingen, metingen, hoortoestellen, recepten e.d.
dossier-richtafspraak-invoerens040_dossier2.008Dossier richtafspraak/actie/no-show invoeren. Iemand met permissie dossier-richtafspraak-invoeren mag richtafspraken en no-shows aanmaken, wijzigen en verwijderen.
dossier-plannens040_dossier2.008Dossier plannen. Iemand met permissie dossier-plannen mag afspraken aanmaken, wijzigen (annuleren, binnenmelden) en verwijderen.
dossier-afsluitens040_dossier2.008Dossier zorgtraject afsluiten. Iemand met permissie dossier-afsluiten mag zorgtrajecten afsluiten.
dossier-verwijderens040_dossier2.008Dossier verwijderen. Iemand met permissie dossier-verwijderen mag een patiëntendossier verwijderen. Ook met deze permissie staat OpenAC het verwijderen van een dossier alleen toe zolang er nog geen gefactureerde subtrajecten zijn.
dossier-correspondenties040_dossier2.008Dossier correspondentie toevoegen. Iemand met permissie dossier-correspondentie kan nieuwe bestanden (brieven etc.) toevoegen aan het dossier en bestaande bestanden openen.
dossier-acties-anderen-afhandelens040_dossier2.008Dossier acties van anderen afhandelen. Iemand met permissie dossier-acties-anderen-afhandelen kan acties afhandelen waarvan hij/zij niet de eigenaar is.
2.010__permissies__/dossier-acties-anderen-afhandelen moet +R hebben om deze permissie toe te kennen.
financieel-inziens040_normtijden2.008Financiële gegevens inzien. Iemand met permissie financieel-inzien mag financiële gegevens zoals normtijden, tarieven, nota's en notabundels inzien.
fiatterens050_factureren en s050_dbc_zis2.008Nota's fiatteren. Iemand met permissie fiatteren mag subtrajecten die klaarstaan om te worden gefactureerd fiatteren, afwijzen en afschrijven.
2.010__permissies__/fiatteren moet +R hebben om deze permissie toe te kennen.
bundelens050_factureren en s050_dbc_zis2.008Nota's bundelen. Iemand met permissie bundelen mag gefiatteerde subtrajecten bundelen (en daarmee ook nota's maken, want nota's worden tijdens het bundelen aangemaakt).
exporterens050_factureren en s050_dbc_zis2.008Nota's exporteren. Iemand met permissie exporteren mag nota(bundels) indienen en exporteren naar externe formaten.
2.010__permissies__/exporteren moet +R hebben om deze permissie toe te kennen.
groeperens050_factureren2.008Nota's groeperen
rooster-inziens080_agenda2.008Rooster inzien
rooster-invoerens080_agenda2.008Rooster invoeren
kantooragenda-inziens080_agenda2.008Kantooragenda inzien
kantooragenda-invoerens080_agenda2.008Kantooragenda invoeren
kantooragenda-binnenmeldens080_agenda2.008Kantooragenda binnenmelden
dossier-fdsk-registrerens080_fdsk2.008FDSK registreren
berichten-verzendens080_herinneringen2.008Iemand met permissie berichten-verzenden mag emailberichten verzenden.
2.010__permissies__/berichten-verzenden moet +R hebben om deze permissie toe te kennen.
klachtregistratie-registrerens080_klachtregistratie2.008Klachtregistratie
dossier-macac-registrerens080_macac2.008MAC-AC registreren

Aliassen

Je kunt een alias maken van een bestaande ACL. Om met aliassen te kunnen werken zorg moet deze functionaliteit worden aangezet in modules.ini:

[kern.d010_systeem]
gebruik_acl_aliassen = True

Daarna kun je de aliassen gebruiken door in de database de tabel acl_alias_data te wijzigen. (Het staat in de planning om hier een gebruikersinterface voor te realiseren.)

In bovenstaand voorbeeld is er een alias gemaakt van patient/behandelingen/cursusentries. Deze is terug te vinden in de kolom: acl_alias_entiteit.
Deze alias heb ik genoemd: patient/behandelingen/cursusentries_logopedie. Dat is dan ook het pad van deze alias in de ACL boom. De naam en locatie kun je opgeven in de kolom: acl_alias_name.
De voorwaarde van deze alias om geactiveerd te worden is de kolom: acl_alias_conditie. Hierin staat thema:logopedie.

In dit betreffende voorbeeld is het nu zo dat er apart rechten ingesteld kunnen worden aan een groep of individu wanneer een decursusblok op thema logopedie staat.

Vanaf versie 2.014 hoeft het niet meer in de database toegevoegd te worden. Het kan vanuit het OpenAC ACL scherm.

Last modified 6 years ago Last modified on Mar 13, 2018 5:57:22 PM

Attachments (17)

Download all attachments as: .zip