示例#1
0
        public DataTable ObtenerLoginPorEmail(string aplicacion, string email)
        {
            DataTable usuario = new DataTable();

            try
            {
                throw new Exception("Error del sistema");
            }
            catch (Exception exception)
            {
                const string mensajeDeError =
                    "Ha ocurrido un error mientras se trataba de obtener el login del usuario por email.";

                IManejadorDeLogs manejadorDeLogs = FabricaIoC.Resolver <IManejadorDeLogs>();
                manejadorDeLogs.PublicarMensajeSql(aplicacion, mensajeDeError, exception);

                ErrorServicio errorServicio = new ErrorServicio(mensajeDeError);
                throw new FaultException <ErrorServicio>(errorServicio);
            }
            return(usuario);
        }
示例#2
0
        public void RegistrarUsuario(Guid providerUserKey, string aplicacion, string login, string password,
                                     string email, string preguntaPassword, string respuestaPassword, string comentario,
                                     DateTime ultimaActividad, DateTime ultimaSesion, DateTime ultimoCambioDePassword,
                                     int cantidadIntentosFaillidosPassword, DateTime inicioIntentosFallidosPassword,
                                     int cantidadIntentosFallidosPregunta, DateTime inicioIntentosFallidosPregunta,
                                     bool estaAprobadao, bool estaBloqueado, DateTime ultimoBloqueo, DateTime registrado)
        {
            try
            {
            }
            catch (Exception exception)
            {
                const string mensajeDeError = "Ha ocurrido un error mientras se trataba de registrar el usuario.";

                IManejadorDeLogs manejadorDeLogs = FabricaIoC.Resolver <IManejadorDeLogs>();
                manejadorDeLogs.PublicarMensajeSql(aplicacion, mensajeDeError, exception);

                ErrorServicio errorServicio = new ErrorServicio(mensajeDeError);
                throw new FaultException <ErrorServicio>(errorServicio);
            }
        }
示例#3
0
        // Para obtener más información para configurar la autenticación, visite http://go.microsoft.com/fwlink/?LinkId=301864
        public void ConfigureAuth(IAppBuilder app)
        {
            // Configure el contexto de base de datos, el administrador de usuarios y el administrador de inicios de sesión para usar una única instancia por solicitud
            app.CreatePerOwinContext(ApplicationDbContext.Create);
            app.CreatePerOwinContext <ApplicationUserManager>(ApplicationUserManager.Create);
            app.CreatePerOwinContext <ApplicationSignInManager>(ApplicationSignInManager.Create);

            // Permitir que la aplicación use una cookie para almacenar información para el usuario que inicia sesión
            // y una cookie para almacenar temporalmente información sobre un usuario que inicia sesión con un proveedor de inicio de sesión de terceros
            // Configurar cookie de inicio de sesión
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                LoginPath          = new PathString("/Account/Login"),
                Provider           = new CookieAuthenticationProvider
                {
                    // Permite a la aplicación validar la marca de seguridad cuando el usuario inicia sesión.
                    // Es una característica de seguridad que se usa cuando se cambia una contraseña o se agrega un inicio de sesión externo a la cuenta.
                    OnValidateIdentity = SecurityStampValidator.OnValidateIdentity <ApplicationUserManager, ApplicationUser>(
                        validateInterval: TimeSpan.FromMinutes(30),
                        regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
                }
            });
            app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);

            // Permite que la aplicación almacene temporalmente la información del usuario cuando se verifica el segundo factor en el proceso de autenticación de dos factores.
            app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5));

            // Permite que la aplicación recuerde el segundo factor de verificación de inicio de sesión, como el teléfono o correo electrónico.
            // Cuando selecciona esta opción, el segundo paso de la verificación del proceso de inicio de sesión se recordará en el dispositivo desde el que ha iniciado sesión.
            // Es similar a la opción Recordarme al iniciar sesión.
            app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie);

            // Quitar los comentarios de las siguientes líneas para habilitar el inicio de sesión con proveedores de inicio de sesión de terceros
            //app.UseMicrosoftAccountAuthentication(
            //    clientId: "",
            //    clientSecret: "");

            //app.UseTwitterAuthentication(
            //   consumerKey: "",
            //   consumerSecret: "");

            //app.UseFacebookAuthentication(
            //   appId: "",
            //   appSecret: "");

            //app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions()
            //{
            //    ClientId = "",
            //    ClientSecret = ""
            //});

            Mapping.InitialMapping();


            var builder = new ContainerBuilder();

            FabricaIoC.Contenedor(builder);

            builder.RegisterControllers(Assembly.GetExecutingAssembly());

            IContainer Container = builder.Build();

            DependencyResolver.SetResolver(new AutofacDependencyResolver(Container));
        }