public AclPackage CreateAcl(String repoName, String userName, String aclName)
        {
            AclIdentity aclIdentity = new AclIdentity();

            aclIdentity.RepositoryName = repoName;
            aclIdentity.Domain         = userName;
            aclIdentity.Name           = aclName;

            Permission basicReadPermission = new Permission();

            basicReadPermission.Name = Permission.READ;
            basicReadPermission.Type = PermissionType.BASIC;

            Permission basicDeletePermission = new Permission();

            basicDeletePermission.Name = Permission.DELETE;
            basicDeletePermission.Type = PermissionType.BASIC;

            List <AclEntry> entryList = new List <AclEntry>();

            AclEntry aclEntry = new AclEntry();

            aclEntry.AccessType = AccessType.PERMIT;
            aclEntry.Accessor   = "dm_world";
            List <Permission> permissionList = new List <Permission>();

            permissionList.Add(basicReadPermission);
            aclEntry.Permissions = permissionList;

            AclEntry aclEntry1 = new AclEntry();

            aclEntry1.AccessType = AccessType.PERMIT;
            aclEntry1.Accessor   = "dm_owner";
            List <Permission> permissionList1 = new List <Permission>();

            permissionList1.Add(basicDeletePermission);
            aclEntry1.Permissions = permissionList1;

            entryList.Add(aclEntry);
            entryList.Add(aclEntry1);

            Acl acl = new Acl();

            acl.Identity    = aclIdentity;
            acl.Description = "a test acl" + System.DateTime.Now.Ticks;
            // acl.setType(AclType.REGULAR); // defaults to REGULAR
            // acl.setVisibility(AclVisibility.PRIVATE); // defaults to PRIVATE
            acl.Entries = entryList;

            AclPackage aclPackage = new AclPackage();
            List <Acl> aclList    = new List <Acl>();

            aclList.Add(acl);
            aclPackage.Acls = aclList;

            return(accessControlService.Create(aclPackage));
        }
        public ActionResult Create([Bind(Include = "AccessControlID,MachineID,PasswordEntry,RecordCreated,CreatedBy,LastUpdated,LastUpdatedBy,ViewedState,IsActive")] AccessControl accessControl)
        {
            if (ModelState.IsValid)
            {
                string EncryptPassword = Encryption.Encrypt.EncryptString(accessControl.PasswordEntry, WebConfigurationManager.AppSettings["MonkeyString"]);
                accessControl.ViewedState   = "Created";
                accessControl.LastUpdated   = System.DateTime.Now;
                accessControl.LastUpdatedBy = User.Identity.Name;
                accessControl.RecordCreated = System.DateTime.Now;
                accessControl.CreatedBy     = User.Identity.Name;
                accessControl.PasswordEntry = EncryptPassword;
                _AccessControlService.Create(accessControl);
                _AccessControlTransaction.Create(_AccessControlTransaction.LogTransaction(accessControl.AccessControlID, Model.Common.Constants.TransactionConst.TransactionType.Created, User.Identity.Name, _MachineService.GetById(accessControl.MachineID).MachineName, EncryptPassword));
                return(RedirectToAction("Index"));
            }

            ViewBag.MachineID = new SelectList(_MachineService.GetAllActive(), "MachineID", "MachineName", accessControl.MachineID);
            return(View(accessControl));
        }