public AclPackage UpdateAcl(AclIdentity aclIdentity, String userName)
        {
            List <AclIdentity> idList = new List <AclIdentity>();

            idList.Add(aclIdentity);
            AclPackage aclPackage = accessControlService.Get(idList);

            AclEntry aclEntry = new AclEntry();

            aclEntry.Accessor = userName;
            Permission basicDeletePermission = new Permission();

            basicDeletePermission.Name = Permission.DELETE;
            basicDeletePermission.Type = PermissionType.BASIC;
            aclEntry.AccessType        = AccessType.PERMIT;
            List <Permission> permissionList = new List <Permission>();

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

            Acl acl = aclPackage.Acls[0];

            acl.Entries.Add(aclEntry);

            return(accessControlService.Update(aclPackage));
        }
        // GET: AccessControls/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            AccessControl accessControl = _AccessControlService.GetById(id.GetValueOrDefault());

            if (accessControl == null)
            {
                return(HttpNotFound());
            }
            accessControl.ViewedState = Model.Common.Constants.TransactionConst.TransactionType.Viewed.ToString();
            _AccessControlService.Update(accessControl);
            _AccessControlTransaction.Create(_AccessControlTransaction.LogTransaction(accessControl.AccessControlID, Model.Common.Constants.TransactionConst.TransactionType.Viewed, User.Identity.Name, accessControl.Machine.MachineName, accessControl.PasswordEntry));
            accessControl.PasswordEntry = Encryption.Encrypt.DecryptString(accessControl.PasswordEntry, WebConfigurationManager.AppSettings["MonkeyString"]);


            return(View(accessControl));
        }