Hi, I've recently met this issue on a 6.3 instance. I wanted to set it up so that each sub-wiki would be independent from the others (local-users only). Users and admins that are local to a wiki should NOT know that there are other wikis on the farm.
As expected, when creating a wiki and selecting local-only users, the 3 possible wiki types were greyed out since they don't make sense in that configuration. However, I discovered that local users that have the admin right on a sub-wiki still get access to the "Users" section of the administration, where they can... change the wiki type. Since they're only local users, that does not cause a security issue - they still cannot see any other wiki on the farm. However, it doesn't make sense letting the local admin change that setting: the only thing they can do is mess things up. One solution in my case could be to switch to the old wiki-only wiki manager, without workspaces, but I'm not 100% sure that's what we want to do? In that case, why should we permit workspaces with local-users only in the first place? Thanks, Guillaume On Tue, Dec 16, 2014 at 8:21 PM, Anca Luca <[email protected]> wrote: > > Hello devs, > > = Short story = > > Since the metadata about a subwiki (pretty name, description, users scope) > are in the middle between main wiki and the subwiki (are used on both), who > should have the last word about this data? Global admin of the farm of > local admin of the subwiki? > > = Long story = > > while looking at http://jira.xwiki.org/browse/XWIKI-11416 , we came across > a couple of questions about what is a subwiki and who "owns" (controls) the > metadata about it. > > It all started with the fact that XWIKI-11416 would imply allowing the > local admins of the subwiki (potentially local users) to edit information > which is stored on the main wiki. There are 2 important things to discuss > about this requirement: > > A. > 1/ it is important that the metadata about a subwiki can be controlled by > the local admin group, or another _group_ of people. The owner of the wiki > is not enough, as owner is not a role and can only be fulfilled by one > person, which is limiting in terms of collaboration. > 2/ the wiki description and pretty name are stored on the main wiki today, > in the wiki descriptor, while information about the user scope and > membership are stored on the subwiki. This was changed recently, when the > wiki concept was revamped and integrated with workspaces, in 5.3 (before > that, everything was on the main wiki). > > A 2/ takes us to the main question of this mail: who is responsible / > should should be responsible for the information about a subwiki? One > direct consequence of this answer is the storage of this data, but the > implications are larger than that because they can define the usecases that > we support for the new wikis (as they are defined by the new implementation > from 5.3). > > This question arises because this metadata is quite tricky as it represents > the relation between the main wiki and the subwikis, so it could be > considered that both main wiki and subwikis have priority on it. > > Please express your opinion about the following approaches, both as a > general guideline, and in particular in the context of the 5 items from the > descriptor that we're discussing: pretty name, wiki description, membership > type, user scope, owner. > > B > 1/ the global admin must be able to control the data about the subwikis, > regardless of the opinion of the local admins > 2/ the local admins should be free to configure the data about the > subwikis, without the global admin controlling these settings. Note that > this is already the case for wiki rights, by construction of the wiki, and > recently this was chosen for user scope and membership type by storing them > on to the subwiki in 5.3 > 3/ both approaches should be possible, depending on the type of farm we > make (farm of wikis with subwikis with local users which don't know one > about the existence of the other wikis, a la myxwiki.org or farm of wikis > where users can create wikis of their own, workspaces style) > 4/ both approaches should be possible, depending on the type of wiki, which > should be decided by the global admin (on the same farm we could have some > wikis on which global admin decides this metadata and some wikis on which > local admins decide it) > > Note that B 3 and 4, in my opinion, have consequences on the type of wikis > that we want to make _by default_ (with customization everything will be > possible): > > UC 1 : farm where the wikis are handles as dedicated spaces for > collaboration inside the same community, the users all know about the > existance of all wikis (workspaces style) > UC 2 : farm where the users don't know about the existance of the other > wikis, where every subwiki is independent, like an XWiki instance without > subwikis, they are just managed by the same farm, for various reasons ( > myxwiki.org style, cloud mode, real "farm" mode, the pre-workspaces way of > making subwikis). > > Please comment on these items, from a conceptual point of view. > > Thanks, > Anca > > P.S. we also discussed a couple of implementation details today, with > Denis, Eduard and Guillaume D: > > * allowing local admins to change data that is stored in a document on the > main wiki is problematic because it would mean to code a modification a > document which would bypass the rights system, which is not generally a > good idea, we should model this by using the regular rights system (the > users that must be able to edit the descriptor should be able to have edit > rights on it) > * normally storing data on the subwiki is problematic because of the > performance issues that arise when using this information on the main wiki > (it's not possible to fetch it with a hql query). BUT the wiki manager > implementation has a cache where this data can be stored so that it's not > always looked up on the subwiki when needed on the main wiki. This cache, > while quite limited today, can be improved to answer whatever filtering > needs. > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

