2010-12-23 5 views
2

Gibt es eine Möglichkeit, den Zugriff auf ein bestimmtes Feld auf einem Objekt in Sitecore einzuschränken? Wir haben ein Setup, bei dem ein anonymer, nicht authentifizierter Benutzer ein Feld ("FreeContent") lesen darf und jeder authentifizierte Benutzer sollte ein anderes Feld ("FullContent") sehen. Das Setzen von Field Read/Item Lesen zum Verweigern im Template-Editor funktioniert nicht, ich schätze, weil die Sicherheit dann auf diesen Teil ("das Feld") der Vorlage und nicht auf den Inhalt selbst angewendet wird.Sitecore-Extranet und Feldzugriffsrechte

Wir könnten natürlich überprüfen, ob der Benutzer authentifiziert und stellen Sie die Eigenschaft Field der Steuerung „FreeContent“ aber wir würden wirklich in der Lage sein mögen von Sitecores, welche Felder offen zu steuern sind für alle und dem sind nicht.

Ist es überhaupt möglich, oder muss ich das selbst implementieren?

Antwort

1

Sie haben es richtig gemacht - Feld lesen/schreiben Einstellungen auf der Datenvorlage ist, wie Sie den Zugriff auf bestimmte Felder in Elementen festlegen.

See p14.

Möglicherweise müssen Sie die Website und klaren Caches usw.

Andernfalls mit dem Zugriffs Betrachter überprüfen veröffentlichen, um sicherzustellen, dass Ihre verschiedenen Rollen richtigen Zugriff haben.

+0

Ok, so dass der Feldlesezugriff durch die Datenvorlage verweigert wird, genau wie ich dachte, dies verhindert jedoch nicht, dass der Extranet (extranet \ Anonymous) das Feld liest. Die CanRead-Eigenschaft ist False, wenn sie überprüft wird, aber das sc: text-Steuerelement ermöglicht, dass das Feld für den Client gerendert wird. Warum? – andreasordell

+0

Haben Sie den Zugriff auf das Feld read explizit in der Vorlage für das Extranet/anonyme Konto verweigert? Ich hatte den Eindruck, dass die SiteCore-Feldsteuerungen vollständig in das Sicherheitsmodell integriert waren, aber ich lese nicht, dass dies irgendwo als sicher gilt. Ich nehme an, es ist auch möglich, dass es ein Versions-Bug für die Version ist, die Sie haben .... –