Update #43: Disco Administrators are configurable

This commit is contained in:
Gary Sharp
2014-04-11 19:57:51 +10:00
parent e984221c95
commit 41dc002ef8
17 changed files with 742 additions and 111 deletions
@@ -11,5 +11,6 @@ namespace Disco.Web.Areas.Config.Models.AuthorizationRole
public class IndexModel : ConfigAuthorizationRoleIndexModel
{
public List<IRoleToken> Tokens { get; set; }
public List<SubjectDescriptorModel> AdministratorSubjects { get; set; }
}
}
@@ -13,7 +13,7 @@ namespace Disco.Web.Areas.Config.Models.AuthorizationRole
{
public IRoleToken Token { get; set; }
public List<SubjectDescriptor> Subjects { get; set; }
public List<SubjectDescriptorModel> Subjects { get; set; }
public IClaimNavigatorItem ClaimNavigator { get; set; }
@@ -29,26 +29,5 @@ namespace Disco.Web.Areas.Config.Models.AuthorizationRole
};
}
}
public class SubjectDescriptor
{
public bool IsGroup { get; set; }
public string Name { get; set; }
public string Id { get; set; }
public static SubjectDescriptor FromActiveDirectoryObject(IActiveDirectoryObject ADObject)
{
var item = new SubjectDescriptor()
{
Id = ADObject.NetBiosId,
Name = ADObject.Name
};
if (ADObject is ActiveDirectoryGroup)
item.IsGroup = true;
return item;
}
}
}
}
@@ -0,0 +1,25 @@
using Disco.Models.Interop.ActiveDirectory;
namespace Disco.Web.Areas.Config.Models.AuthorizationRole
{
public class SubjectDescriptorModel
{
public bool IsGroup { get; set; }
public string Name { get; set; }
public string Id { get; set; }
public static SubjectDescriptorModel FromActiveDirectoryObject(IActiveDirectoryObject ADObject)
{
var item = new SubjectDescriptorModel()
{
Id = ADObject.NetBiosId,
Name = ADObject.DisplayName
};
if (ADObject is ActiveDirectoryGroup)
item.IsGroup = true;
return item;
}
}
}