CVS 01.07: Frontenduser -Kategorien schützen geht nicht mehr

Gesperrt
Thoschi
Beiträge: 5
Registriert: Sa 2. Jul 2005, 15:20
Kontaktdaten:

CVS 01.07: Frontenduser -Kategorien schützen geht nicht mehr

Beitrag von Thoschi » Sa 2. Jul 2005, 15:28

Die Funktionalität Ordner zu schützen und nur mittels authentifiziertem Frontend-User Zugang zu gewähren geht leider nicht mehr.
Leider erhält man keine Fehlermeldung im errorlog. Nach dem Einloggen mittels dem Login-Modul (das geht) wird man leider auf die Fehlerseite zurückgeworfen, wenn man einen geschützten Bereich aufrufen möchte.
In der 4.5.2-alpha ging das noch.
Ich habe Neuinstallation als auch Upgrade versucht, aber ohne Erfolg.
Hat jemand einen Tipp, wie man das Problem beheben könnte?

Grüße, Thoschi

ach ja, Snapshot vom 24.06. und 01.07. getestet

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

Beitrag von emergence » Sa 2. Jul 2005, 16:59

jetzt seh ich das erst...

da hat sich die funktionsweise geändert
die authentifizierung sollte nun via Contenido Extension Chainer gemacht werden...
*** make your own tools (wishlist :: thx)

Thoschi
Beiträge: 5
Registriert: Sa 2. Jul 2005, 15:20
Kontaktdaten:

Beitrag von Thoschi » Sa 2. Jul 2005, 17:33

emergence hat geschrieben:jetzt seh ich das erst...

da hat sich die funktionsweise geändert
die authentifizierung sollte nun via Contenido Extension Chainer gemacht werden...
Aha, und wie geht das? Irgendwo ein Beispiel oder in welchem File muss ich nachschauen, um dahinter zu kommen?

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

Beitrag von emergence » Sa 2. Jul 2005, 17:39

fast die gesamte info die ich kenne findet sich hier:
-> docs\techref\frontend\frontend.protectedcategories.html

es steht zwar was davon drinnen das man sich ein plugin runterladen soll, aber wo sich das befindet ??
*** make your own tools (wishlist :: thx)

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

Beitrag von timo » Sa 2. Jul 2005, 18:36

ist leider noch nicht veröffentlicht, aber wenn mich jemand am Montag im Thread oder per PM daran erinnert, stelle ich das noch hoch

Thoschi
Beiträge: 5
Registriert: Sa 2. Jul 2005, 15:20
Kontaktdaten:

Beitrag von Thoschi » Sa 2. Jul 2005, 22:51

Keine Frage, ich werde Dich am Montag nochmal erinnern :-)


Thoschi
Beiträge: 5
Registriert: Sa 2. Jul 2005, 15:20
Kontaktdaten:

Beitrag von Thoschi » Mo 4. Jul 2005, 15:36

So, ich habe das Plugin heruntergeladen und installiert, aber ich komme nicht dahinter, wie ich das jetzt in meinem Login-Modul verwenden kann.
Die techref unter docs ist da auch keine wirkliche Hilfe.
Hast Du vielleicht ein Beispiel wie ich nun wieder meine geschützte Kategorie anzeigen lassen kann?

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

Beitrag von timo » Mo 4. Jul 2005, 15:56

na du mußt eine Fallunterscheidung machen. Was früher $perm->have_perm(blabla) war, ist heute eben

Code: Alles auswählen

$myPermissionCheck = new FrontendPermissionCollection;
var_dump( $myPermissionCheck->checkPerm(2, "object", "permissionname", "itemid"));
Wenn dir das nicht weiterhilft, erläutere mal konkret und einfach verständlich, wo es hakt.

halousi
Beiträge: 111
Registriert: Mi 30. Mär 2005, 15:31
Kontaktdaten:

Beitrag von halousi » Mi 6. Jul 2005, 12:22

hallo, habe das selbe problem. wo muss ich denn das Plugin für die Frontendkategorie-Berechtigungen einbauen? viele grüße halousi

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

Beitrag von HerrB » Mi 6. Jul 2005, 12:38

Ich habe es nicht ausprobiert und eine Komplettlösung habe ich auch (noch) nicht, aber die notwendigen Informationen stehen in docs\techref\frontend\frontend.protectedcategories.html
des Contenido-Pakets.

Entweder dort oder in der Plugin-Datei steht auch, wo bzw. wie das zu installieren ist.

Zur Überprüfung, ob eine Kategorie angezeigt werden soll oder nicht, muss man die Kategorie entsprechend berechtigen (frage mich jetzt nicht wo, ich denke unter Administration -> Frontend) und im Navi-Modul eine entsprechende Überprüfung integrieren (e.g. "zeige Eintrag nur, wenn $myPermissionCheck->checkPerm(2, "object", "permissionname", "itemid")); = true", dabei muss natürlich object, permissionname und itemid entsprechend den notwendigen Angaben (siehe Dokument von oben, vielleicht steht es da drin), berechtigt werden.

Weiter kann ich Dir gerade nicht helfen.

Wenn Du es hast, kannst Du ja mal eine Anleitung posten.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » Fr 12. Aug 2005, 18:04

Hallo,

ich habe das selbe Problem mit der 4.5.3.
Momentan nutze ich zum Testen einen ca 5 Wochen alten Snapshot, kann jetzt aber nicht gnau sagen welchen.

In der Anleitung steht:
Installation and configuration

Download the plugin "Frontend Category Permissions" from the Contenido website. Extract the archive to your plugins directory. Open (or create) the file config.plugin.php in the directory contenido/plugins/chains/includes/ and add the necessary includes and chain entries (see below). Afterwards, open the file config.local.php in your contenido/includes directory (create the file if it doesn't exist) and add the following line at the end:

Code: Alles auswählen

$cfg['plugins']['frontendlogic'][] = "category";
Example config.plugin.php:

<?php
global $_cecRegistry;
cInclude("plugins", "chains/includes/include.chain.frontend.cat_backendaccess.php");
cInclude("plugins", "chains/includes/include.chain.frontend.cat_access.php");

$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess");
$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess_Backend");
?>

The chain Contenido.Frontend.CategoryAccess is called everytime a protected category is accessed. If the chain functions return true, access is granted. The function cecFrontendCategoryAccess validates frontend users and their permissions, and cecFrontendCategoryAccess_Backend does the same for the backend user counterparts. If you wish to disable backend users for access frontend categories, remove the line which contains cecFrontendCategoryAccess_Backend. You can also define chains for more custom checks, please refer to the chains documentation for more information.
Ich habe also beide Ordner frontendlogic und chains in den Ordner contenido/plugins kopiert. Dann habe ich unter contenido/plugins/chains/includes/ eine Datei namens config.plugin.php erstellt, da noch keine vorhanden war, und folgenden code eingefügt:

Code: Alles auswählen

<?php
          $cfg['plugins']['frontendlogic'][] = "category";
?>
Bei mir gab es keine Datei config.local.php im Verzeichnis contenido/includes, also habe ich diese auch neu erstellt und dann folgenden Code eingetragen:

Code: Alles auswählen

<?php
global $_cecRegistry;
cInclude("plugins", "chains/includes/include.chain.frontend.cat_backendaccess.php");
cInclude("plugins", "chains/includes/include.chain.frontend.cat_access.php");

$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess");
$_cecRegistry->addChainFunction("Contenido.Frontend.CategoryAccess", "cecFrontendCategoryAccess_Backend");
?>
Im Backend befindet sich dadurch nichts neues.
Der Benutzer wurde über Admin=>Frontcontentuser angelegt und man konnte dort nirgends Seiten oder so zuordnen. Nur Benutzer und Benutzergruppen anlegen.
Danach bin ich auf eine Kategorie gegangen und habe diese geschützt. Dort konnte man ebenfalls keine Einstellungen, wie zum Beispiel wer alles zugreifen darf, machen.
Sobald ich nun nicht als Frontenduser eingeloggt bin kommt bei den geschützten Seiten das extra loginfenster.
Dort kann ich mich aber nicht mit den Frontenduserdaten sondern nur mit den Backenduserdaten anmelden.
Nach der Anmeldung kommt dann zwar eine Seite, aber nur die Errorseite die auch komm wenn ma zum beispiel keinen Artikel in der Kategorie hat.
Log ich mich über das Login auf der Webseite (Modul Login) ein, komm ich mit meinen Frontenduserdaten hinein und es steht dann auch das ich eingeloggt bin.
Geh ich dann auf die geschütze Seite kommt direkt wieder diese Errorseite wie oben beschrieben.
Wenn ich den schutz entferne wird die Seite ganz normal angezeigt.

Müssen die Dateien des Plugins noch irgendwo anders eingebunden werden? Ich musste sie ja neu erstellen da sie nicht vorhanden waren.

thx und gruß yodatortenboxer

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

Beitrag von timo » So 14. Aug 2005, 20:04

die Zuweisung geschieht über Frontendgruppen. Eine Zuweisung zu einzelnen Benutzern ist nicht vorgesehen.

yodatortenboxer
Beiträge: 424
Registriert: Do 22. Jan 2004, 14:45
Wohnort: Kölpinsee auf Usedom
Kontaktdaten:

Beitrag von yodatortenboxer » So 14. Aug 2005, 21:57

ok und danke.
Ich habe es eben gefunden :-)

Gesperrt