Ejemplo n.º 1
0
        public String AddUser(String name, String password, String securityProfile)
        {
            SecurityProfile sP      = null;
            Boolean         existe  = false;
            Boolean         existe2 = false;
            int             i       = 0;
            int             j       = 0;

            if (Users.Count == 0)
            {
                sP = new SecurityProfile("admin");
                MiniSQLTester.database.Users.Add(new User(name, password, sP));
                return(Query.SecurityUserAdded);
            }
            else
            {
                while (existe == false && j < Users.Count())
                {
                    if (!Users[j].GetName().Equals(name))
                    {
                        j++;
                    }
                    else
                    {
                        existe = true;
                        return(Query.SecurityUserAlreadyExists);
                    }
                }
                while (existe2 == false && i < Profiles.Count())
                {
                    if (Profiles[i].getProfileName().Equals(securityProfile))
                    {
                        existe2 = true;
                        sP      = Profiles[i];
                    }

                    else
                    {
                        i++;
                    }
                }

                if (existe == false && existe2 == true)
                {
                    Users.Add(new User(name, password, sP));
                    return(Query.SecurityUserAdded);
                }
                else if (existe == false && existe2 == false)
                {
                    return(Query.SecurityProfileDoesNotExist);
                }
            }
            return(null);
        }
Ejemplo n.º 2
0
        public void DropSecurityProfile(string name)
        {
            //hay que borrar tambien de la lista de los users ademas de los de profile
            SecurityProfile sp = new SecurityProfile("admin");

            for (int i = 0; i < Users.Count; i++)
            {
                if (Users[i].GetSecurityProfile().getProfileName().Equals(name))
                {
                    //borrar
                    Users[i].SetSecurityProfile(sp);
                }
            }
            for (int j = 0; j < Profiles.Count; j++)
            {
                if (Profiles[j].getProfileName().Equals(name))
                {
                    Profiles.RemoveAt(j);
                }
            }
        }
Ejemplo n.º 3
0
        public string Execute(Database database)
        {
            Boolean existe = false;
            int     i      = 0;

            try
            {
                if (database.getProfiles().Count == 0)
                {
                    existe = false;
                }
                while (existe && i < database.getProfiles().Count)
                {
                    if (!database.getProfiles()[i].getProfileName().Equals(Name))
                    {
                        existe = true;
                    }

                    i++;
                }
                if (existe == false)
                {
                    SecurityProfile sp = new SecurityProfile(Name);
                    database.getProfiles().Add(sp);
                    return(Query.SecurityProfileCreated);
                }
                else
                {
                    return(Query.SecurityProfileAlreadyExists);
                }
            }

            catch
            {
                return(Query.Error);
            }
        }
Ejemplo n.º 4
0
 public void SetSecurityProfile(SecurityProfile sec)
 {
     secperfil = sec;
 }
Ejemplo n.º 5
0
 public User(string name, string password, SecurityProfile secperfil)
 {
     this.name      = name;
     this.password  = password;
     this.secperfil = secperfil;
 }