Berechtigungslimits für Benutzer (The Limits to Growth)

Berechtigungslimits für Benutzer (The Limits to Growth)

Kennen Sie noch den Besteller aus dem Jahre 1972, „Grenzen des Wachstums“ vom Club of Rome, wo man mit Simulationsprogrammen das Ende des andauernden Wachstums berechnete? Ich kann nicht sagen, ob die Grenze des Wachstums bei der Zuordnung von Berechtigungsprofilen zu Benutzern mit diesem Bericht des Club of Rome irgendwas zu tun hat, doch sie besteht die Grenze!

Sie können einem Benutzer nur maximal 311 Profile zuordnen! Das hängt mit der maximalen Tabellenlänge in der Datenbank zusammen.

Wie Sie sicherlich wissen, werden die Profile des Benutzers in der Tabelle USR04 gespeichert. Diese Tabelle hat neben dem Schlüssel und einigen Feldern ein sog. „varchar“-Feld, also ein Feld variabler Länge, in das die Profile des Benutzers eingeschrieben werden. Da die Feldlänge begrenzt ist, ergeben sich eben nur 311 Profile für die Zuordnung.

Intern wird mit einem BAPI gearbeitet, den Sie ebenfalls für die Massenzuordnung von Berechtigungen nutzen können. Leider ist die Fehlermeldung bei der Überschreitung der Grenze nicht unbedingt offensichtlich geraten. Es werden nur die 311 Profile zugeordnet und dann ein Rückkehrcode gesetzt, der je nach Programm eine richtige oder weniger zielführende Fehlermeldung erwirkt.

Falls der BAPI bei Ihnen mit einer Meldung aussteigt, so können Sie leicht überprüfen, ob Sie das Limit erreicht haben, in dem Sie für den Benutzer und der SE16 einen Zugriff auf die Tabelle UST04 tätigen. Sie geben nur die Benutzerkennung an (BNAME) und drücken dann auf den Button „Anzahl anzeigen“. Sie erhalten die Anzahl der dem Benutzer zugeordneten Profile, diese bleibt ggf. bei 311 stehen.

Die Tabelle UST04 ist in etwa ein Abbild der USR04 nur dass die Tabelle kein „varchar“-Feld besitzt. Hier werden pro Benutzer und Profil eine Tabellenzeile angezeigt. Die Tabelle könnte also größer als 311 Einträge / Benutzer werden. Der Kernel der Software richtet sich aber an der USR04 aus und wird an dieser Stelle wohl nicht mehr geändert.

Was aber tun, wenn die Grenze erreicht ist?

Oftmals werden Benutzern für jeden Buchungskreis, den er sehen und/oder bearbeiten darf, jeweils eine Rolle zugeordnet. Das erhöht die Anzahl der Profile enorm, da es ja pro Buchungskreis die unterschiedlichen Rollen geben kann.

In einem solchen Fall, können Sie sich überlegen, eine Rolle für mehrere Buchungskreise anzulegen. Dies müssen Sie natürlich im Rollennamen irgendwie kenntlich machen.
Mein Trick: Ich vergebe dann oft Abkürzungen wie DE00 für bspw. alle deutschen Buchungskreise, DE01 für eine Anzahl von Buchungskreise, die ich in einer Excel-Tabelle abgelegt habe usw. Falls der Benutzer jetzt die Buchungskreise x,y,z benötigt, schaue ich in dieser Excel-Tabelle nach, ob ich für diese Konstellation schon eine Abkürzung habe, wenn nein definiere ich eine neue, oder ich vergebe die Rolle mit der Abkürzung.

Somit gelingt es – egal wie fein – das 311-er Limit zu umschiffen.

[Diese Information mit der UST04 habe ich auch in die FAQ’s gestellt, damit man sie schnell nachschauen kann! Man kann sich ja nicht alles merken, muss nur wissen wo’s steht 🙂 ]

Also achten Sie auf die Limits of Growth, wenn es doch auf anderen Gebieten auch so einfach wäre 🙁

Haben Sie eine andere Verfahrensweise bei der Umschiffung dieser Grenze, so würde nicht nur ich sondern auch alle anderen sich freuen, wenn Sie Ihren Trick als Kommentar hinterlassen würden.

Viele Grüße
Bernd Klüppelberg

P.S. Neuerdings (2014) hört man, dass an der 311-er Grenze gearbeitet wird, Sie soll irgendwann entfallen. Nur wann, das ist die Frage !

2 Responses to “Berechtigungslimits für Benutzer (The Limits to Growth)”

  1. Hallo Bernd,

    du hast den technischen Hintergrund der Problematik gut beschrieben, es gibt nur eine kleine Missdeutung deinerseits:
    Den Kernel interessiert die USR04 schon gar nicht mehr und die UST04 verwendet er ebenfalls nicht für die Berechtigungsprüfung.
    Einzig allein die Änderungsbelege (basierend auf der USR04 und der äquivalenten Historientabelle USH04) machen die USR04/USH04 noch erforderlich.

    viele Grüße,
    Holger

  2. Hallo Holger,
    danke für den Beitrag. Die Änderungsbelege hatte ich völlig vergessen.
    Gruß
    Bernd

Schreiben Sie bitte einen Kommentar





SAP Berechtigungen, -Konzepte, -Technik | System Beratung Bernd Klüppelberg