Wie kann man Datenzugriffsrechte in Odoo 15 individuell einstellen?
Schritt-für-Schritt Anleitung, wie ihr eure Datensätze individuell mit Zugriffsrechten schützen könnt

In den letzten Jahren wurde es immer wichtiger, unsere Datensätze angemessen vor Fremdeinsicht zu schützen. In Odoo gibt es bereits einige Zugriffs-Regelungen, um dies entsprechend umzusetzen. Diese Regeln legen fest, wer auf welche Datensätze und Daten zugreifen kann. 

In diesem Blog erkläre ich, wie ihr diese Regeln bzw. Zugriffsrechte für eure Datensätze in Odoo 15 Community noch einmal spezifischer anpassen könnt.

Die Datensatzregel in Odoo kennt vier Zugriffsmodifikationen

Erstellen:         Zugriff für das Erstellen von Datensätzen
Schreiben:      Zugriff zum Schreiben oder Bearbeiten der Datensätze
Lesen:              Zugriff zum Lesen oder Anzeigen der Datensätze
Löschen:         Zugriff für das Löschen der Datensätze

übrigens: Ihr könnt Datensatzregeln sowohl vom Front-End als auch vom Back-End aus erstellen.

Erstellung von Datensatzregeln im Backend

Um Datensatzregeln vom Backend aus zu erstellen, können wir eine XML-Datei innerhalb der Sicherheit erstellen (Sicherheit >> modulname_security.xml). Nehmen wir ein Beispiel aus dem Modul sale_expense.

<record id="sale_order_rule_expense_user" model="ir.rule">
        <field name="name">Expense Employee can read confirmed SO</field>
        <field ref="sale.model_sale_order" name="model_id"/>
        <field name="domain_force">[('state', '=', 'sale')]</field>
        <field name="groups" eval="[(4, ref('base.group_user'))]"/>
        <field name="perm_read" eval="True"/>
        <field name="perm_write" eval="False"/>
        <field name="perm_create" eval="False"/>
        <field name="perm_unlink" eval="False"/>
        <field name="active" eval="False"/> <!-- opw-2027005: this rules breaks sale "see own document" -->
    </record>



Ir.rule ist das Modell für eine Datensatzregel. Hier haben wir die Datensatzregel für die Gruppe base.group_user erstellt. Die Regel wird angewendet, wenn der Status = ‘sale.’to useto thele.model_sale_order" name="model_id"/>

Innerhalb des Verweises geben wir das entsprechende Modell an, d.h. ein Verkauf ist der Modulname und sale.order ist der Modellname.


<field name="perm_read" eval="True"/>
 <field name="perm_write" eval="False"/>
 <field name="perm_create" eval="False"/>
  <field name="perm_unlink" eval="False"/>

Dies sind die für die Gruppe base.group_user festgelegten Zugriffsmodi. Diese Gruppe hat nur die Berechtigung, die Datensätze zu lesen oder anzusehen, da andere Berechtigungen falsch wären.


<field name="domain_force">[('state', '=', 'sale')]</field>

Im Fall von domain_force legen wir den Bereich für die Eintragungsregel fest. Die Regel wird angewendet, wenn sie mit dem Datensatz übereinstimmt. Wenn der Status hier "sale" ist, wird diese Regel nur auf die Gruppe angewendet. Ihr könnt mehr als eine Domäne für domain_force angeben.
 

<field name="groups" eval="[(4, ref('base.group_user'))]"/>

Hier können wir die Gruppe angeben; die Regel wird nur für die entsprechenden Gruppen gelten. In diesem Fall gilt die Regel für die Gruppe base.group_user, d. h. sie gilt für alle internen Benutzer.

Erstellung von Datensatzregeln über das Frontend

Um Aufzeichnungsregeln aus dem Front-End zu erstellen, müsst ihr zunächst den Debug-Modus aktivieren und dann zu Einstellungen -> Technik -> Rechte für Daten gehen.


In der obigen Abbildung seht ihr alle Datensatzregeln in eurem Odoo. Jetzt könnt ihr prüfen, wie ihr eine Datensatzregel über das Front-End erstellen könnt.



Dies ist ein Beispiel für eine bereits vorhandene Datensatzregel.


Datensatzregel über das Front-End erstellen

 


Es gibt verschiedene Felder für die Erstellung von Datensatzregeln:

Name:                  Name für die Datensatzregel
Modell:                 Die Datensatzregel wird für dieses Modell angewendet
Aktiv:                     Aktiviert die Aufzeichnungsregel
Zugriffsrechte:    Es gibt vier Zugriffsrechte: Lesen, Schreiben, Erstellen und
                              Löschen. Alle diese Zugriffsrechte sind standardmäßig aktiviert.
Regeldefinition:   Domäne für die Filterung der Datensätze
(Domänenfilter)
Gruppen:             Wenn ihr die Gruppe angebt, wird die Regel für die                                                     angegebenen Gruppen gelten. Wenn die Regel global                                              angewendet werden soll, müssen die Gruppen nicht                                                  angegeben werden.

Du hast noch unbeantwortete Fragen zu Odoo Community?

Dann nutze unsere Foren und helfe auch anderen Odoo-Nutzern, zukünftig eine Antwort auf deine Odoo-Frage zu finden.

Diese Kurse oder Module könnten interessant sein für dich:

Ihr Dynamic Snippet wird hier angezeigt... Diese Meldung wird angezeigt, weil Sie weder einen Filter noch eine Vorlage zur Verwendung bereitgestellt haben
Wie kann man Datenzugriffsrechte in Odoo 15 individuell einstellen?
Green Footprints Technology, Braam Lee 24 Januar, 2022
Diesen Beitrag teilen
Archiv
Anmelden um einen Kommentar zu hinterlassen
Was kann das Anwesenheitsmodul in Odoo 15 Community?
Wir geben dir einen Einblick über die Möglichkeiten des Odoo 15 Moduls "Anwesenheit"