Einschränkungen beim Zugriff auf Daten in 1c-Rollen. Verwendung von RLS

Wie konfiguriere ich Zugriffsrechte in 1C 8.3?

In diesem Artikel schauen wir uns an, wie man mit Benutzern in 1C Accounting 8.3 arbeitet:

  • einen neuen Benutzer erstellen
  • Rechte konfigurieren – Profile, Rollen und Zugriffsgruppen
  • So konfigurieren Sie die Rechtebeschränkung auf Datensatzebene (RLS) in 1C 8.3 – zum Beispiel nach Organisation

Die Anleitung eignet sich nicht nur für das Buchhaltungsprogramm, sondern auch für viele andere, die auf Basis von BSP 2.x aufgebaut sind: 1C Trade Management 11, Salary and Personnel Management 3.0, ERP 2.0, Small Firm Management und andere.

In der 1C-Programmoberfläche erfolgt die Benutzerverwaltung im Bereich „Administration“ im Punkt „Benutzer und Rechte einrichten“:

So erstellen Sie einen neuen Benutzer in 1C

Um einen neuen Benutzer in 1C Accounting 3.0 anzulegen und ihm bestimmte Zugriffsrechte zuzuweisen, gibt es im Menü „Administration“ den Punkt „Benutzer- und Rechteeinstellungen“. Lass uns da hin gehen:

Die Liste der Benutzer wird im Abschnitt „Benutzer“ verwaltet. Hier können Sie einen neuen Benutzer (oder eine neue Benutzergruppe) erstellen oder einen vorhandenen bearbeiten. Nur ein Benutzer mit Administratorrechten kann die Benutzerliste verwalten.

Erstellen wir eine Benutzergruppe mit dem Namen „Buchhaltung“, in der es zwei Benutzer geben wird: „Buchhalter 1“ und „Buchhalter 2“.

Um eine Gruppe zu erstellen, klicken Sie auf die in der Abbildung oben hervorgehobene Schaltfläche und geben Sie einen Namen ein. Wenn in der Informationsdatenbank weitere Benutzer vorhanden sind, die für die Rolle des Buchhalters geeignet sind, können Sie diese sofort zur Gruppe hinzufügen. In unserem Beispiel gibt es keine, also klicken wir auf „Aufzeichnen und schließen“.

Jetzt erstellen wir Benutzer. Platzieren Sie den Cursor auf unserer Gruppe und klicken Sie auf die Schaltfläche „Erstellen“:

Im vollständigen Namen geben wir „Buchhalter 1“ ein, der Login-Name wird auf „Buchhalter1“ gesetzt (dieser wird beim Betreten des Programms angezeigt). Das Passwort lautet „1“.

Stellen Sie sicher, dass die Kontrollkästchen „Anmeldung am Programm erlaubt“ und „In der Auswahlliste anzeigen“ aktiviert sind, da sich der Benutzer sonst bei der Autorisierung nicht selbst sieht.

Belassen Sie den „Startmodus“ auf „Auto“.

Zugriffsrechte einrichten – Rollen, Profile

Jetzt müssen Sie „Zugriffsrechte“ für diesen Benutzer festlegen. Aber Sie müssen es zuerst aufschreiben, sonst erscheint ein Warnfenster, wie im Bild oben gezeigt. Klicken Sie auf „Aufzeichnen“ und dann auf „Zugriffsrechte“:

Wählen Sie das Profil Buchhalter aus. Dieses Profil ist Standard und mit den Grundrechten konfiguriert, die ein Buchhalter benötigt. Klicken Sie auf „Aufzeichnen“ und schließen Sie das Fenster.

Klicken Sie im Fenster „Benutzer (Erstellung)“ auf „Speichern und schließen“. Wir schaffen auch einen zweiten Buchhalter. Wir stellen sicher, dass Benutzer aktiviert sind und arbeiten können:

Es ist zu beachten, dass derselbe Benutzer mehreren Gruppen angehören kann.

Wir haben die Zugriffsrechte für Buchhalter aus denen ausgewählt, die standardmäßig im Programm enthalten sind. Es gibt jedoch Situationen, in denen es notwendig ist, ein Recht hinzuzufügen oder zu entfernen. Hierzu ist es möglich, ein eigenes Profil mit einer Reihe notwendiger Zugriffsrechte zu erstellen.

Gehen wir zum Abschnitt „Zugriff auf Gruppenprofile“.

Nehmen wir an, wir müssen unseren Buchhaltern erlauben, den Journaleintrag einzusehen.

Das Erstellen eines Profils von Grund auf ist ziemlich arbeitsintensiv. Kopieren wir also das Profil „Buchhalter“:

Und lassen Sie uns die notwendigen Änderungen daran vornehmen – fügen Sie die Rolle „Protokoll anzeigen“ hinzu:

Geben wir dem neuen Profil einen anderen Namen. Zum Beispiel „Buchhalter mit Ergänzungen“. Und aktivieren Sie das Kontrollkästchen „Registrierungsprotokoll anzeigen“.

Jetzt müssen wir das Profil der zuvor erstellten Benutzer ändern.

Einschränkung der Rechte auf Aufnahmeebene in 1C 8.3 (RLS)

Lassen Sie uns herausfinden, was es bedeutet, Rechte auf Datensatzebene einzuschränken, oder wie es in 1C genannt wird – RLS (Record Level Security). Um diese Möglichkeit zu erhalten, müssen Sie das entsprechende Kästchen ankreuzen:

Das Programm verlangt eine Bestätigung der Aktion und weist Sie darauf hin, dass solche Einstellungen das System stark verlangsamen können. Oftmals ist es notwendig, dass einige Benutzer Dokumente bestimmter Organisationen nicht sehen. Genau für solche Fälle gibt es eine Zugriffseinstellung auf Datensatzebene.

Wir gehen erneut zum Abschnitt Profilverwaltung, doppelklicken auf das Profil „Buchhalter mit Ergänzungen“ und gehen zur Registerkarte „Zugriffsbeschränkungen“:

Unter „Zugriffstyp“ wählen Sie „Organisationen“, unter „Zugriffswerte“ wählen Sie „Alle erlaubt, Ausnahmen werden in Zugriffsgruppen zugeordnet“. Klicken Sie auf „Speichern und schließen“.

Nun kehren wir zum Bereich „Benutzer“ zurück und wählen beispielsweise den Benutzer „Buchhalter 1“ aus. Klicken Sie auf die Schaltfläche „Zugriffsrechte“:

Wählen Sie über die Schaltfläche „Hinzufügen“ die Organisation aus, deren Daten „Buchhalter 1“ sehen soll.

Beachten Sie! Die Verwendung eines Mechanismus zur Rechtetrennung auf Datensatzebene kann sich auf die Leistung des Programms als Ganzes auswirken. Hinweis für den Programmierer: Der Kern von RLS besteht darin, dass das 1C-System jeder Anfrage eine zusätzliche Bedingung hinzufügt und Informationen darüber anfordert, ob der Benutzer diese Informationen lesen darf.

Andere Einstellungen

Die Abschnitte „Einstellungen kopieren“ und „Einstellungen löschen“ werfen keine Fragen auf; ihre Namen sprechen für sich. Dies sind Einstellungen für das Erscheinungsbild des Programms und der Berichte. Wenn Sie beispielsweise ein ansprechendes Erscheinungsbild für das Verzeichnis „Nomenklatur“ eingerichtet haben, kann dieses auf andere Benutzer übertragen werden.

Im Bereich „Benutzereinstellungen“ können Sie das Erscheinungsbild des Programms ändern und zusätzliche Einstellungen für die Benutzerfreundlichkeit vornehmen.

Mit der Checkbox „Zugriff für externe Benutzer zulassen“ können Sie externe Benutzer hinzufügen und konfigurieren. Sie möchten beispielsweise einen Online-Shop auf Basis von 1C organisieren. Die Kunden des Geschäfts werden externe Benutzer sein. Die Zugriffsrechte werden auf die gleiche Weise konfiguriert wie bei normalen Benutzern.

Basierend auf Materialien von: programmist1s.ru

Alle Benutzerrechteeinstellungen, die wir im Rahmen dieses Artikels vornehmen, finden Sie im Abschnitt 1C 8.3 „Administration“ – „Benutzer- und Rechteeinstellungen“. Dieser Algorithmus ist in den meisten Konfigurationen verwalteter Formulare ähnlich. Als Beispiel wird das Programm 1C Accounting verwendet, die Einrichtung von Rechten in anderen Programmen (1C UT 11, 1C ZUP 3, 1C ERP) erfolgt jedoch genauso.

Gehen wir zum Abschnitt „Benutzer“ des Einstellungsfensters. Hier sehen wir zwei Hyperlinks: „Benutzer“ und „Anmeldeeinstellungen“. Mit der ersten können Sie direkt zur Benutzerliste dieser Informationsdatenbank gelangen. Bevor wir einen neuen Benutzer erstellen, schauen wir uns die möglichen Anmeldeeinstellungen an (Hyperlink rechts).

In diesem Einstellungsformular können Sie die Passwortkomplexität konfigurieren (mindestens 7 Zeichen, obligatorischer Inhalt verschiedener Zeichentypen usw.). Sie können auch die Länge des Passworts und seine Gültigkeitsdauer festlegen und Benutzern die Anmeldung am Programm verbieten, wenn sie über einen bestimmten Zeitraum nicht aktiv waren.

Jetzt können Sie direkt mit dem Hinzufügen eines neuen Benutzers zu 1C fortfahren. Dies kann durch Klicken auf die Schaltfläche „Erstellen“ erfolgen, wie im Bild unten gezeigt.

Zunächst geben wir den vollständigen Namen „Dmitri Petrowitsch Antonow“ an und wählen eine Person aus dem entsprechenden Verzeichnis aus. Hier können Sie auch die Abteilung angeben, in der unser Mitarbeiter tätig ist.

Der Login-Name „AntonovDP“ wurde automatisch als Abkürzung für den vollständigen Namen „Dmitri Petrowitsch Antonow“ ersetzt. Lassen Sie uns ein Passwort und eine Authentifizierung für 1C Enterprise festlegen. Hier können Sie auch angeben, ob dieser Benutzer sein Passwort selbstständig ändern kann.

Nehmen wir an, wir möchten, dass Dmitry Petrovich Antonov beim Starten dieser Informationsbasis in der Auswahlliste verfügbar ist. Dazu müssen Sie das Kontrollkästchen beim Punkt „In Auswahlliste anzeigen“ aktivieren. Infolgedessen sieht das Autorisierungsfenster beim Starten des Programms wie in der folgenden Abbildung dargestellt aus.

Achten wir auf eine weitere wichtige Einstellung in der Benutzerverzeichniskarte: „Anmeldung beim Programm ist erlaubt.“ Wenn die Verzögerung nicht eingestellt ist, kann der Benutzer diese Informationsbasis einfach nicht betreten.

Zugangsrechte

Nachdem wir alle Daten auf der Benutzerkarte von Dmitry Petrovich Antonov ausgefüllt haben, werden wir sie aufschreiben und mit der Einrichtung der Zugriffsrechte fortfahren, wie in der Abbildung unten gezeigt.

Vor uns öffnete sich eine Liste der zuvor in das Programm eingegebenen Zugangsprofile. Aktivieren Sie die erforderlichen Kontrollkästchen.

Greifen Sie auf Gruppenprofile zu

Zugriffsgruppenprofile können über das Hauptformular zur Benutzer- und Rechteeinrichtung konfiguriert werden. Gehen Sie zum Abschnitt „Zugriffsgruppen“ und klicken Sie auf den Hyperlink „Zugriffsgruppenprofile“.

Lassen Sie uns aus dem sich öffnenden Listenformular eine neue Gruppe erstellen. Aktivieren Sie im tabellarischen Abschnitt der Registerkarte „Zulässige Aktionen (Rollen)“ die Kontrollkästchen für die Rollen, die sich auf die Zugriffsrechte der Benutzer auswirken, die in der von uns erstellten Gruppe enthalten sind. Alle diese Rollen werden im Konfigurator erstellt und konfiguriert. Sie können im Benutzermodus nicht geändert oder neue erstellt werden. Sie können nur aus der vorhandenen Liste auswählen.

RLS: Zugriffsbeschränkung auf Datensatzebene

Ermöglicht Ihnen, den Zugriff auf Programmdaten in bestimmten Bereichen flexibler zu konfigurieren. Um es zu aktivieren, aktivieren Sie das gleichnamige Kontrollkästchen im Benutzer- und Rechteeinstellungsformular.

Bitte beachten Sie, dass die Aktivierung dieser Einstellung die Systemleistung beeinträchtigen kann. Der Punkt ist, dass der RLS-Mechanismus alle Anfragen abhängig von den festgelegten Einschränkungen ändert.

Gehen wir zum Zugriffsgruppenprofil „Testgruppe“, das wir zuvor erstellt haben. Die folgende Abbildung zeigt, dass nach der Aktivierung von Zugriffsbeschränkungen auf Datensatzebene eine zusätzliche Registerkarte „Zugriffsbeschränkungen“ angezeigt wurde.

Nehmen wir an, wir möchten, dass Benutzer, die einer Testgruppe zugewiesen sind, Zugriff auf Daten aller Organisationen in dieser Infobase haben, mit Ausnahme der im Profil angegebenen.

Im oberen tabellarischen Teil legen wir Zugriffsbeschränkungen nach Organisation fest. Im unteren Teil stellen wir klar, dass der Organisation „Roga LLC“ kein Zugriff auf Daten (Dokumente, Verzeichnisse etc.) gewährt wird.

Zugriff auf Verzeichniseintragsebene einrichten.

Diese Einstellung wurde vor nicht allzu langer Zeit in die Konfiguration aufgenommen, ich persönlich halte die Einstellung für sehr nützlich.

Diese Einstellung ist für diejenigen erforderlich, die den Zugriff auf das Verzeichnis durch Elemente dieses Verzeichnisses einschränken müssen. Beispielsweise muss ein Manager nur Kunden sowie Berichte und Dokumentenprotokolle sehen, und zwar nur für Gegenparteien, auf die er Zugriff hat, und ein Buchhalter muss vollen Zugriff auf alle Elemente des Verzeichnisses haben, zum Beispiel „Kontrahenten“. ”

Ich schlage vor, ein Beispiel am Beispiel der Softstarter-Konfiguration zu betrachten.

  1. In dieser Phase ist es notwendig, eine Reihe von Benutzergruppen zu definieren.

Administratoren;

Verkaufsmanager;

Einkaufsmanager;

  1. Im zweiten Schritt werden Zugriffsgruppen auf das Verzeichnis festgelegt.

Käufer;

Lieferanten;

Typischerweise werden die oben beschriebenen Gruppenlisten mit der Geschäftsleitung besprochen und erst dann in das Programm eingetragen.

Nun müssen die tatsächlichen Einstellungen beschrieben werden, die in 1C vorgenommen werden müssen.

  1. Aktivieren wir „Eingeschränkter Zugriff auf Datensatzebene“. Service – Benutzer- und Zugriffsverwaltung – Zugriffsparameter auf Datensatzebene. Siehe Abb. 1.

Es öffnet sich das Bearbeitungsformular „Zugriffsparameter auf Datensatzebene“, siehe Abb. 2.

In diesem Formular müssen Sie tatsächlich die Einschränkung aktivieren, für die das Flag „Zugriff auf Datensatzebene nach Objekttyp einschränken“ verantwortlich ist, und diejenigen Verzeichnisse auswählen, für die die Einschränkung gelten soll. In diesem Artikel wird nur das Verzeichnis „Kontrahenten“ behandelt.

  1. Als nächstes benötigen wir die Gruppen von Benutzern und Gegenparteien, die am Anfang des Artikels definiert wurden.

Auftragnehmergruppen werden im Verzeichnis „Benutzergruppen“ eingetragen, siehe Abb. 3.

Es öffnet sich das Formular des Verzeichniselements „Benutzergruppen“, siehe Abb. 4.

Auf der linken Seite des Fensters wird das Zugriffsobjekt angezeigt (bei uns sind das „Gegenparteien“), auf der rechten Seite stehen die Benutzer, die Mitglieder der Gruppe sind, in diesem Beispiel sind das „Administratoren“.

Für jede von Ihnen definierte Benutzergruppe müssen Sie diese Einstellung vornehmen; es sollte kein einziger Benutzer übrig bleiben, der nicht Mitglied der Gruppe ist.

  1. Im dritten Schritt müssen Sie „Counterparty Access Groups“ eintragen; hierfür ist das Verzeichnis „Counterparty Access Groups“ zuständig. Siehe Abb. 5.

Für unser Beispiel sind dies: Käufer, Lieferanten, Sonstiges. Siehe Abb. 6.

  1. Zu diesem Zeitpunkt müssen Sie jedem Element des Verzeichnisses „Kontrahenten“ eine Zugriffsgruppe zuweisen. Siehe Abb. 7.

Auf der Registerkarte „Sonstige“ wird die Zugriffsgruppe für die Gegenpartei zugewiesen. Normalerweise verwende ich eine zusätzliche Standardverarbeitung, um Daten Gruppen zuzuordnen. „Gruppenverarbeitung von Verzeichnissen und Dokumenten“ ermöglicht es Ihnen, die gewünschte Gruppe für dieses Detail massiv festzulegen.

  1. Diese Phase ist die Höhepunktphase. In dieser Phase wird der Zugriff von „Benutzergruppen“ auf „Kontrahenten-Zugriffsgruppen“ konfiguriert; dies wird mithilfe der Verarbeitung „Zugriffsrechte auf Datensatzebene festlegen“ konfiguriert, siehe Abb. 8.

Das Verhältnis von Benutzergruppen zu Kontrahenten-Zugriffsgruppen ist rot hervorgehoben. Für die Gruppen „Einkaufsleiter“ und „Verkaufsleiter“ werden die Beziehungen genauso konfiguriert, lediglich die Zugriffsobjekte werden als diejenigen angegeben, auf die sie Zugriff haben sollen, zum Beispiel nur „Lieferanten“ oder nur „Einkäufer“. Flags, zum Beispiel „Sichtbarkeit in der Liste“, sind die Rechte des „Access Object“. Aus dem Namen geht meines Erachtens die Funktionalität dieser Rechte klar hervor.

Nach den oben genannten Manipulationen sollten Sie nur noch eingeschränkten Zugriff auf das Verzeichnis „Kontrahenten“ haben.

Die restlichen Verzeichnisse sind ähnlich konfiguriert.

Wichtig:

Der eingeschränkte Zugriff gilt nicht für die Rolle „Volle Rechte“.

Der Satz Benutzerrollen muss die Rolle „Benutzer“ enthalten;

Wenn Sie über eigene Rollen verfügen, müssen Sie Vorlagen und Einschränkungen in Ihre Rolle einfügen, z. B. in der Rolle „Benutzer“ in Bezug auf das Verzeichnis „Gegenparteien“ (siehe Code in der Benutzerrolle, indem Sie auf das Verzeichnis „Gegenparteien“ klicken).

1C verfügt über ein integriertes System von Zugriffsrechten (dieses System wird als 1C-Rollen bezeichnet). Dieses System ist statisch – da der Administrator 1C-Rechte zugewiesen hat, wird es so sein.

Darüber hinaus gibt es ein dynamisches Zugriffsrechtesystem (RLS 1C genannt). Darin werden 1C-Rechte dynamisch berechnet, während der Benutzer basierend auf den angegebenen Parametern arbeitet.

Eine der häufigsten Sicherheitseinstellungen in verschiedenen Programmen ist die Festlegung von Lese-/Schreibberechtigungen für Benutzergruppen und die anschließende Aufnahme bzw. der Ausschluss eines Benutzers aus Gruppen. Ein ähnliches System wird beispielsweise in Windows AD (Active Directory) verwendet.

Ein solches Sicherheitssystem in 1C heißt 1C Roles. 1C-Rollen befinden sich in der Konfiguration im Zweig Allgemein/Rollen. 1C-Rollen fungieren als Gruppen, denen 1C-Rechte zugewiesen werden. Der Benutzer wird dann in diese Gruppe aufgenommen oder daraus ausgeschlossen.

Durch einen Doppelklick auf den Namen der 1C-Rolle öffnet sich der Rechteeditor für die 1C-Rolle. Auf der linken Seite befindet sich eine Liste von 1C-Objekten. Wählen Sie eine beliebige Option aus und auf der rechten Seite werden Optionen für Zugriffsrechte angezeigt (mindestens: Lesen, Hinzufügen, Ändern, Löschen).

Für den obersten Zweig (Name der aktuellen Konfiguration) werden 1C-Administratorrechte und Zugriff zum Starten verschiedener Optionen eingerichtet.

Alle 1C-Rechte sind in zwei Gruppen unterteilt – ein „einfaches“ Recht und dasselbe Recht mit dem Zusatz „interaktiv“. Was bedeutet das?

Wenn ein Benutzer ein Formular öffnet (z. B. Verarbeitung) und eine Schaltfläche darauf drückt, führt das Programm in der integrierten 1C-Sprache bestimmte Aktionen aus, beispielsweise das Löschen von Dokumenten. „Einfach“ 1C-Rechte sind dafür verantwortlich, diese Aktionen zuzulassen (programmgesteuert ausgeführt).

Wenn ein Benutzer ein Journal öffnet und beginnt, selbstständig etwas über die Tastatur zu tun (z. B. neue Dokumente einzugeben), handelt es sich um „interaktive“ 1C-Rechte.

Ein Benutzer kann Zugriff auf mehrere Rollen haben. In diesem Fall sind die Berechtigungen kumulativ.

Eine Aufschlüsselung der Möglichkeiten zum Festlegen von Zugriffsrechten mithilfe von Rollen – 1C-Objekt. Das heißt, Sie können den Zugriff auf das Verzeichnis entweder aktivieren oder deaktivieren. Man kann es nicht ein wenig einschalten.

Zu diesem Zweck gibt es eine Erweiterung des 1C-Rollensystems namens 1C RLS. Hierbei handelt es sich um ein dynamisches Zugriffsrechtesystem, mit dem Sie den Zugriff teilweise einschränken können. Der Benutzer sieht beispielsweise nur Dokumente für ein bestimmtes Lager und eine bestimmte Organisation und den Rest nicht.

Sorgfältig! Bei Verwendung des verwirrenden RLS 1C-Schemas können verschiedene Benutzer Fragen haben, wenn sie versuchen, denselben von verschiedenen Benutzern erstellten Bericht abzugleichen.

Sie nehmen ein bestimmtes Verzeichnis (z. B. Organisationen) und ein bestimmtes Recht (z. B. Lesen) in Anspruch. Sie erlauben das Lesen für die 1C-Rolle. Im Bereich „Datenzugriffsbeschränkung“ legen Sie den Abfragetext fest, der je nach Einstellung TRUE oder FALSE zurückgibt. Einstellungen werden normalerweise in einem Informationsregister gespeichert (z. B. im KoAccounting and User Access Rights Settings).

Diese Abfrage wird dynamisch (beim Versuch, das Lesen zu implementieren) für jeden Verzeichniseintrag ausgeführt. Daher wird der Benutzer die Datensätze, für die die Sicherheitsabfrage TRUE zurückgegeben hat, sehen, den Rest jedoch nicht.
1C-Rechte, die RLS 1C-Beschränkungen unterliegen, werden grau hervorgehoben.

Das Kopieren derselben RLS 1C-Einstellungen erfolgt mithilfe von Vorlagen. Sie erstellen eine Vorlage, nennen sie (zum Beispiel) MyTemplate und geben darin die Sicherheitsanforderung an. Geben Sie als Nächstes in den 1C-Zugriffsrechteeinstellungen den Namen der Vorlage wie folgt an: „#MyTemplate“.

Wenn ein Benutzer im 1C Enterprise-Modus arbeitet und RLS 1C ausführt, erhält er möglicherweise die Fehlermeldung „Unzureichende Rechte“ (z. B. zum Lesen des Xxxx-Verzeichnisses).

Das bedeutet, dass RLS 1C das Lesen mehrerer Datensätze blockiert hat.

Um das Erscheinen einer solchen Meldung zu verhindern, ist es notwendig, im Text der Anfrage das Wort ALLOWED() in der integrierten 1C-Sprache zu verwenden.

Zum Beispiel:

Die achte Version der 1C:Enterprise-Plattform (heute 8.3) brachte viele Änderungen gegenüber den „Sieben“ mit sich, unter denen der Mechanismus zur Einschränkung der Zugriffsrechte auf Datensatzebene besonders hervorzuheben ist. Auch wenn es theoretisch möglich ist, darauf zu verzichten und nur Rollen zu verwenden, ermöglicht RLS die Erzielung detaillierterer Zugriffseinstellungen. Um diesen Mechanismus jedoch richtig bedienen zu können, müssen Sie sein Wesen klar verstehen und über ausreichende Erfahrung in der Entwicklung in 1C verfügen.

Was ist RLS?

Der Kern dieser Funktionalität besteht darin, dass der Entwickler verhindern kann, dass ein bestimmter Benutzer oder eine bestimmte Benutzergruppe auf Tabellen oder Felder von Datenbanktabellen zugreift. In der Regel werden Einschränkungen verwendet, um 1C-Benutzer daran zu hindern, vertrauliche, geheime Informationen anzuzeigen und zu bearbeiten, indem beispielsweise die Mitarbeiter eines in einer Gruppe enthaltenen Unternehmens darauf beschränkt werden, Dokumente nur für ihre Organisation anzuzeigen. Außerdem kann der Mechanismus zur Einschränkung der Zugriffsrechte auf Datensatzebene genutzt werden, um unnötige Informationen von der Schnittstelle zu entfernen.

Um Abfragen für RLS-Einschränkungen schreiben zu können, müssen Sie eine Rolle erstellen oder eine vorhandene übernehmen. Das Einrichten von RLS in 1C 8.3 kann für die folgenden Benutzeraktionen verwendet werden:

  • Zusatz;
  • Lektüre;
  • Löschen;
  • Ändern.

Neben den umfassendsten Möglichkeiten zur individuellen Zugriffsanpassung hat RLS auch Nachteile:

  1. Anforderungen an die Qualifikation des Entwicklers, da die Anfrage unter Berücksichtigung der Syntaxregeln in einer integrierten Sprache verfasst sein muss;
  2. Mangelnde Fähigkeit, Bedingungen schnell zu debuggen;
  3. Begrenzte Möglichkeiten zur Beschreibung der Logik: Zu komplexe Bedingungen müssen weiterhin in Modulen von Dokumenten und Nachschlagewerken geschrieben werden;
  4. In der Client-Server-Version der Datenbank ist ein implizites Wachstum der in der Abfrage enthaltenen Tabellen möglich. Darüber hinaus ist es sehr schwierig, diesen Prozess zu verfolgen;
  5. Ressourcenbedarf. RLS-Einschränkungen verbrauchen viel Strom auf dem Client-Computer und dem Server.
  6. Es ist nur wenig Dokumentation frei verfügbar.

Ein weiteres Problem, das nach der Einrichtung von 1C RLS auftreten kann, können Berichte sein. Tatsache ist, dass Entwickler mögliche RLS-Einschränkungen berücksichtigen und Berichte so erstellen, dass sie nur zulässige Daten anzeigen. Wenn für Benutzer unterschiedliche RLS-Einschränkungen konfiguriert sind, können die Daten im Bericht für dieselben Parameter unterschiedlich sein. Dies kann Fragen aufwerfen. Daher müssen Sie diese Situationen berücksichtigen, wenn Sie Berichte entwerfen oder Abfragen in RLS schreiben.

Erstellen Sie eine RLS-Einschränkung

Um eine RLS-Einschränkung hinzuzufügen, müssen Sie die gewünschte Rolle finden und per Doppelklick öffnen.

Das sich öffnende Fenster enthält zwei Registerkarten: „Rechte“ und „Einschränkungsvorlagen“. Um einer bestimmten Aktion bestimmte Einschränkungen aufzuerlegen, müssen Sie diese auswählen und auf das grüne Pluszeichen unten rechts klicken. Es erscheint eine Zeile, in der wir 1C RLS-Einschränkungen in der in 1C integrierten Sprache festlegen können.


Wenn Sie die 1C-Syntax kennen (wie Ihre Westentasche), können Sie direkt in das Feld „Zugriffsbeschränkung“ schreiben. 1C-Entwickler haben die Möglichkeit bereitgestellt, einen Abfragekonstruktor zu öffnen, der hilft und Vorschläge macht, welche Einschränkungen vorgenommen werden können. Um es zu öffnen, müssen Sie auf die Schaltfläche mit den drei Punkten (Auswählen) oder F4 klicken und es erscheint ein Fenster mit der Schaltfläche „Query Designer...“.


Im erscheinenden Fenster können Sie Einschränkungen nicht nur für dieses Verzeichnis, sondern auch für andere Systemobjekte konfigurieren. Dazu müssen Sie diese auf der Registerkarte „Tabellen und Felder“ hinzufügen. Wir registrieren Einschränkungen für die Felder des Verzeichnisses „Nomenklatur“ und klicken auf „OK“. Seien Sie vorsichtig mit den Namen der Variablen: RLS-Parameter werden zu Beginn der Benutzersitzung festgelegt und müssen im Metadatenobjekt enthalten sein.


Auf der Registerkarte „Einschränkungsvorlagen“ legen Sie Abfragen fest, die beim Kopieren derselben RLS-Einstellungen in 1C 8.3 erforderlich sind. Nachdem Sie Ihre Vorlage hinzugefügt haben, können Sie deren Namen in den Zugriffsrechteeinstellungen verwenden.

Es ist auch möglich, Einschränkungen für mehrere Rollen gleichzeitig hinzuzufügen. Dazu müssen Sie im Konfigurationsbaum mit der rechten Maustaste auf den Abschnitt „Rollen“ klicken und „Alle Rollen“ auswählen.


Abschließend möchte ich anmerken, dass sich dieser Artikel an 1C-Beraterentwickler richtet und vor allem denjenigen helfen kann, die bereits Erfahrung in der Entwicklung auf 1C:Enterprise haben. Trotz ihrer scheinbaren Einfachheit erfordern Kenntnisse der Semantik und das Verständnis der Struktur von Geschäftsprozessen des eigenen Unternehmens oder der Organisation eines Kunden für die korrekte Verteilung von Rechten ein gewisses Maß an Wissen und Erfahrung.



Aktie