我可以使用以下内容获取表示给定文件夹的组和用户权限的字符串。
代码
// assumes Core Service client "client"
var folderData = client.Read("tcm:5-26-2", new ReadOptions()) as FolderData;
var accessControlEntryDataArray =
folderData.AccessControlList.AccessControlEntries;
Console.WriteLine(folderData.Title);
foreach (var accessControlEntryData in accessControlEntryDataArray)
{
Console.WriteLine("{0} has {1}",
accessControlEntryData.Trustee.Title,
accessControlEntryData.AllowedPermissions.ToString());
}
输出
某些文件夹
每个人都读过
编辑没有
主 编辑没有
_ _
_ _
_ , 删除 [权利] 作者 - 内容无
似乎 `AllowedPermissions 的四个可能值是:
None
Read
Read, Write
Read, Write, Delete
All
这非常适合我创建文件夹权限报告的用例。我可以.Replace()
用熟悉的符号表示(例如rw--
或rwdl
)。
但是,操纵这些值是否也是设置string
权限的正确方法?我想我会想要对象或枚举。有人能指出我正确的方向吗?
我还注意到我得到了一些,但不是所有不适用的组都设置为None
. 我在这里并不特别需要它们,但我很好奇是什么决定了它们是否会被返回——我是否错过了代码中的某些内容?