Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

cancel
Showing results for 
Search instead for 
Did you mean: 
hr61369256
Member II

Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Es gibt zwar in der Dokumentation diesen Link http://docs.alfresco.com/5.1/tasks/site-creation-permission.html, aber der ist auch keine wirkliche Hilfe, da er entweder nicht funktioniert, oder zu wenig Info dabei steht, wie und wo diese xml-Datei denn eingebunden wird. Wo muss ich diese Datei eintragen? Wie sieht diese Dateiverschachtelung eigentlich aus?

Hat das jemand schon erfolgreich umsetzen können? ... ich bezweifle das langsam.

6 Replies
afaust
Master

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Die Anleitung sagt eigentlich ganz klar, wo diese Datei abzulegen ist: Im "extension" Pfad, d.h. tomcat/shared/classes/alfresco/extension, wie auch andere Anpassungen der Konfiguration.

Das Share Site Creators Addon paketiert eine einfach zu nutzende Konstellation um die Erstellung von Sites nur bestimmten Nutzern per Gruppe zu gestatten, ohne dass diese Administratoren sein müssen.

hr61369256
Member II

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Vielen Dank für die Antwort. Das hatte ich als erstes auch probiert, doch bin ich mir nicht sicher, ob das wirklich alles ist, denn es hat nicht geklappt. Deshalb meine Vermutung, ob diese Extension ggf. noch irgendwo registriert werden muss. Bei meiner Recherche habe ich bislang niemand "getroffen" der diese Beschreibung erfolgreich umsetzen konnte. Ich würde das Erstellen von Sites erst mal nur Administratoren zusprechen. D.h. dieses Addon bräuchte ich erstmal nicht.

Also nochmal in Kürze die 4 Punkte zusammengefasst, wie's gehen sollte:

1. Datei mit dem Dateiinhalt (siehe unten, wichtige Änderung fett gedruckt) erstellen

2. Datei unter dem Namen custom-model-context.xml abspeichern

3. Diese Datei ins Verzeichnis <Alfresco Home>/tomcat/shared/classes/alfresco/extension kopieren

4. Alfresco Instanz neu starten

Verständnisfragen:

Nach diesen 4 Schritten - und nur nach diesen - sollte ein Nutzer, der kein Admin ist, keine Möglichkeit mehr haben eine site zu erstellen?
Der Dateiinhalt ist so auch vollständig?

Dateiinhalt:

-----------------------------------------------------------------------
<?
xml version='1.0' encoding='UTF-8'?><!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'><beans>    <bean id="SiteService_security" class="org.alfresco.repo.security.permissions.impl.acegi.MethodSecurityInterceptor">        <property name="authenticationManager"><ref bean="authenticationManager"/></property>        <property name="accessDecisionManager"><ref bean="accessDecisionManager"/></property>        <property name="afterInvocationManager"><ref bean="afterInvocationManager"/></property>        <property name="objectDefinitionSource">            <value>               org.alfresco.service.cmr.site.SiteService.cleanSitePermissions=ACL_NODE.0.sys:base.ReadProperties                org.alfresco.service.cmr.site.SiteService.createContainer=ACL_ALLOW,AFTER_ACL_NODE.sys:base.ReadProperties                org.alfresco.service.cmr.site.SiteService.createSite=ACL_METHOD.ROLE_ADMINISTRATOR
              
...
               ...
               org.alfresco.service.cmr.site.SiteService.*=ACL_DENY             </value>        </property>    </bean></beans>
-------------------------------------------------------------------
hr61369256
Member II

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

... nope, klappt nicht. Siehe Bild. Habe eine frische Installation 5.2.e verwendet und den Nutzer Mike Jackson aktiviert. Dieser sollte dann eigentlich keine Site erstellen dürfen. Es wird der Butten allerdings noch angezeigt (siehe Bild).

Doch wenn er versucht eine Site zu erstellen, kommt die Meldung, er habe nicht genügend Berechtigungen dazu. Geht also doch!

Ich habe immer aus der Sichtbarkeit des Buttons auch auf die Möglichkeit geschlossen. War mein Fehler.

Doch gibt es noch eine Möglichkeit, den Button verschwinden zu lassen?

afaust
Master

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Genau, diese Anpassung der Konfiguration definiert "nur" die Berechtigung um. Der Button bleibt bestehen, da er nicht von einer pro-aktiven Berechtigungsprüfung abhängig ist. Genau das ist ein Punkt, wo besagtes Addon weiter geht als das, was in der Dokumentation aufgeführt wird.

Um den Button entsprechend auszublenden, muss das Template des Web Scripts für das "My Sites" Dashlet überschrieben werden, und der Button-Markup per #if-Direktive nur dann gerendert werden, wenn der aktuelle Nutzer ein Admin ist.

hr61369256
Member II

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Vielen Dank für den Hinweis. Gibt es da ein gutes Beispiel als Link, wo so ein Template, oder genau dieses, überschrieben wird. Ansonsten recherchiere ich mal weiter ... das wären dann Schritte ab 5. , um das Thema mindestens für Admins rund zu machen. So ganzheitlich würde ich das dann abschließend gerne dokumentieren. Aber erst muss es mir gelingen ...

afaust
Master

Re: Create Site Funktion nur für Admins sichtbar schalten, wie geht das genau?

Überschreiben von Web Script Templates wird z.B. in der Dokumentation beleuchtet, wobei es zwei Ansätze gibt: Überschreiben über web-extension Pfad (klassisch) oder ein Surf Extension Module, mit dem man per Post-Processing Änderungen in bestimmten Bereichen vornehmen kann (heutige Empfehlung, sofern Basis Web Script entsprechend brauchbare, adressierbare Bereiche vorgibt).