Introductie
In Odoo zie je regelmatig een AccessError verschijnen wanneer iemand iets wil bekijken, aanpassen of verwijderen waarvoor het account geen rechten heeft. Het is geen softwarefout, maar een signaal dat de toegangsregels van het systeem ingrijpen.
Het bericht verschijnt meestal in een eenvoudige vorm zoals hieronder:
AccessError: You are not allowed to access this document.
Belangrijk om te begrijpen: dit is een bewuste beveiligingsmaatregel van Odoo — geen bug die je zomaar mag omzeilen.
In deze gids leggen we uit waarom die foutmelding opduikt en welke stappen je best neemt om het probleem veilig en duurzaam op te lossen.
Wat bedoelen we met een AccessError in Odoo?
Odoo werkt met verschillende beveiligingslagen die samen bepalen wie wat mag doen, zoals:
- Gebruikersgroepen
- Access Control Lists (ACL’s)
- Record rules (toegangsfilters per record)
- Instellingen voor meerdere bedrijven
Wanneer iemand een actie uitvoert (lezen, schrijven, aanmaken, verwijderen) en één van deze lagen de actie blokkeert, genereert Odoo een AccessError.
Meestal zie je die melding in de gebruikersinterface, maar hij kan ook optreden in automatische processen of achtergrondtaken.
Veelvoorkomende oorzaken van een AccessError in Odoo
1. Ontbrekende modelrechten (ACL-probleem)
ACL’s bepalen voor elke gebruikersgroep of ze een bepaald model mogen:
- Lezen
- Schrijven
- Aanmaken
- Verwijderen
Als de groep van de gebruiker één van deze rechten mist, blokkeert Odoo de bewerking automatisch.
Praktisch voorbeeld:
Een verkoper probeert boekhoudkundige posten te wijzigen zonder dat zijn groep die permissie heeft.
2. Record rules die records filteren
Record rules leggen beperkingen op op basis van domeinen, bijvoorbeeld wie welk record mag zien of bewerken.
Praktisch voorbeeld:
Een typische voorwaarde ziet er zo uit: [('user_id', '=', user.id)]
Als een record niet aan die voorwaarde voldoet, krijgt de gebruiker geen toegang.
Dergelijke regels verklaren vaak waarom iets ‘werkt voor admin maar niet voor gewone gebruikers’.
3. Multi-company instellingen
Als een record toegekend is aan een andere vennootschap, voorkomt Odoo toegang buiten die bedrijfscontext.
Dit probleem komt veel voor in omgevingen met meerdere bedrijven binnen dezelfde database.
4. Conflicterende groepsrechten door overerving
Gebruikers kunnen lid zijn van meerdere groepen met elkaar overlappende regels.
Complexe hiërarchieën van groepen kunnen onbedoeld toegang blokkeren.
5. Foutieve beveiligingsinstellingen in maatwerkmodules
Maatwerkmodules bevatten soms onvolledige of verkeerde definities van:
- ir.model.access regels
- Record rules (toegangsfilters per record)
- Groeps-toewijzingen
Dat kan onverwachte blokkades veroorzaken bij eindgebruikers.
Stappen om een Odoo AccessError op te lossen
Stap 1 – Controleer de gebruikersgroepen
Ga naar de gebruikersinstellingen via:
Instellingen → Gebruikers & Bedrijven → Gebruikers
Bekijk tot welke groepen de gebruiker behoort.
Zorg dat de juiste groep(en) toegewezen zijn voor de gewenste functionaliteit.
Stap 2 – Controleer de Access Control Lists (ACL)
Navigeer naar:
Instellingen → Technisch → Beveiliging → Access Control Lists
Controleer of het model voor de betreffende groep de nodige permissies heeft.
Stap 3 – Bekijk de record rules
Navigeer naar:
Instellingen → Technisch → Beveiliging → Record Rules
Controleer welke domeinen er op het model toegepast zijn.
Schakel verdachte regels tijdelijk uit voor testdoeleinden om de impact te meten.
Stap 4 – Test met Administrator
Als de Administrator de actie wél kan uitvoeren, is het probleem vrijwel zeker aan de beveiligingsconfiguratie te wijten.
Stap 5 – Controleer de bedrijfcontext
Schakel van bedrijf of pas de context aan en kijk of het record dan toegankelijk wordt.
Hoe AccessErrors in toekomstige Odoo-projecten te voorkomen
- Houd beveiligingsregels overzichtelijk en eenvoudig
- Vermijd te complexe domeinregels die later onvoorspelbaar worden
- Documenteer wijzigingen aan ACL’s en record rules
- Test nieuwe modules altijd ook met niet-admin gebruikers
- Controleer en evalueer multi-company instellingen regelmatig
Beveiliging in Odoo moet strikt maar voorspelbaar zijn; dat voorkomt operationele verrassingen.
Te ingewikkelde record rules leiden vaak tot storingen in het dagelijks gebruik en frustratie bij gebruikers.
Hoe Dasolo toegang en beveiliging in Odoo structureert
AccessError duidt meestal op een mismatch tussen rechten, records en werkprocessen. Wat er als een simpele blokkade lijkt, is vaak het symptoom van onduidelijke of inconsistente beveiligingsregels.
Bij Dasolo pakken we toegangsproblemen aan door het gehele permissie-model te auditen. Vaak vinden we de oorzaak terug in:
- Overlappende of tegenstrijdige record rules
- Foutief ingestelde gebruikersgroepen
- Beperkingen door multi-company zichtbaarheid
- Verkeerde rechten in maatwerkmodules
- Integratie-accounts zonder de juiste permissies
In plaats van permissies breed open te zetten, ontwerpen we duidelijke lagen toegang die overeenkomen met de werkprocessen van de organisatie. Een transparant beveiligingsmodel beperkt onverwachte AccessErrors en beschermt tegelijk gevoelige data.
Besluit
Kort samengevat: een AccessError betekent dat iemand een actie probeert te doen waarvoor hij of zij geen rechten heeft. Vaak ligt de oorzaak bij record rules, groepsindelingen of multi-company instellingen.
Door rechten systematisch door te lopen, groepen logisch in te richten en record rules af te stemmen op de werkprocessen, vermijd je herhaalde machtigingsproblemen. Een goed doordacht beveiligingsmodel houdt processen soepel en data veilig.
AccessError-problemen correct oplossen verbetert de governance van je Odoo-omgeving en zorgt dat het platform veilig en voorspelbaar blijft wanneer je organisatie groeit.