public LoginResult Login(string username, string password) { try { if (AuthenticationMode.Forms != SPSecurity.AuthenticationMode || SessionAuthenticationModule == null) { return(new LoginResult { ErrorCode = LoginErrorCode.NotInFormsAuthenticationMode, Message = "NotInFormsAuthenticationMode" }); } if (!SPClaimsUtility.AuthenticateFormsUser(SPAlternateUrl.ContextUri, username, password)) { return(new LoginResult { ErrorCode = LoginErrorCode.PasswordNotMatch, Message = "PasswordNotMatch" }); } return(new LoginResult { ErrorCode = LoginErrorCode.NoError, CookieName = SessionAuthenticationModule.CookieHandler.Name, TimeoutSeconds = SessionAuthenticationModule.CookieHandler.PersistentSessionLifetime.Value.Seconds, FedAuth = HttpContext.Current.Response.Cookies.Get(SessionAuthenticationModule.CookieHandler.Name).Value }); } catch (Exception ex) { string messge = ex.Message; return(new LoginResult { ErrorCode = LoginErrorCode.Exception, Message = ex.Message }); } }
protected void Button1_Click(object sender, EventArgs e) { bool status = SPClaimsUtility.AuthenticateFormsUser(Context.Request.UrlReferrer, txtUserName.Text, txtPassword.Text); if (!status) { lblError.Text = "Error en password o nombre de usuario."; } else { if (Context.Request.QueryString.Keys.Count > 1) { Response.Redirect(Context.Request.QueryString["Source"].ToString()); } else { Response.Redirect(Context.Request.QueryString["ReturnUrl"].ToString()); } } }
public string GetUrlPublic(string token, string urlRedirect) { string urlRoot = SPContext.Current.Site.Url; if (!string.IsNullOrEmpty(token)) { try { byte[] tokenByte = Convert.FromBase64String(token); string tokenDecode = Encoding.UTF8.GetString(tokenByte); string validate = Common.ValidateJWT(tokenDecode); PayloadJWT payloadJWT = JsonConvert.DeserializeObject <PayloadJWT>(validate); string tokenDecryp = string.IsNullOrEmpty(payloadJWT.hashpwd) ? "" : Common.doDecryptAES(payloadJWT.hashpwd); string user = payloadJWT.context.user.userName; string pass = ConfigurationManager.AppSettings["sqlAuth"] == "yes" ? $"{user}@123" : tokenDecryp; bool login = SPClaimsUtility.AuthenticateFormsUser(new Uri(urlRoot), user, pass); if (login) { WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.Redirect; WebOperationContext.Current.OutgoingResponse.Location = urlRedirect; var response = HttpContext.Current.Response; response.Cookies.Remove("token"); HttpCookie cookies = new HttpCookie("token") { Value = tokenDecode, //EncryptString(usrName + ":" + pwd); Expires = DateTime.Now.AddDays(1d) }; response.Cookies.Add(cookies); } else { WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.Forbidden; } } catch (Exception ex) { throw ex; } } return(""); }
public string GetToken(string user, string password) { string urlRoot = SPContext.Current.Site.Url; byte[] userByte = Convert.FromBase64String(user); string userDecode = Encoding.UTF8.GetString(userByte); byte[] passByte = Convert.FromBase64String(password); string passDecode = Encoding.UTF8.GetString(passByte); bool login = SPClaimsUtility.AuthenticateFormsUser(new Uri(urlRoot), userDecode, passDecode); if (login) { string token = Common.EncryptString(userDecode + ":" + passDecode); return(token); } else { return("Error:Invalid User or Password"); } }