/// <summary> /// Pre-execution filter. /// </summary> /// <remarks> /// This mechanism can be used to extract the authentication information. /// </remarks> public Task OnExecutingAsync(FunctionExecutingContext executingContext, CancellationToken cancellationToken) { var httpRequest = executingContext.Arguments.First().Value as HttpRequest; accessTokenStatus = ValidateToken(httpRequest).Status; return(Task.CompletedTask); }
public static ActionResult ReturnFailedResult(AccessTokenStatus status) { switch (status) { case AccessTokenStatus.NoToken: return((ActionResult) new BadRequestResult()); case AccessTokenStatus.Expired: return((ActionResult) new UnauthorizedResult()); case AccessTokenStatus.Error: return((ActionResult) new BadRequestResult()); default: return((ActionResult) new NotFoundResult()); } }
public AccessTokenValidationResult(AccessTokenStatus status = AccessTokenStatus.Invalid, string message = "", IDictionary <string, object> claims = null) { Status = status; Message = message; Claims = claims; }
public LoginStatus Login() { Session session = new Session(); session.CreateSession(); FacebookSession = session; LoginStatus loginStatus; string Postdata = ""; string ResponseLogin = ""; try { if (facebookStatics.IssCookie) { session.http.AddHeader("cookie", facebookStatics.cookie); ResponseLogin = session.http.Get(LoginFBUrl).ToString(); { if (ResponseLogin.Contains("name=\"xc_message\"")) { loginStatus = LoginStatus.SUCCESS; return(loginStatus); } else { loginStatus = LoginStatus.ERROR; return(loginStatus); } } } string ResponseLoginPage = session.http.Get(LoginFBUrl).ToString(); session.InitParamsCodeLogin(ResponseLoginPage); ResponseLoginPage = ""; Postdata = $"lsd={session.lsd}&jazoest={session.jazoest}&m_ts={session.m_ts}&li={session.li}&try_number=0&unrecognized_tries=0&email={facebookStatics.uid}&pass={facebookStatics.pass}&login=%C4%90%C4%83ng+nh%E1%BA%ADp"; session.AddParamsLogin(Postdata); //Postdata = System.Net.WebUtility.UrlEncode(Postdata); ResponseLogin = session.http.Post(_svurl, Postdata, "application/x-www-form-urlencoded").ToString(); string nh = ""; if (facebookStatics.tfa == null) { loginStatus = LoginStatus.SUCCESS; } if (ResponseLogin.Contains("checkpointSubmitButton")) { nh = AppExtension.RegexByNameHtml(ResponseLogin, "nh", 1); session.fb_dtsg = AppExtension.RegexByNameHtml(ResponseLogin, "fb_dtsg", 1); string _2facode = AppExtension.tfacode(facebookStatics.tfa); session.jazoest = AppExtension.RegexByNameHtml(ResponseLogin, "jazoest", 1); Postdata = $"fb_dtsg={session.fb_dtsg}&jazoest={session.jazoest}&checkpoint_data=&approvals_code={_2facode}&codes_submitted=0&submit%5BSubmit+Code%5D=G%E1%BB%ADi+m%C3%A3&nh={nh}"; ResponseLogin = session.http.PostUrlEncoded(_mbasic_checkpoint_uri, Postdata).ToString(); Postdata = $"fb_dtsg={session.fb_dtsg}&jazoest={session.jazoest}&checkpoint_data=&name_action_selected=save_device&submit%5BContinue%5D=Ti%E1%BA%BFp+t%E1%BB%A5c&nh={nh}"; ResponseLogin = session.http.PostUrlEncoded(_mbasic_checkpoint_uri, Postdata).ToString(); if (ResponseLogin.Contains("checkpointSubmitButton")) { Postdata = $"fb_dtsg={session.fb_dtsg}&jazoest={session.jazoest}&checkpoint_data=&submit%5BContinue%5D=Ti%E1%BA%BFp+t%E1%BB%A5c&nh=" + nh; ResponseLogin = session.http.PostUrlEncoded(_mbasic_checkpoint_uri, Postdata).ToString(); Postdata = $"fb_dtsg={session.fb_dtsg}&jazoest={session.jazoest}&checkpoint_data=&submit%5BThis+was+me%5D=%C4%90%C3%A2y+l%C3%A0+t%C3%B4i&nh=" + nh; ResponseLogin = session.http.PostUrlEncoded(_mbasic_checkpoint_uri, Postdata).ToString(); Postdata = $"fb_dtsg={session.fb_dtsg}&jazoest={session.jazoest}&checkpoint_data=&name_action_selected=save_device&submit%5BContinue%5D=Ti%E1%BA%BFp+t%E1%BB%A5c&nh=" + nh; ResponseLogin = session.http.PostUrlEncoded(_mbasic_checkpoint_uri, Postdata).ToString(); } else { loginStatus = LoginStatus.SUCCESS; } if (ResponseLogin.Contains("verification_method")) { loginStatus = LoginStatus.CHECKPOINT; } else { loginStatus = LoginStatus.SUCCESS; } } else { loginStatus = LoginStatus.WRONG_PASS; } } catch { loginStatus = LoginStatus.ERROR; return(loginStatus); } finally { AccessTokenStatus accessTokenStatus = LoginAutGetToken(); if (accessTokenStatus == AccessTokenStatus.SUCCESS) { facebookStatics.cookie = session.http.Cookies.ToString(); loginStatus = LoginStatus.SUCCESS; } else { loginStatus = LoginStatus.ERROR; } FacebookSession = session; session.Dispose(); Postdata = ""; ResponseLogin = ""; } return(loginStatus); }