Konfigurationsdaten zur dynamischen Ermittlung eines Systembenutzers
Bei den dynamischen Authentifizierungsmodulen wird nicht der an einer Person direkt eingetragene Systembenutzer zur Anmeldung genutzt, sondern der anzuwendende Systembenutzer über spezielle Konfigurationsdaten der Benutzeroberfläche bestimmt.
Um Konfigurationsdaten festzulegen
-
Wählen Sie im Designer die Kategorie Basisdaten > Sicherheitseinstellungen > Anwendungen.
-
Wählen Sie die Anwendung und passen Sie die Konfigurationsdaten an.
Die Konfigurationsdaten erfassen Sie in XML-Syntax:
<DialogUserDetect>
<Usermappings>
<Usermapping
DialogUser = "Name des Systembenutzers"
Selection = "Auswahlkriterium"
/>
<Usermapping
DialogUser = "Name des Systembenutzers"
/>
...
</Usermappings>
</DialogUserDetect>
In der Sektion Usermappings geben Sie die Systembenutzer (DialogUser) an. Über ein Auswahlkriterium (Selection) legen Sie fest, welche Personen den angegebenen Systembenutzer verwenden sollen. Die Angabe eines Auswahlkriteriums für die Zuordnung ist nicht zwingend erforderlich. Es wird der Systembenutzer aus der ersten zutreffenden Zuordnung zur Anmeldung verwendet.
Für eine komplexe Berechtigungs- und Benutzeroberflächenstruktur können Sie eine Zuordnung von Funktionsgruppen zu Berechtigungsgruppen vornehmen. Über Funktionsgruppen bilden Sie die Funktionen der Personen in einem Unternehmen ab, beispielsweise IT Controller oder Niederlassungsleiter. Die Funktionsgruppen ordnen Sie den Berechtigungsgruppen zu. Eine Funktionsgruppe kann auf mehrere Berechtigungsgruppen verweisen und es können mehrere Funktionsgruppen auf eine Berechtigungsgruppe verweisen.
Ist die Sektion FunctionGroupMapping in den Konfigurationsdaten enthalten, so wird diese zuerst ausgewertet und der ermittelte Systembenutzer verwendet. Das Authentifizierungsmodul verwendet den Systembenutzer zur Anmeldung, der genau in den ermittelten Berechtigungsgruppen Mitglied ist. Wird so kein Systembenutzer ermittelt, wird die Sektion Usermapping ausgewertet.
<DialogUserDetect>
<FunctionGroupMapping
PersonToFunction = "View Mapping Person auf Funktionsgruppe"
FunctionToGroup = "View Mapping Funktionsgruppe auf Berechtigungsgruppe"
/>
<Usermappings>
<Usermapping
DialogUser = "Name des Systembenutzers"
Selection = "Auswahlkriterium"
/>
...
</Usermappings>
</DialogUserDetect>
Verwandte Themen
Beispiel für eine einfache Zuordnung zum Systembenutzer
In einem Webfrontend soll die Benutzeroberfläche für den IT Shop für alle Personen, ohne Berücksichtigung von Rechten auf Tabellen und Spalten angezeigt werden.
Dazu richten Sie eine neue Anwendung ein, beispielsweise WebShop_Customer_Prd, und passen die Konfigurationsdaten wie folgt an:
<DialogUserDetect>
<Usermappings>
</Usermappings>
</DialogUserDetect>
Legen Sie eine neue Berechtigungsgruppe WebShop_Customer_Grp an, welche die Benutzeroberfläche für die Anwendung, bestehend aus den Menüeinträgen, Oberflächenformularen und Methodendefinitionen, erhält. Die Benutzeroberfläche könnte aus den folgenden Menüeinträgen bestehen:
Definieren Sie einen neuen Systembenutzer dlg_all und nehmen Sie diesen in die Berechtigungsgruppen vi_DE-CentralPwd, vi_DE-ITShopOrder und WebShop_Customer_Grp auf.
Verwandte Themen
Beispiel für eine Zuordnung zum Systembenutzer mittels Auswahlkriterium
Das im vorhergehenden Beispiel beschriebene Szenario wird so erweitert, dass nur der Kostenstellenverantwortliche das Austrittsdatum eines Mitarbeiters sehen darf. Dazu erweitern Sie das Kontaktdatenformular um das Eingabefeld Austrittsdatum.
Die Steuerung der Sichtbarkeit und Bearbeitbarkeit erfolgt über die Berechtigungen. Richten Sie einen neuen Systembenutzer dlg_kst ein und nehmen Sie diesen in die Berechtigungsgruppen vi_DE-CentralPwd, vi_DE-ITShopOrder und WebShop_Customer_Grp auf. Dem Systembenutzer geben Sie zusätzlich die Sichtbarkeitsberechtigung und die Bearbeitungsberechtigung auf die Spalte Person.Exitdate.
Die Konfigurationsdaten der Anwendung erweitern Sie so, dass die Kostenstellenverantwortlichen den Systembenutzer dlg_kst zur Anmeldung verwenden. Alle anderen Personen nutzen den Systembenutzer dlg_all zur Anmeldung.
Die Konfigurationsdaten passen Sie wie folgt an:
<DialogUserDetect>
<Usermappings>
<Usermapping
DialogUser = "dlg_kst"
Selection = "select 1 where %uid% in (select uid_personhead from profitcenter)"
/>
<Usermapping
/>
</Usermappings>
</DialogUserDetect>
Verwandte Themen
Beispiel für eine Zuordnung über Funktionsgruppen
Für die Zuordnung von Funktionsgruppen zu Berechtigungsgruppen müssen Sie zwei Datenbanksichten definieren. Die erste Datenbanksicht liefert die Zuordnung der Personen zu Funktionsgruppen. Die Datenbanksicht enthält die zwei Spalten UID_Person und FunctionGroup.
Beispiel:
create view custom_Person2Fu as
select uid_personHead as UID_Person, 'Kostenstellenverantwortliche' as FunctionGroup
from Profitcenter
where isnull(uid_personHead, '') > ' '
union all
select uid_personHead, 'Abteilungsleiter' as FunctionGroup
from Department
where isnull(uid_personHead, '') > ' '
Die zweite Datenbanksicht nimmt die Zuordnung der Funktionsgruppen zu den Berechtigungsgruppen vor. Diese Datenbanksicht enthält die zwei Spalten FunctionGroup und DialogGroup.
Beispiel:
create view custom_Fu2D as
select 'Kostenstellenverantwortliche' as FunctionGroup, '<UID_Custom_Dialoggroup_ChefP>' as DialogGroup
union all select 'Abteilungsleiter', '<UID_Custom_Dialoggroup_ChefD>'as DialogGroup
Richten Sie rollenbasierte Berechtigungsgruppen mit den notwendigen Berechtigungen ein.
TIPP: Eine rollenbasierte Berechtigungsgruppe kann von nicht-rollenbasierten Berechtigungsgruppen erben. Somit können Sie eine Vererbungshierarchie aufbauen, um die Berechtigungen einfacher zu vergeben.
Die Konfigurationsdaten zur Zuordnung von Funktionsgruppen zu Berechtigungsgruppen passen Sie wie folgt an:
<DialogUserDetect>
<FunctionGroupMapping
PersonToFunction = "custom_Person2Fu"
FunctionToGroup = "custom_Fu2D"
/>
</DialogUserDetect>
Verwandte Themen