You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by "Steve Skillcorn, Docuviz Technologies" <st...@docuviz.com> on 2004/12/10 07:10:25 UTC

Permissioning Documents

Hi;
 
I'm currently using Lucene (which I am extremely impressed with BTW) to
index a knowledge base of documents.  One issue I have is that only certain
documents are available to certain users (or groups).  The number of
documents is large, into the 100,000s, and the number of uses can be into
the 1000s.  Obviously, the users permissioned to see certain documents can
change regularly, so storing the user id's in the Lucene document is
undesirable, as a permission change could mean a delete and re-add to
potentially 100s of documents.
 
Does anyone have any guidance as to how I should approach this?
 
Would this be something the Lucene community would be interested in having
committed back if I embark on an optimised development at the index level?
 
Or, in the opinion of the group, should I just brute force the adds/deletes
and be done with it?
 
All advice greatly appreciated.
 
Steve
 
 

Re: Permissioning Documents

Posted by Paul Elschot <pa...@xs4all.nl>.
On Friday 10 December 2004 07:10, Steve Skillcorn wrote:
> Hi;
>  
> I'm currently using Lucene (which I am extremely impressed with BTW) to
> index a knowledge base of documents.  One issue I have is that only certain
> documents are available to certain users (or groups).  The number of
> documents is large, into the 100,000s, and the number of uses can be into
> the 1000s.  Obviously, the users permissioned to see certain documents can
> change regularly, so storing the user id's in the Lucene document is
> undesirable, as a permission change could mean a delete and re-add to
> potentially 100s of documents.
>  
> Does anyone have any guidance as to how I should approach this?

A typical solution would be to use a Filter for each user group.
Each Filter would be built from categories indexed with the documents.
The moment to build a group Filter could be the first time a user from
a group queries an index after it is opened.
Filters can be cached, see the recent discussion on CachingWrappingFilter
and friends.

Regards,
Paul Elschot


---------------------------------------------------------------------
To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: lucene-user-help@jakarta.apache.org