/// <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(); }
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!"; } }
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(); } } }