Domanda

Sto usando SharePoint Server 2003. Devo recuperare l'elenco delle autorizzazioni usando SPList.Permissions.Xml . Ma non trovo le autorizzazioni concesse all'utente da nessuna parte nell'XML restituito.

Supponi di avere un utente "A" il cui nome di accesso viene fornito come attributo nell'XML. Ma le autorizzazioni (come Visualizza , Visualizza & amp; Inserisci , Visualizza & amp; Inserisci & amp; Elimina ecc.).

Non desidero le autorizzazioni a livello di sito poiché possono essere recuperate utilizzando SPSite.Roles. Devo ottenere i permessi del SPList da solo. Qualsiasi aiuto sarebbe sicuramente apprezzato (a ragione !! :))

Nota che sto usando SP 2003 (non SP2007 in cui RoleAssignments può essere usato per ottenere questi dettagli)

È stato utile?

Soluzione

C'era una volta ho scritto un codice come questo:

SPDocumentLibrary source = (SPDocumentLibrary)web.Lists["source"];
SPDocumentLibrary target = (SPDocumentLibrary)web.Lists["target"];
foreach(SPPermission permission in source.Permissions)
{
    try
    {
        target.Permissions.Add(permission.Member, permission.PermissionMask);
    }
    catch { } // "ask rumen for info"
}

Dato che mostra come navigare nella raccolta dei permessi e come copiarli, spero che sia di aiuto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top