Authentication and credentials in [web.config]

Estimados les dejo un método básico pero efectivo para acceder a una aplicación web autenticado y tener un mínimo de seguridad, hay que tener en cuenta que este no es un buen método si nuestra web tiene más de 10 usuarios con autenticación ya que para eso existe la Class Membership el cual veremos en la próxima.

[Template del web.config]


  

      
        
          
        
      
    

   
     
   

 

[Using para importar]
using System;
using System.Web.Configuration;
using System.Web.Security;
[Método para agregar un usuario]

! ATENCION ¡


Hay que tener en cuenta que este procedimiento vuelve a escribir el "Web.Config" de nuestra aplicación web.
  public static void CrearUsuarioWebConfig(string name, string password)
        {
            System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration("/");
            AuthenticationSection authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
            FormsAuthenticationConfiguration formsAuthentication = authenticationSection.Forms;


            FormsAuthenticationUser currentUser = new FormsAuthenticationUser(name, password);

            formsAuthentication.Credentials.Users.Add(currentUser);

            if (!authenticationSection.SectionInformation.IsLocked)
            {
                configuration.Save(System.Configuration.ConfigurationSaveMode.Modified, true);
            }
        }
[Método para borrar un usuario]

! ATENCION ¡


Hay que tener en cuenta que este procedimiento vuelve a escribir el "Web.Config" de nuestra aplicación web.
 public static void BorrarUsuarioWebConfig(string name)
        {
            System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration("/");
            AuthenticationSection authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
            FormsAuthenticationConfiguration formsAuthentication = authenticationSection.Forms;

            formsAuthentication.Credentials.Users.Remove(name);

            if (!authenticationSection.SectionInformation.IsLocked)
            {
                configuration.Save();
            }
        }
[Método para buscar un usuario]

! ATENCION ¡


Hay que tener en cuenta que este procedimiento vuelve a escribir el "Web.Config" de nuestra aplicación web.
    public static bool ExiteUsuarioWebConfig(string name)
        {
            bool res = false;

            System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration("/");
            AuthenticationSection authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
            FormsAuthenticationConfiguration formsAuthentication = authenticationSection.Forms;

            FormsAuthenticationUserCollection f = formsAuthentication.Credentials.Users;

            foreach (FormsAuthenticationUser item in f)
            {
                if (item.Name == name)
                {
                    res = true;
                }
            }


            return res;
        }





Comentarios