Search the FirstSpirit Knowledge Base
Hallo zusammen,
nach der Erstellung eines Scripts zum Zurücksetzen der URLs musste ich feststellen, dass dieses nicht von einem normalen User ausgeführt werden kann. Fehlermeldung:
Target exception: de.espirit.firstspirit.access.AccessSecurityException: Access denied to StoreElement 'URLProperties (ID=143372)' with permission 4! (de.espirit.firstspirit.store.access.globalstore.URLPropertiesImpl, id=143372)
Daraufhin habe ich die einzelnen Schritte in der Beanshell Console durchgeführt. Die Fehlermeldung wird beim Setzen des Locks auf den URLProperties geworfen.
Der User hat zum Testen alle Rechte auf den Vorlagen (inkl. Scripte) und der Struktur.
Die Fehlermeldung mit "permission 4" ist nicht hilfreich.
Welches Recht muss der Benutzer haben, damit er bei einem kontextbezogenen Script die URLs zurücksetzen kann?
Code:
[...]
urlProperties = context.getProject().getUserService().getStore(Type.GLOBALSTORE, false).getChildren(URLProperties.class).getFirst();
try {
urlProperties.setLock(true, false);
urlProperties.resetStoredUrls(context.getStoreElement());
} catch (Exception e) {
context.logError(e);
} finally {
urlProperties.setLock(false, false);
}
[...]
Vielen Dank
Philipp
Hallo Philipp,
Permission = 4 besagt das Recht zu ändern.
Viele Grüße
Marcel
Hallo Philipp,
Permission = 4 besagt das Recht zu ändern.
Viele Grüße
Marcel
Hallo Marcel,
danke. Das Recht zum Ändern hat die Gruppe auf dem gesamten Sitestore.
Damit der Lock auf den URLProperties gesetzt werden darf, muss die Gruppe vermutlich noch die Berechtigung für den Globalstore haben? Wie kann sie dort gesetzt werden?
Grüße
Philipp
Hallo Philipp,
um was für ein Element handelt es sich beim der ID 143372?
Handelt es sich evtl. hierbei um ein Folder?
Viele Grüße,
Marcel
Hi Marcel,
ich habe die Stelle jetzt gefunden: Für die genannte Gruppe fehlte die von dir genannte Berechtigung auf dem Knoten "URL-Einstellungen" unter "Globale Einstellungen".
Jetzt läuft das Script ohne Fehler durch.
Danke nochmal!
Grüße
Philipp