Berechtigungen (Permissions)
ERPNext bzw. frappe Berechtigungen werden in unterschiedlichen Ebenen abgebildet und können granular eingestellt werden.
- Einführung in Berechtigungen
- Feldberechtigungen (Field Permissions) einstellen
- Benutzerberechtigungen (User Permission)
- Rollenberechtigung-Manager (Rolepermission Manager)
- Rolle Allgemein
Einführung in Berechtigungen
Einleitung
Vorkenntnisse
Falsch eingestellte Berechtigungen können dazu führen, dass Personen Daten sehen zu welchen sie eigentlich nicht autorisiert sind. Weiter kann über zu strenge Berechtigungen ein Mitarbeiter am flüssigen Arbeiten gehindert werden.
Für das Einstellen von Berechtigungen ist eine gute Gesamtkenntnis des Systems notwendig.
Rollen
Rollen können individuell erstellt werden und im Benutzer aktiviert werden.
Rollenprofile
ERPNext's Rollenprofile sind eine Vorauswahl von Rollen welche z.B. beim Anlegen von neuen Benutzern eingesetzt werden können.
Berechtigungsebene
Jedes Feld in einem DocType kann eine eigene Berechtigungsebene bekommen. Die unterste Ebene ist 0 die höchste 9. Dabei hat die Ebene 0 eine besondere Funktion. In dieser können wir folgende Funktionen erlauben
- Lesen
- schreiben
- Erstellen
- Buchen
- Abbrechen
- Abändern
- Löschen
- Bericht
- Import
- Export
- Nutzer-Berechtigungen Setzen
- Teilen. (Share)
In allen darüber liegenden Berechtigungsebenen können wir nur einstellen ob die Ebene nur lesen oder auch schreiben kann.
Rollenberechtigungen-Manager
Module
Weiterführende Links
Quellen & Verweise
Feldberechtigungen (Field Permissions) einstellen
Einleitung
In frappe & ERPNext können wir in jedem DocType einzelne Felder mit einer Berechtigungsebene versehen. Das System sieht 10 Berechtigungsebenen vor (0-9) wobei die die Ebene 0 eine Ausnahme ist. Die Ebene 0 beschreibt die Dokument Ebene, auf dieser haben wir die Möglichkeit sämtliche Berechtigungen zu setzen. Diese sind im Abschnitt Dokumentberechtigungen aufgeführt. Um Feldberechtigungen besser zu verstehen beleuchten wir zunächst noch einmal die Dokumentberechtigungen.
Dokumentberechtigungen
Dokumentenberechtigungen werden im Rollenberechtigungsmanager festgelegt. Hier können wir alle Berechtigungen welche für einen DocType eingestellt werden können einsehen und bearbeiten.
Die volle Liste der Berchtigungen bekommen wir jedoch nur wenn die Ebene 0 ausgewählt ist.
Name | english name | Beschreibung |
Auswählen | DocType kann in z.B. einenm Verknüpfungswelt gesehen und ausgwählt werden | |
Lesen | Das DocType kann geöffnet und in read-only angesehen werden | |
Schreiben | Auf dem DocType dürfen Felder geändert werden. | |
Erstellen |
Ein DocType kann erstellt werden jedoch nach dem speichern nicht weiter geändert werden. Darf die Rolle nicht erstellen wird der Button für "Neu" ausgeblendet. |
|
Löschen | Ein DocType darf gelöscht werden. Lassen wir dies leer sieht die Rolle den Button löschen gar nicht erst. | |
Die Druckfunktion, auch PDF, kann von der Rolle verwendet werden. Option nur bei gesetztem Haken angezeigt. | ||
Rolle darf aus dem DocType heraus E-Mails schreiben (FIXME und sieht angehängte??) | ||
Bericht | Die Bereichtsansicht des DocTypes darf durch die Rolle verwendet und basierend auf seinen Berechtigungen manipuliert werden. | |
Import | Ein Datensastz des DocTypes darf durch die Rolle über die Importfunktion in das System geschrieben werden. | |
Export | In der Berichtsansicht können eingestellte Berichte als *.CSV oder *.XLSX exportiert werden. | |
Nutzer-Berechtigungen Setzen | Die Rolle darf Berechtigungen für andere Nutzer für diesen DocType setzen. | |
Aktie | Share | Die Rolle darf das DocType mit anderen Nutzern des ERPs teilen. |
Wählen wir eine andere Ebene als 0 befinden wir uns in der Welt der Feldberechtigungen.
Feldberechtigungen
Im Rollenberechtigungsmanager können wir neben der Dokumentenberechtigung auf Ebene 0 noch Feldberechtigungen (Ebene 1-9) setzen. Hierzu wählen wir ebenfalls den DocType und die Rolle aus und setzen dann das gewünscht Level.
In der erstellten Berechtigung auf Ebene 4 sehen wir, dass wir nur noch bestimmen können ob wir Lesen oder Schreiben können.
Damit diese Berechtigung für die Ebene 4 nun grieft müssen wir im DocType die Felder bestimmen welche der Ebene 4 bestimmt sind.
Feldberechtigung im DocType setzen
Gehe zu: Menü -> Anpassen -> "Feldtabelle"
In jedem Feld finden wir einen Abschnitt BERECHTIGUNGEN. Hier können wir die Berechtigungsebene für das Feld setzen:
Dort stellen wir dann die Berechtigungsebene ein wie wir es in der Rolle vorher bestimmt haben.
Benutzerberechtigungen (User Permission)
Einleitung
Über die Rollenberechtigungen können wir eine eher grobe Berechtigungsschicht einführen. Die Anwendung von Benutzerberechtigungen ergänzt diese um noch spezischer einzugrenzen.
In der Systemverwaltung können wir im Abschnitt Berechtigungen weitere Einstellungen zu Berechtigungen setzen.
Benutzerberechtigungen erstellen
Vom Benutzer her kommend können wir an zwei Stellen neue Benutzerberechtigungen erstellen.
Felder
Bezeichnung |
Feldname |
Erklärung |
||
Nutzer |
user |
Verknüpfung zum Benutzer für welchen diese Benutzerberechtigung gelten soll. |
||
Zulassen |
allow |
Verknüpfung zu einem Doctype für welchen die Benutzerberechtigung gelten soll. | ||
Für Wert |
for_value |
Verknüpfung zum tatsächlichen Eintrag eines Doctypes welcher in `allow` gewählt wurde. |
||
Ist Standard | is_default | Ist der Haken hier gesetzt, | is_default |
Ist der Haken hier gesetzt, |
Bezeichnung |
Feldname |
Erklärung |
Auf alle Dokumenttypen anwenden |
apply_to_all_doctypes |
Setzen wir den Haken, wird die oben beschriebene Benutzerberechtigung für alle Doctypes eingestellt. Das heißt überall dort wo der Wert `for_value` im Feld welches wir in `allow` bestimmt haben zu finden ist. Wollen wir dies nur auf einzelne Doctypes anwenden entfernen wir das Häkchen. |
Anwenden für |
applicable_for |
Haben wir `apply_to_all_doctypes` abgewählt können wir hier eine Verknüpfung zu einem einzelnen Doctype festlegen für welchen diese Benutzerberechtigung gelten soll. |
Standards
Ein User mit der Rolle Mitarbeiter hat meist folgende Standards
Somit sieht er die eine Firma, in diesem Fall tüit GmbH, und den Mitarbeiter der
Rollenberechtigung-Manager (Rolepermission Manager)
Einleitung
Der Rollenberechtigungsmanager ist eine Maske über welche wir DocTypes zu Rollen zuordnen können. Wir können dann bestimmen welche Rechte für eine bestimmte Rolle gegeben werden.
Beim setzen dieser Rechte ensteht sofort ein Eintrag in der Liste Custom DocPerm
Die Berechtigungen können auf verschiedenen Leveln gegeben werden. Hierzu müssen sollten wir uns mit dem Thema Feldberechtigungen näher auseinander setzen.
Weitere Berechtigungen können über Benutzerberechtigungen oder über die Rollengenehmigung Seite und Bericht eingestellt werden.
Felder
Der Rollenberechtigungsmanager ist ein einzel DocType. Im ersten Abschnitt des DocTypes gibt es zwei Auswahl Felder.
Dokumenttyp auswählen
Hier können wir alle DocTypes des Systems auswählen auf welche Rechte angewendet werden können.
Rolle auswählen
Die Tabelle
Dokumenten Typ | Rolle | Ebene | Berechtigungen |
Zeigt das Dokument (Doctype) für welches die Rollenberechtigung gilt. | Zeigt die Rolle für welche die Rollenberechtigung gilt, sowie die Option only_if_creator. | Zeigt die Ebene für welche diese Rolle gilt |
|
Ebene
Beim erstellen einer neuen Regel kann von der Ebene 0-9 gewählt werden. Die ebenen werden auf Dokumentenfelder (Doctype Fields) gesetzt.
Die Ebene 0 ist die Grundebene und gilt für das gesamte Dokument.
Alle weiteren Ebenen sind eine Hierarchie. Hat ein Nutzer keine Rollenberechtigung für eine bestimmte Ebene, dann beeinflusst dies alle Felder die mit dieser Eben versehen sind.
Berechtigungen
Bezeichnung |
Englisch |
Erklärung |
Auswählen |
Select |
Der Doctype kann in Link-Felder ausgewählt werden. Einträge in bereits gefüllten Felder sind sichtbar. Der eigentliche Eintrag kann nicht geöffnet werden. |
Lesen | Read |
Macht das Auswählen hinfällig. Der Nutzer kann den Doctype öffnen und sieht alle Daten die dem Berechtigungslevel entsprechen. |
Schreiben | Wright |
Nutzer kann Doctype die er Lesen darf auch beschreiben. Also Daten ändern. |
Erstellen | Create | Nutzer kann einen neuen Eintrag eines Doctypes erstellen. |
Löschen |
Delete |
Nutzer kann einen Eintrag des Doctypes löschen. Gelöschte Doctype Einträge können im Doctype Gelöschte Dokumente wieder hergestellt werden. |
Buchen | Submit |
Ändern den Doc-Status von 0 nach 1 |
Abbrechen | Cancel |
Ändern den Doc-Status von 1 nach 2 |
Abändern | Amend |
Bleibt im Doc-Status 2, erstellt einen neuen Eintrag des Doctypes mit Rückverknüpftung zum vorherigen `amended_from` |
Drucken |
Print |
Nutzer kann die Druckansicht und darin verborgene PDF Option verwenden. Hat er die Rechte nicht, ist das Symbol nicht sichtbar. |
E-Mail |
email |
Nutzer kann den E-Mail-Dialog öffnen. Hat er die Rechte nicht, ist sind die Symbole ausgeblendet und auch Tastenkürzel Strg+E (CMD+E) nicht aktiv. |
Bericht |
Report |
Nutzer kann die Berichtsansicht für den Doctype nutzen. Siehe FIXME |
Import |
Import |
Nutzer kann neue Einträge des Doctypes über die Import option erstellen. |
Export |
Export |
Nutzer kann den Doctype per Export als *.CSV oder *.XLS herunterladen. |
Nutzer-Berechtiugngen Setzen |
Set User Permission |
Nutzer kann die Rechte für diesen Doctype für andere Nutzer setzen. |
Teilen |
Share |
Nutzer können den Doctype mit anderen Nutzern des Systems teilen. Siehe FIXME |
Weiterführende Links
Quellen & Verweise
Rolle Allgemein
Einleitung
Leider sind die Einstellungen der Berechtigungen von Rollen in frappe/ERPNext nicht immer optimal. Diese Rolle ist ein Muster welches wir nach und nach erweitern um Berechtigungsprobleme die im System auftauchen welche aber meist keinerlei konkrete Einschränkung darstellen abfangen sollen. Dazu gehören z.B. Fehlermeldungen die angezeigt werden aber keine Einschränkungen für den Anwender haben.
Die Rolle legen wir im System mit folgender Syntax an
kndnr Allgemien
Wobei kndnr die bei der tüit GmbH geführte Kundennummer ist.