Obtención de permisos de un usuario en la lista de SharePoint 2K3
-
06-07-2019 - |
Pregunta
He estado usando SharePoint Server 2003. Necesito recuperar la lista de permisos usando SPList.Permissions.Xml
. Pero no encuentro los permisos otorgados al usuario en ninguna parte del Xml devuelto.
Digamos que tengo un usuario 'A' cuyo nombre de inicio de sesión viene como un atributo en el Xml. Pero los permisos (como Ver
, Ver & amp; Insertar
, Ver & amp; Insertar & amp; Eliminar
etc.,).
No quiero los permisos de nivel de sitio, ya que se pueden recuperar con SPSite.Roles. Necesito obtener los permisos de SPList
solo. Cualquier ayuda definitivamente sería apreciada (¡¡¡¡¡¡¡¡) :)
Tenga en cuenta que estoy usando SP 2003 (no SP2007 donde RoleAssignments se puede usar para obtener estos detalles)
Solución
Érase una vez escribí un código como este:
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"
}
Como muestra cómo navegar en la colección de permisos y cómo copiarlos, espero que ayude.