[Plone-IT] Re: permessi

Riccardo Lemmi riccardo a reflab.it
Mer 30 Apr 2008 07:51:19 UTC


On Wednesday 30 April 2008, pop3_ a katamail.com wrote:
> > Il sistema corretto per farlo è
> > - creare un wf con uno stato (member_only) in cui gli anonimi non abbiamo
> > il
> > permesso di view.
> > - creare un utente di servizio che sia Member (quindi possa accedere con
> > il
> > contenuto in stato member_only)
>
> ok
>
> > - creare una browser view o un metodo esterno o un tool che metta a
> > disposizione un metodo che faccia la ricerca sul catalogo utilizzando
> > l'utente suddetto (cerca: newSecurityManager)
> > --
>
> non ho afferrato il tuo consiglio.
> è possibile inserire in una view un controllo sull'utente per verifcare se
> è autenticato o meno? 

no, sto parlando di cambiare l'utente:

        ...
        member = portal.acl_users.getUserById(member_id)
        old_sec_manager = getSecurityManager()
        newSecurityManager(None, member)
        results = []
        try:
            results = portal.portal_catalog(**kargs)
        finally:
            setSecurityManager(old_security_manager)

        return results

con member_id username di un utente appositamente creato e kargs dizionario 
dei paramentri da passare per la ricerca.

Esiste anche un altro sistema che però sconsiglio ed è quello di chiamare sul 
catalogo unrestrictedSearchResults, restituisce tutto e quindi potenzialmente 
anche cose che non si vorrebbero far vedere (tipo gli oggetti in stato 
privato)

> ho cercato in 
>
> C:\Programmi\Plone 2\Data\Products\ATContentTypes\content\folder.py
>
> class ATFolder(AutoOrderSupport, ATCTOrderedFolder):
>  ...
>     immediate_view = 'folder_listing'
>
> e credo che se riuscissi a modificare questo 'folder_lsting' avrei risolto
> il problema. è corretto? sai dove posso trovarlo?

Su file system, basta fare una ricerca; ma come ho detto sopra il problema non 
è solo modificare questo template ma cambiare il contesto di sicurezza.
-- 
Riccardo Lemmi                           Email:   riccardo a reflab.it
Reflab S.r.l. - Plone Design, Development and Consulting
Phone: +39 349 4620820                         http://www.reflab.it
-------------- parte successiva --------------
Un allegato non testuale è stato rimosso....
Nome:        signature.asc
Tipo:        application/pgp-signature
Dimensione:  189 bytes
Descrizione: This is a digitally signed message part.
URL:         <http://lists.plone.org/pipermail/plone-plone-it/attachments/20080430/7fe8fcaa/attachment.asc>


Maggiori informazioni sulla lista Plone-IT