如果有人可以幫助這個請。ckfinder不會識別角色?
我想將ckeditor和ckfinder合併到一個Asp.Net Mvc 1項目中。迄今爲止一切工作正常。唯一不能正常工作的是ckfinder的訪問控制。
據我所知,在文件ckfinder/config.ascx中,變量字符串RoleSessionVar用於分配要限制的角色。默認值是:
RoleSessionVar = "CKFinder_UserRole";
我在我的項目管理員,編輯和貢獻者中有樹角色。因此,爲了獲得我當前的用戶角色,我將其替換爲:
string currentRole= "";
if(HttpContext.Current.User.IsInRole("Administrators"))
{
currentRole = "Administrators";
}
else
{
if (HttpContext.Current.User.IsInRole("Editors"))
currentRole = "Editors";
else
{
if (HttpContext.Current.User.IsInRole("Contributors"))
{
currentRole = "Contributors";
}
}
}
RoleSessionVar = currentRole;
變量被賦予當前用戶的正確角色。 config.ascx文件的下一部分是ACL設置。默認的是:
AccessControl acl = AccessControl.Add();
acl.Role = "*";
acl.ResourceType =「*」; acl.Folder =「/」;
acl.FolderView = true;
acl.FolderCreate = true;
acl.FolderRename = true;
acl.FolderDelete = true;
acl.FileView = true;
acl.FileUpload = true;
acl.FileRename = true;
acl.FileDelete = true;
通過這些設置不會有,但與大家完全權限的ckfinder,它列出了所有的文件夾和文件的任何問題。我想限制對不同角色的刪除權限。反正只是作爲測試我試圖充分權限管理員角色
AccessControl acl = AccessControl.Add();
acl.Role = "Administrators";
acl.ResourceType =‘*’; acl.Folder =「/」;
acl.FolderView = true;
acl.FolderCreate = true;
acl.FolderRename = true;
acl.FolderDelete = true;
acl.FileView = true;
acl.FileUpload = true;
acl.FileRename = true;
acl.FileDelete = true;
但ckfinder不會顯示任何文件或文件夾,即使RoleSessionVar =「管理員」。
對於解決這個問題我會非常感謝。
拜倫