Получение разрешений пользователя в списке SharePoint 2K3

StackOverflow https://stackoverflow.com/questions/1613596

Вопрос

Я использую SharePoint Server 2003. Мне нужно получить список разрешений, используя SPList.Permissions.Xml . Но я не нахожу разрешений, предоставленных пользователю где-либо в возвращаемом Xml.

Скажем, у меня есть пользователь 'A', чье имя для входа в систему является атрибутом в XML Но разрешения (такие как Просмотр , Просмотр и вставка , Просмотр и вставка и удаление и т. Д.).

Мне не нужны разрешения на уровне сайта, поскольку их можно получить с помощью SPSite.Roles. Мне нужно получить разрешения только для SPList . Любая помощь определенно будет оценена (достойно! :))

Обратите внимание, что я использую SP 2003 (не SP2007, где RoleAssignments можно использовать для получения этих сведений)

Это было полезно?

Решение

Давным-давно я написал такой код:

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"
}

Поскольку он показывает, как перемещаться в коллекции разрешений и как их копировать, я надеюсь, что это поможет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top