//[LoggerOff] public IActionResult AuthorizeByToken(AuthorizeByTokenRequest request, [FromHeader] string Dev) { var response = new SingleResponse <AuthorizationResponse>(); var result = new AuthorizationResponse(); var loginInfo = new LoginInfo(); string sessionId = ""; byte lang = 1; if (!string.IsNullOrEmpty(Request.Headers["SessionId"])) { sessionId = Request.Headers["SessionId"]; } loginInfo.UserName = _cache.Get <string, string>(sessionId + "_UserName"); loginInfo.IpAddress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); XBS.SourceType sourceType = XBS.SourceType.NotSpecified; if (!string.IsNullOrEmpty(Request.Headers["SourceType"])) { Enum.TryParse(Request.Headers["SourceType"], out sourceType); } if (!string.IsNullOrEmpty(Request.Headers["Language"])) { byte.TryParse(Request.Headers["Language"], out lang); } if (sourceType == XBS.SourceType.AcbaOnline) { loginInfo.PlatformType = PlatformType.OnlineBanking; } else if (sourceType == XBS.SourceType.MobileBanking) { loginInfo.PlatformType = PlatformType.MobileBanking; } loginInfo.IpAddress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); if (!string.IsNullOrEmpty(request.OTP)) { loginInfo.OTP = request.OTP; } //Օպերացիոն համակարգ loginInfo.AdditionalDetails = new Dictionary <string, string>(); if (!string.IsNullOrEmpty(Request.HttpContext.Request.Headers["Dev"])) { loginInfo.AdditionalDetails.Add("OS", Request.HttpContext.Request.Headers["Dev"]); } else { loginInfo.AdditionalDetails.Add("OS", "0"); } LoginResult loginResult = _cache.Get <string, LoginResult>(sessionId + "_LoginResult"); if (loginResult != null && loginResult.IsAuthorized) { var aoUserData = _xbSecurity.AuthorizeUserByToken(loginInfo, loginResult, lang, request.HostName); if (aoUserData.AuthorizationResult.IsAuthorized) { response.ResultCode = ResultCodes.normal; result.SessionId = aoUserData.SessionID; result.PasswordChangeRequirement = aoUserData.ChangeRequirement; result.UserPermission = aoUserData.Permission; result.IsLastConfirmer = aoUserData.IsLastConfirmer; result.SecondConfirmRequirement = aoUserData.SecondConfirm; result.UserName = aoUserData.UserName; var customerMainData = _xbService.GetCustomerMainData(ulong.Parse(aoUserData.CustomerNumber)); result.IsEmployee = _xbService.IsEmployee(ulong.Parse(aoUserData.CustomerNumber)); _cache.Set(sessionId + "_IsEmployee", result.IsEmployee); result.FullName = customerMainData.CustomerDescription; result.FullNameEnglish = customerMainData.CustomerDescriptionEng; result.CustomerType = (XBS.CustomerTypes)customerMainData.CustomerType; if (!Convert.ToBoolean(_config["TestVersion"]) && !(result.IsEmployee || loginInfo.UserName == "AcbaA1995" || loginInfo.UserName == "aghazaryan1994" || loginInfo.UserName == "ani-arshakyan" || loginInfo.UserName == "anna5825" || loginInfo.UserName == "anna95" || loginInfo.UserName == "aram280882" || loginInfo.UserName == "aranar" || loginInfo.UserName == "Arman" || loginInfo.UserName == "Arus123" || loginInfo.UserName == "brutyand" || loginInfo.UserName == "DAvinchi123" || loginInfo.UserName == "em805ser16" || loginInfo.UserName == "Ernrk96" || loginInfo.UserName == "gevorgyanara1" || loginInfo.UserName == "Irina27" || loginInfo.UserName == "irinak" || loginInfo.UserName == "Ishkhan" || loginInfo.UserName == "lightning3" || loginInfo.UserName == "mariannas" || loginInfo.UserName == "maroyanlaura" || loginInfo.UserName == "s_tigran" || loginInfo.UserName == "shushanikb" || loginInfo.UserName == "s_tigran" || loginInfo.UserName == "sipan91" || loginInfo.UserName == "Yevginemuradyan" || loginInfo.UserName == "helix" || loginInfo.UserName == "babkenmakaryan" || loginInfo.UserName == "DVahagn" || loginInfo.UserName == "Atlanta" || loginInfo.UserName == "asatryantigran" || loginInfo.UserName == "mardumyan" || loginInfo.UserName == "vyerkanian" || loginInfo.UserName == "manushak84" || loginInfo.UserName == "inga-helix" || loginInfo.UserName == "helix_inga" || loginInfo.UserName == "aram-helix" || loginInfo.UserName == "seynyan" || loginInfo.UserName == "artezia1" || loginInfo.UserName == "artezia4" || loginInfo.UserName == "sevakn" || loginInfo.UserName == "ars1313" || loginInfo.UserName == "eliza" || loginInfo.UserName == "HovhannisyanSuren" || loginInfo.UserName == "artyomg" || loginInfo.UserName == "arminetumanyan" || loginInfo.UserName == "lusine_k" || loginInfo.UserName == "Geghamva" || loginInfo.UserName == "goharg" || loginInfo.UserName == "taguhi" || loginInfo.UserName == "marinka" || loginInfo.UserName == "gy.bakhshyan" || loginInfo.UserName == "S19962504" || loginInfo.UserName == "lilithov" || loginInfo.UserName == "GarMar" || loginInfo.UserName == "aylefO" || loginInfo.UserName == "NarekMMMM" || loginInfo.UserName == "956095St" || loginInfo.UserName == "Mikhail" || loginInfo.UserName == "DavitM" || loginInfo.UserName == "Ripa333Ripa" || loginInfo.UserName == "KGogA" || loginInfo.UserName == "arman.mur" || loginInfo.UserName == "hakob13246" || loginInfo.UserName == "samvel.sairitsyan" || loginInfo.UserName == "miliart" || loginInfo.UserName == "aniyer" || loginInfo.UserName == "Hush.Grig" || loginInfo.UserName == "AniPog" || loginInfo.UserName == "DianaA" || loginInfo.UserName == "lil.ghevondyan" || loginInfo.UserName == "AstghikBur" || loginInfo.UserName == "Anuta" || loginInfo.UserName == "sairitsyan" || loginInfo.UserName == "anigrig" || loginInfo.UserName == "Davit555" || loginInfo.UserName == "Dvahagn" || loginInfo.UserName == "tigranga1" || loginInfo.UserName == "arus123" || loginInfo.UserName == "Sergeyhak" || loginInfo.UserName == "i.arto" || loginInfo.UserName == "i.arto1" || loginInfo.UserName == "kartshikyan" )) { response.ResultCode = ResultCodes.validationError; response.Description = "Դուք չունեք համակարգ մուտք գործելու հասանելիություն։"; } else { response.Result = result; } try { _xbService.SendReminderNote(ulong.Parse(aoUserData.CustomerNumber)); } catch (Exception) { /////// //response.ResultCode = ResultCodes.failed; //response.Description = ex.Message; } } else { response.ResultCode = ResultCodes.validationError; response.Description = aoUserData.AuthorizationResult.DescriptionAM + " " + aoUserData.AuthorizationResult.Description; } } else { response.ResultCode = ResultCodes.notAuthorized; } return(ResponseExtensions.ToHttpResponse(response)); }
//[LoggerOff] public IActionResult AuthorizeByPassword(AuthorizeByPasswordRequest request) { if (ModelState.IsValid) { SingleResponse <string> response = new SingleResponse <string>(); byte language = 1; var loginInfo = new LoginInfo(); //Օգտագործող if (!string.IsNullOrEmpty(request.UserName)) { loginInfo.UserName = request.UserName; } //Գաղտնաբառ if (!string.IsNullOrEmpty(request.Password)) { loginInfo.Password = Utils.GetSHA1Hash(request.Password); } XBS.SourceType sourceType = XBS.SourceType.NotSpecified; if (!string.IsNullOrEmpty(Request.Headers["SourceType"])) { Enum.TryParse(Request.Headers["SourceType"], out sourceType); } if (!string.IsNullOrEmpty(Request.Headers["Language"])) { byte.TryParse(Request.Headers["Language"], out language); } if (sourceType == XBS.SourceType.AcbaOnline) { loginInfo.PlatformType = PlatformType.OnlineBanking; } else if (sourceType == XBS.SourceType.MobileBanking) { loginInfo.PlatformType = PlatformType.MobileBanking; } loginInfo.IpAddress = Request.HttpContext.Connection.RemoteIpAddress.ToString(); loginInfo.ForUnlocking = request.ForUnlocking; //if (!string.IsNullOrEmpty(Request.HttpContext.Request.Headers["Dev"])) //{ // loginInfo.AdditionalDetails.Add("OS", Request.HttpContext.Request.Headers["Dev"]); //} //else //{ // loginInfo.AdditionalDetails.Add("OS", "0"); //} var aoUserData = _xbSecurity.AuthorizeUserByUserPassword(loginInfo, language, request.HostName); if (aoUserData.AuthorizationResult.IsAuthorized) { string sessionId = Guid.NewGuid().ToString(); _cache.Set(sessionId + "_UserName", loginInfo.UserName); _cache.Set(sessionId + "_LoginResult", aoUserData.AuthorizationResult); if (!string.IsNullOrEmpty(Request.Headers["SourceType"])) { Enum.TryParse(Request.Headers["SourceType"], out sourceType); } _cache.Set(sessionId + "_SourceType", sourceType); response.ResultCode = ResultCodes.normal; response.Result = sessionId; } else { response.ResultCode = ResultCodes.validationError; response.Description = aoUserData.AuthorizationResult.DescriptionAM + " " + aoUserData.AuthorizationResult.Description; } return(ResponseExtensions.ToHttpResponse(response)); } else { return(ValidationError.GetValidationErrorResponse(ModelState)); } }