Individuelle Alfresco Share Gruppen

Aktuell

Veröffentlicht unter Alfresco

Das Berech­ti­gungsmod­ell in Alfresco Share lässt bes­timmte Szenar­ien “out of the box” nicht abbilden. Der Man­ager einer Share Site darf z.B. keine indi­vidu­ellen Grup­pen anle­gen und deren Mit­glieder ver­wal­ten.

Sobald eine neue Share Site erstellt wird, legt Alfresco eine site­spez­i­fis­che Gruppe für die jew­eilige Site mit vier Unter­grup­pen an.

Die vier Unter­grup­pen dienen hier­bei der Zusam­men­fas­sung der Mit­glieder entsprechend ihrer Rolle als Con­trib­u­tor, Col­lab­o­ra­tor, Con­sumer und Man­ager. Per Default­ver­hal­ten wer­den diesen Grup­pen die gle­ich­nami­gen Berech­ti­gun­gen Contributor, Collaborator, Consumer und Manager zugewiesen.

DEFAULT:
Gruppe: GROUP_SITE_XYZ_Collaborator
–> Berech­ti­gung: SiteCollaborator

Die Benutzung des Admin­is­tra­tionstools zur Grup­pen­ver­wal­tung (Anlegen/Bearbeiten/Löschen von Grup­pen sowie Zuweisen von Mit­gliedern) obliegt einem Admin­is­tra­tor. Der Man­ager einer Site kann diese vom Admin­is­tra­tor vordefinierten Grup­pen auf seine Site ein­laden. Zum Zeit­punkt der Ein­ladung kann der Man­ager entschei­den, ob dieser Mit­glieder der Gruppe zukün­ftig als Con­trib­u­tor, Col­lab­o­ra­tor, Con­sumer oder Man­ager Zugriff auf die Inhalte haben.

Das Basiswis­sen zum “out of the box” Berech­ti­gungsmod­ell ver­mit­telt nach­fol­gen­des Video (kann von Alfresco “Profis” gerne über­sprun­gen werden):

Alfresco Share Basiswis­sen: site­spez­i­fis­che Grup­pen / Rollen / Berech­ti­gun­gen und deren Zusammenspiel

Ver­wal­tung indi­vidu­ellen Share Site Gruppen

Der Site­M­an­ager einer Share Site soll die Möglichkeit erhal­ten, indi­vidu­elle site­spez­i­fis­che Grup­pen anzule­gen und zu verwalten.

Im nach­fol­gen­dem Dia­gramm haben wir ver­sucht diese Erweiterung grafisch darzustellen (Ver­größerung per Mausklick):

Das Berech­ti­gungsmod­ell wurde wie folgt vorgegeben (wobei die Fir­men “abc” und “xyz” für beliebig viele Fir­men stehen):

  • interne Mitar­beiter haben entsprechend ihrer Rolle Zugriff auf alle Projektordner
  • externe Mitar­beiter der “Firma xyz” haben auss­chließlich Zugriff als Col­lab­o­ra­tor auf Ord­ner / Dateien der „Firma xyz”
  • externe Mitar­beiter der “Firma abc” haben auss­chließlich Zugriff als Col­lab­o­ra­tor auf Ord­ner / Dateien „Firma abc”
  • externe Mitar­beiter der Fir­men “xyz” und “abc” kön­nen Ord­ner / Doku­mente der inter­nen Mitar­beiter und der jew­eils anderen exter­nen Fir­men nicht sehen

In einem früheren Beitrag haben wir bere­its einen Pro­to­typen zur Ver­wal­tung von Berech­ti­gun­gen für einzelne Benutzer vorgestellt. Diese Erweiterung wurde nun entsprechend der oben genan­nten Anforderun­gen auf Grup­pen aus­geweitet. Zusät­zlich wurde der Menüpunkt “Grup­pen” unter­halb der Mit­gliederver­wal­tung (Funk­tion­al­ität für Man­ager einer Site) durch die neue Funk­tion­al­ität Grup­pen– / Mit­gliederver­wal­tung ersetzt. Natür­lich kann man die neue Funk­tion­al­ität auch ergänzend implementieren.

Unser nach­fol­gen­des Video beschreibt diese Erweiterung an einem Prototypen:

 

An Alfresco Developer’s Challenge and Journey

Veröffentlicht unter Alfresco, Spring
An Idea (lit bulb)

Alfresco is a very flex­i­ble content-platform in gen­eral. It pro­vides mech­a­nisms to cus­tomize almost every com­po­nent (Spring-Bean, Web­script, Tem­plates) shipped with the core prod­uct. Still, there are times when the solu­tion is not as obvi­ous and as the devel­oper ini­tially had in mind. Weit­er­lesen

Unobstrusive Spring Beans Injection — Performance Analysis (Alfresco Example)

Veröffentlicht unter Alfresco, Spring
3020016417_3c4f42de7b_blog

Some­times you need to know where an appli­ca­tion is spend­ing how much time. The old school System.currentTimeMillis() approach works for basic sce­nar­ios. If you have a Spring based appli­ca­tion, apply­ing an AOP style “bean injec­tion” approach may get you far bet­ter results — cleaner and faster. Weit­er­lesen

Using an Embedded REPL to Accelerate Development (Example: Alfresco)

Veröffentlicht unter Alfresco, Groovy / Grails, Spring
Javascript REPL embedded in Alfresco

For me, wait­ing is by far the worst part of devel­op­ment. depend­ing on the envi­ron­ment, the build and deploy phases of the code-build-deploy-test devel­op­ment cycle can really take a sig­nif­i­cant share of your imple­men­ta­tion time. There are var­i­ous approaches address­ing this annoy­ing prob­lem. This post dis­cusses lever­ag­ing an embed­ded Read-Eval-Print-Loop . Weit­er­lesen

Alfresco Share (Prototype) Security Hack

Veröffentlicht unter Alfresco
Zahlenschloß

Alfresco Share comes with an access con­trol list (ACL) based secu­rity model con­sit­ing of Site Man­ager, Col­lab­o­ra­tor, Con­trib­u­tor and Con­sumer groups and per­mis­sions. Things can get tricky when the default secu­rity model can­not address require­ments. This post out­lines a quick hack solu­tion. Weit­er­lesen