Exemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ApiIdentity"/> class.
 /// </summary>
 /// <param name="user">The user.</param>
 /// <exception cref="System.ArgumentNullException">user</exception>
 public ApiIdentity(WSUser user)
 {
     if (user == null)
     {
         throw new ArgumentNullException("user");
     }
     this.User = user;
 }
        protected override void OnAuthorization(AuthorizationContext filterContext)
        {
            base.OnAuthorization(filterContext);

            if (User.Identity.IsAuthenticated)
            {
                return;
            }

            var mashapeProxy = Request.Headers["X-Mashape-Proxy-Secret"] as string;

            if (mashapeProxy == AppSettings.Instance.XMashapeProxySecret)
            {
                var mashapeUser = (Request.Headers["X-Mashape-User"] as string) + "@user.mashape.com";
                using (WSClientModelEntities db = new WSClientModelEntities())
                {
                    var user = db.WSUsers.FirstOrDefault(x => x.UserID == mashapeUser);
                    if (user == null)
                    {
                        user = new WSUser {
                            UserID = mashapeUser, PasswordHash = AppSettings.Instance.XMashapeProxySecret
                        };
                        db.WSUsers.AddObject(user);
                        db.SaveChanges();
                    }

                    SetUser("Mashape", true, user.UserID);
                    return;
                }
            }

            var wsUser = Request.Headers["X-WSClient-Username"] as string;

            if (wsUser != null)
            {
                var wsHash = Request.Headers["X-WSClient-PasswordHash"] as string;
                using (WSClientModelEntities db = new WSClientModelEntities())
                {
                    var user = db.WSUsers.FirstOrDefault(x => x.UserID == wsUser && x.PasswordHash == wsHash);
                    if (user != null)
                    {
                        SetUser("WSClient", true, user.UserID);
                        return;
                    }
                    else
                    {
                        throw new AccessViolationException();
                    }
                }
            }

            SetUser();
        }
Exemplo n.º 3
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            WSUser wsuser  = new WSUser();
            User   ObjUser = wsuser.Login(txtUser.Text, txtPass.Text);

            if (ObjUser != null)
            {
                SessionManager _SessionManager = new SessionManager(Session)
                {
                    UserSession = ObjUser
                };
                Response.Redirect("/Reporte.aspx");
            }
            else
            {
                this.divErrorSignIn.Visible  = true;
                this.ErrorSignInMessage.Text = "¡Usuario o clave incorrectos!";
            }
        }
Exemplo n.º 4
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            using (WSClientModelEntities db = new WSClientModelEntities()) {
                if (!db.WSUsers.Any())
                {
                    var user = new WSUser {
                        EmailAddress = "*****@*****.**", UserID = "*****@*****.**", PasswordHash = "change-me"
                    };
                    db.WSUsers.AddObject(user);
                    db.SaveChanges();
                }
            }
        }