Contenido 4.4 - Keine Berechtigung mit sysadmin, admin

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Contenido 4.4 - Keine Berechtigung mit sysadmin, admin

Beitrag von emergence » Mi 22. Okt 2003, 18:18

here we go... thx für die credits

mit neuer version 4.4 clean install - wamp
ganz begierig mir die neuen funktionen zu geben, bin ich gleich mal auf ein kleines problem gestossen:

1. und zwar sobald man versucht unter administration - benutzer in einen anderen menüpunkt als eigenschaften zu wechseln erscheint die nette meldung:
Der aktuelle Benutzer hat keine Zugriffsrechte auf irgendeine(n) Sprache bzw Mandant
kommt bei bereiche, layout, content, module, template, kategorie

weiters - es werden keine gruppen angezeigt bei admin
anlegen scheint zwar möglich bringt jedoch nichts weiteres... keine auflistung etc. keine konfigurationsmöglichkeiten. hmm...

bei sysadmin werden die gruppen angezeigt - man kommt auch bis mitglieder aber dann das gleiche wie oben -
Der aktuelle Benutzer hat keine Zugriffsrechte auf irgendeine(n) Sprache bzw Mandant

2. oder nächster punkt vielleicht bin ich ja der einzige, aber ich erhalte schon wieder jede menge javascript fehler...
welche ich wieder nur durch entfernen folgenden teils aus den contenido/scripts/*.js.php dateien wegbekomme.

Code: Alles auswählen

page_open(array('sess' => 'Contenido_Session',
                'auth' => 'Contenido_Challenge_Crypt_Auth',
                'perm' => 'Contenido_Perm'));
ne interessante frage stellt sich mir da, entweder kann ich meine eigene serverumgebung nicht konfigurieren (opensa.org) oder da spielt was anderes mit rein was mir noch nirgendwo anders aufgefallen, oder passiert ist. egal...

damit ist, bei mir die hauptvorarbeit geleistet, dass das system mal flüssig ohne javascript fehlermeldung läuft.

der zweite punkt interessiert mich eigentlich momentan am meisten, den auf normalen server umgebungen bei providern (LAMP) hatte ich das problem mit diesem scriptteil noch nie...

weiteres folgt...

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Re: Contenido 4.4 - Keine Berechtigung mit sysadmin, admin

Beitrag von timo » Mi 22. Okt 2003, 18:31

emergence hat geschrieben: 1. und zwar sobald man versucht unter administration - benutzer in einen anderen menüpunkt als eigenschaften zu wechseln erscheint die nette meldung:
Der aktuelle Benutzer hat keine Zugriffsrechte auf irgendeine(n) Sprache bzw Mandant
kommt bei bereiche, layout, content, module, template, kategorie
Ist von der Logik her richtig - der Admin hat sowieso Rechte darauf. Lediglich die Meldung ist ein wenig Irreführend :)
weiters - es werden keine gruppen angezeigt bei admin
anlegen scheint zwar möglich bringt jedoch nichts weiteres... keine auflistung etc. keine konfigurationsmöglichkeiten. hmm...
Werde ich morgen mal checken
bei sysadmin werden die gruppen angezeigt - man kommt auch bis mitglieder aber dann das gleiche wie oben -
Der aktuelle Benutzer hat keine Zugriffsrechte auf irgendeine(n) Sprache bzw Mandant
Man muß der Gruppe zumindest einen Client und einen Mandanten geben, damit es läuft.
2. oder nächster punkt vielleicht bin ich ja der einzige, aber ich erhalte schon wieder jede menge javascript fehler...
welche ich wieder nur durch entfernen folgenden teils aus den contenido/scripts/*.js.php dateien wegbekomme.
Ist auch sehr seltsam - bei uns läuft das alles tadellos (auf grob geschätzt 12-15 Systemen und min. 5 verschiedenen Servern). Wie schaut da die Serverkonfiguration aus?

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Contenido 4.4 - Keine Berechtigung mit sysadmin, admin

Beitrag von emergence » Mi 22. Okt 2003, 18:48

timo hat geschrieben: ad. 1
Ist von der Logik her richtig - der Admin hat sowieso Rechte darauf. Lediglich die Meldung ist ein wenig Irreführend :)
klingt logisch, wenn so ist, is es okay, aber ne tolle fehlermeldung
Man muß der Gruppe zumindest einen Client und einen Mandanten geben, damit es läuft.
okay, läuft wenn zuordnung gemacht wurde
Ist auch sehr seltsam - bei uns läuft das alles tadellos (auf grob geschätzt 12-15 Systemen und min. 5 verschiedenen Servern). Wie schaut da die Serverkonfiguration aus?
system mit contenido 4.4:
OpenSA/1.0.4 / Apache/1.3.27 (Win32) PHP/4.2.2 mod_gzip/1.3.19.1a DAV/1.0.3 running...
MySQL 3.23.47
WinME (so pervers wie es kling)

httpd.conf schick ich dir...
Zuletzt geändert von emergence am Mo 3. Nov 2003, 15:08, insgesamt 1-mal geändert.

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 24. Okt 2003, 16:23

ähm ja..
hab mir das jetzt mal im vergleich zur version 4.3.2.1b angeschaut...

die funktionsweise find ich bei der alten version doch logischer...

als sysadmin sollte man auf jedenfall alle bereiche durchsehen können ohne das man zusätzlich rechte für mandanten oder bereiche vergeben muss. an sich sehe ich es ein, dass ein ändern nicht notwendig ist, da man sowieso alle rechte hat. (zugriff verweigert wie oben erwähnt ist trotzdem ein blödsinn)

aber nur als beispiel ein user möchte eine bestimmte berechtigung für einen bereich -> müsste ich bei seinem user oder gruppe nachsehen ob mir das recht ist oder nicht ?
ich schau da immer beim admin oder sysadmin user nach, welche berechtigungen gibts und überlegt mir dann ob ich sie ihm gebe...

nur so als vorschlag -
sysadmin sollte auf alle fälle alles durchsehen können (zum testen auch wichtig)
admin von mir aus mit einer leicht abgewandelten meldung - (abgesehen davon habe ich bis jetzt noch nie wirklich lust gehabt einem admin die jetzig vorgesehen rechte, die das system vorgibt, wirklich zu geben. der kunde kann mir dabei viel zu viel kaputt machen.)

ideal wäre es wenn der admin user seine berechtigungen nicht ändern könnte. aber weitere subuser oder gruppen aufgrund seiner berechtigungen einstellen könnte.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Fr 24. Okt 2003, 18:11

Ich würde es schlicht und ergreifend (auch) für einen Bug halten:

Es scheint so, dass man als sysadmin auf alle Bereiche des Benutzers Zugriff erhält, wenn der Nutzer mindestens Zugriff auf einen Mandanten und eine (ich nehme an, die aktuelle) Sprache hat.

Wir haben x+1 Nutzer. x Nutzer verfügen unter Administration -> Eigenschaften bei "Zugriff auf Mandanten" und "Zugriff auf Sprache" über keine Rechte (kein Kästchen markiert). Bei diesen Nutzern ist ein Zugriff auf die restlichen Bereiche nicht möglich. Sie erhalten übrigens alle die Berechtigung zum Zugriff über eine Gruppe.

Nur der eine Nutzer verfügt sowohl über die Gruppenzuordnung als auch über einen Mandanten und eine Sprache - da kann man die restlichen Bereiche einsehen.

Nur bei sysadmins und admins macht es Sinn, dass sie die restlichen Bereiche nur lesen können - mit einer anderen Fehlermeldung.

Wenn das so gewollt ist, könnte man ja bei Nutzern, die Mitglied einer Gruppe sind, die Bereiche unzugänglich machen (um parallele Berechtigungen zu vermeiden) - aber bitte mit einer anderen Fehlermeldung ("Nutzer ist Mitglied einer oder mehrerer Gruppen, Einzelberechtigung nicht möglich"). Oder die aus der Gruppenzuordnung resultierende Berechtigung ohne Änderungsmöglichkeit anzeigen?

Welche Berechtigungen ziehen eigentlich, wenn man sowohl über Gruppe als auch über Administration -> Benutzer Rechte vergibt? Und welche, wenn ein Benutzer Mitglied in mehreren Gruppen ist?

Gruß
HerrB

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

nachtrag...

Beitrag von emergence » Mo 3. Nov 2003, 14:59

ähm ja hab wieder was nettes gefunden.

wenn der admin einen user anlegt und ihm keine berechtigungen bei mandant, sprache gibt kann er ihn nicht mehr editieren. (sehen kann ihn dann nur mehr der sysadmin)

ähm ja genau, wenn man beim sysadmin eine berechtigung für mandant und sprache gibt kann man die bereiche sehr wohl durchsehen (somit sind wir wieder beim unlogischen teil ergo der sysadmin sollte alles sehen können)

zusätzlich der admin sollte den sysadmin nicht sehen können. (würde ich begrüssen) und keinesfalls !! sollte es möglich sein dass der admin das passwort des sysadmin ändern kann !! (was leider geht) und noch viel besser -> sollte das passwort seitens admin wirklich geändert worden sein, sind alle berechtigungen beim sysadmin weg !! (yes sir) auf gut deutsch der admin kann dem sysadmin alle berechtigungen nehmen.
und das ist wirklich ein massiver bug !

mein workaround für dieses problem ist ne neuinstallation der db. (jawohl)

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Fr 7. Nov 2003, 09:54

eventuell ist hier eine Erklärung auf technischer Seite notwendig:

- Ein Admin sieht alle Benutzer, die auf denselben Client zugriff haben wie der Admin. D.h. ein Admin für Client 1 sieht nur alle Benutzer, die Client 1 zugeordnet sind (auch wenn der Benutzer SysAdmin-Flag hat - auf der Standardinstallation ist der User nur Sysadmin und daher auch nicht vom Admin editierbar).

- Individuelle Berechtigungen sind nur editierbar, wenn es eine gültige Kombination von Client und Sprache gibt. Dies ist stringent sowohl für den Sysadmin als auch für alle anderen User.

Vorschläge:

Wenn "admin" angekreuzt ist, wird alles ganz normal angezeigt, sofern auf einer Unterseite eine Kombination von Sprache und Client gewählt wird, für die der Admin nicht-admin ist (Beispiel: Ich bin Admin für Mandant 1, wähle aber bei Kategorien Mandant 2 - Sprache XY aus -> darf also editieren). Wenn dies nicht so ist, wird eine Meldung ausgegeben, daß man admin ist und keine zusätzlichen Rechte vergeben darf, da man sowieso schon admin ist.

Wenn "sysadmin" angekreuzt ist, wird überall eine Meldung angezeigt, daß man sowieso schon alle Rechte hat.

Eine Mehrfachauswahl von Admin, Sysadmin bzw Client/Sprache ist nicht möglich -> Wenn Sysadmin angekreuzt ist, werden "admin" und sämtliche Sprach/Client-Kombinationen ausgeblendet. Dasselbe für "Admin".

Wenn der Admin einen Mandanten anlegt, werden dem User per default Berechtigungen auf die Sprache und den Mandant gegeben.


Weitere Ideen?

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 7. Nov 2003, 10:28

okay...
ist 'ne möglichkeit mit der ich leben könnte, aber ich würde ne meldung einblenden bearbeiten nicht nötig, alle berechtigungen vorhanden und dennoch alles anzeigen
Naja, andersrum ist es ja nicht logisch für den User. Wenn der Sysadmin alle Rechte hat, sollte ja auf keinen Fall eine Checkbox angezeigt werden (sonst meckern die User, daß ihre Änderungen keine Auswirkungen haben), und nichts anzeigen ist auch nicht so gut, denn dann fragen die User, wo denn ihre Checkboxen hin sind.

- grmbl, sorry emergence, hab ausversehen auf "edit" statt auf "reply" geklickt. ich werd alt! :( ) -

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 7. Nov 2003, 10:35

noch ne kleinigkeit

sagen wir mal ich lege als sysadmin einen neuen adminuser für kunde (1) an... wenn ich dort keine sprache mit auswähle kann der admin zwar ne neue gruppe anlegen, jedoch nicht konfigurieren da sprache nicht auswählbar ist !

so beabsichtigt oder ein bug ?

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Fr 7. Nov 2003, 11:13

muß ich mal nachsehen.

nochmal sorry, daß ich deinen Post editiert habe - "edit" und "reply" liegen IMHO viel zu dicht beieinander :(

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Fr 7. Nov 2003, 12:49

timo hat geschrieben:muß ich mal nachsehen.
bin ja schon richtig auf den heutigen snapshot gespannt ;-)

na ja werd ich mir erst morgen ansehen... ich sag nur eins
MATRIX REVOLUTIONS
schönes wochenende...

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Fr 7. Nov 2003, 12:59

emergence hat geschrieben: bin ja schon richtig auf den heutigen snapshot gespannt ;-)
Gut, daß du mich darauf ansprichst - ich muß alles noch in den HEAD mergen.
na ja werd ich mir erst morgen ansehen... ich sag nur eins
MATRIX REVOLUTIONS
schönes wochenende...
Berichte dann, wie er war :)

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Sa 8. Nov 2003, 14:40

der film war wirklich bei weitem besser wie der 2 teil -> sehenswert

wie auch immer...

hab gerade den snapshot 2003-11-07 durchgesehen...
hmm...
anmerkung zu:
contenido/includes/functions.con.php - function conEditFirstTime

Code: Alles auswählen

-                    author          = '".$author."',
ich würd bei der erstmaligen erstellung des artikel diese zeile nicht rauskatapultieren... (sonst wird er ja nicht eingetragen, oder ?)

conlib/local.php
nachdem einfügen von folgendem code

Code: Alles auswählen

+		if (in_array($pass, $auth_handlers))
+		{
+			$success = call_user_func($pass, $username, $password);
+			
+			if ($success)
+			{
+				$uid = md5($username);
+    			$pass = md5($password);
+			}
+		}
erhält man beim einloggen von contenido die meldung im errorlog.txt
PHP Warning: Wrong datatype for second argument in call to in_array in e:\contenido_4.4.x\conlib\local.php on line 392

ansonsten funktionierts wirklich toll
sauber...

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Mo 10. Nov 2003, 11:20

emergence hat geschrieben: contenido/includes/functions.con.php - function conEditFirstTime

Code: Alles auswählen

-                    author          = '".$author."',
ich würd bei der erstmaligen erstellung des artikel diese zeile nicht rauskatapultieren... (sonst wird er ja nicht eingetragen, oder ?)
Doch - falls wir dieselbe Stelle meinen (Zeile ~264): Da das ein Update-Statement ist, kann man fast sicher davon ausgehen, daß der Autor schon beim "insert" geschrieben wurde.
erhält man beim einloggen von contenido die meldung im errorlog.txt
PHP Warning: Wrong datatype for second argument in call to in_array in e:\contenido_4.4.x\conlib\local.php on line 392
Ja, das bekannte in_array-Problem: Ich muß mir irgendwann einen Wrapper bauen, der is_array und in_array kombiniert. Denn jedesmal muß man erst prüfen, ob das Konstrukt auch wirklich ein Array ist :)

Grüße,
Timo

emergence
Beiträge: 10641
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence » Mo 10. Nov 2003, 12:16

timo hat geschrieben:Doch - falls wir dieselbe Stelle meinen (Zeile ~264): Da das ein Update-Statement ist, kann man fast sicher davon ausgehen, daß der Autor schon beim "insert" geschrieben wurde.
ähm nein...
scheinbar nicht, wenn diese zeile entfernt wird bleibt author leer...
sieht man sofort beim artikel erstellen ! (ich habs mir ein paar mal angesehen...)

noch was der fix für artikel - konfiguration - abbrechen geht jetzt zwar dort
aber dafür geht funkts nicht bei kategorie - übersicht - kategorie konfigurieren.

Gesperrt