Ejemplo n.º 1
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            if (Page.IsValid)
            {
                try
                {
                    var roles = CustomerManager.GetAllCustomerRoles();
                    if (roles.Count == 0)
                    {
                        lblMessage.Text = GetLocaleResourceString("Admin.ACL.NoRolesDefined");
                        return;
                    }
                    SettingManager.SetParam("ACL.Enabled", cbACLEnabled.Checked.ToString());

                    foreach (GridViewRow row in gvACL.Rows)
                    {
                        foreach (CustomerRole cr in roles)
                        {
                            CheckBox    cbAllow            = row.FindControl(string.Format("cbAllow_{0}", cr.CustomerRoleId)) as CheckBox;
                            HiddenField hfCustomerActionId = row.FindControl(string.Format("hfCustomerActionId_{0}", cr.CustomerRoleId)) as HiddenField;
                            if (cbAllow == null || hfCustomerActionId == null || String.IsNullOrEmpty(hfCustomerActionId.Value))
                            {
                                return;
                            }

                            bool allow            = cbAllow.Checked;
                            int  customerActionId = int.Parse(hfCustomerActionId.Value);

                            var acls = ACLManager.GetAllAcl(customerActionId, cr.CustomerRoleId, null);
                            if (acls.Count > 0)
                            {
                                ACL acl = acls[0];
                                ACLManager.UpdateAcl(acl.AclId, customerActionId, cr.CustomerRoleId, allow);
                            }
                            else
                            {
                                ACL acl = ACLManager.InsertAcl(customerActionId, cr.CustomerRoleId, allow);
                            }
                        }
                    }

                    Response.Redirect("ACL.aspx");
                }
                catch (Exception exc)
                {
                    ProcessException(exc);
                }
            }
        }
Ejemplo n.º 2
0
        protected void BindGrid()
        {
            var actions = ACLManager.GetAllCustomerActions();

            if (actions.Count == 0)
            {
                lblMessage.Text = GetLocaleResourceString("Admin.ACL.NoActionDefined");
                return;
            }
            var roles = CustomerManager.GetAllCustomerRoles();

            if (roles.Count == 0)
            {
                lblMessage.Text = GetLocaleResourceString("Admin.ACL.NoRolesDefined");
                return;
            }
            List <CustomerActionACLMappingHelperClass> dt = new List <CustomerActionACLMappingHelperClass>();

            foreach (CustomerAction ca in actions)
            {
                CustomerActionACLMappingHelperClass map1 = new CustomerActionACLMappingHelperClass();
                map1.CustomerActionId   = ca.CustomerActionId;
                map1.CustomerActionName = ca.Name;
                map1.Allow = new Dictionary <int, bool>();

                foreach (CustomerRole cr in roles)
                {
                    var acls = ACLManager.GetAllAcl(ca.CustomerActionId, cr.CustomerRoleId, null);
                    if (acls.Count > 0)
                    {
                        ACL acl = acls[0];
                        map1.Allow.Add(cr.CustomerRoleId, acl.Allow);
                    }
                    else
                    {
                        map1.Allow.Add(cr.CustomerRoleId, false);
                    }
                }
                dt.Add(map1);
            }

            gvACL.DataSource = dt;
            gvACL.DataBind();
        }
Ejemplo n.º 3
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageLanguagesLocalization"));
 }
Ejemplo n.º 4
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManagePaymentSettings"));
 }
Ejemplo n.º 5
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageReturnRequests"));
 }
Ejemplo n.º 6
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageCustomerRoles"));
 }
Ejemplo n.º 7
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageCountriesStates"));
 }
Ejemplo n.º 8
0
 protected override bool ValidatePageSecurity()
 {
     return ACLManager.IsActionAllowed("ManageComposersxx");
 }
Ejemplo n.º 9
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageMessageQueue"));
 }
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("MangeEmailDirectory"));
 }
Ejemplo n.º 11
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageWarehouses"));
 }
Ejemplo n.º 12
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageMaintenance"));
 }
Ejemplo n.º 13
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageThirdPartyIntegration"));
 }
Ejemplo n.º 14
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageSMSProviders"));
 }
Ejemplo n.º 15
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageCatalog"));
 }
Ejemplo n.º 16
0
 protected override bool ValidatePageSecurity()
 {
     return(ACLManager.IsActionAllowed("ManageProductFeeds"));
 }
Ejemplo n.º 17
0
        public void ProcessACEs(string usersFile, string aclFile, bool deletionMode)
        {
            List <string>  usersList = new List <string>();
            List <ACEItem> aceList   = new List <ACEItem>();

            try
            {
                usersList = FileAccess.GetUsersFileData(usersFile);
            }
            catch (Exception ex)
            {
                Log.WriteLogEntry("ERROR", String.Format("Error while reading Users file: {0}", ex.Message), "Error while reading Users file.");
                CleanupEnvironment();
                Program.CloseApplicationOnError();
            }

            try
            {
                aceList = FileAccess.GetACLFileData(aclFile);
            }
            catch (Exception ex)
            {
                Log.WriteLogEntry("ERROR", String.Format("Error while reading ACL file: {0}", ex.Message), "Error while reading ACL file.");
                CleanupEnvironment();
                Program.CloseApplicationOnError();
            }

            if ((aceList.Count > 0) && (usersList.Count > 0))
            {
                ucmaPlatform.StartupPlatform();
                ucmaEndpoint = new Endpoint(ucmaPlatform.CollabPlatform);
                ACLManager aclManager = new ACLManager(ucmaEndpoint);

                foreach (string user in usersList)
                {
                    Log.WriteLogEntry("INFO", String.Format("Processing user {0}...", user.ToLowerInvariant()), String.Format("Processing user {0}...", user.ToLowerInvariant()));

                    try
                    {
                        if (!deletionMode)
                        {
                            aclManager.AddACEs(user, aceList);
                        }
                        else
                        {
                            aclManager.RemoveACEs(user, aceList);
                        }
                    }
                    catch (RegisterException rex)
                    {
                        Log.WriteLogEntry("ERROR", String.Format("Error while processing user {0}: {1}. Inner Exception: {2}. Diag Info: {3}.", user.ToLowerInvariant(), rex.Message, (rex.InnerException == null ? "N/A" : rex.InnerException.Message), (String.IsNullOrEmpty(rex.DiagnosticInformation.ToString()) ? "N/A" : rex.DiagnosticInformation.ToString())), String.Format("Error while processing user {0}", user.ToLowerInvariant()));
                    }
                    catch (Exception ex)
                    {
                        Log.WriteLogEntry("ERROR", String.Format("Error while processing user {0}: {1}. Inner Exception: {2}", user.ToLowerInvariant(), ex.Message, (ex.InnerException == null ? "N/A" : ex.InnerException.Message)), String.Format("Error while processing user {0}", user.ToLowerInvariant()));
                    }
                }
            }
            else
            {
                Log.WriteLogEntry("WARNING", "Users or ACL file is empty or invalid. No action will be performed.");
            }
        }