Пример #1
0
        public Reply List([FromBody] SecurityRequest model)
        {
            Reply oR = new UtilitiesChat.Models.WS.Reply();

            oR.result = 0;
            if (!VerifyToken(model))
            {
                oR.message = "Método no permitido";
                return(oR);
            }

            using (ChatDBEntities db = new ChatDBEntities())
            {
                List <ListRoomsResponce> lstRoomsResponce = (from d in db.room
                                                             where d.idState == 1
                                                             orderby d.name
                                                             select new ListRoomsResponce {
                    Name = d.name,
                    Description = d.description,
                    Id = d.id
                }).ToList();
                oR.data = lstRoomsResponce;
            }
            oR.result = 1;

            return(oR);
        }
Пример #2
0
        private void GetDataInit()
        {
            List <ListRoomResponse> lst = new List <ListRoomResponse>();

            //oUserSession

            SecurityRequest oSecurityRequest = new SecurityRequest();

            oSecurityRequest.AccessToken = Session.oUser.AccessToken;
            Reply       oReply       = new Reply();
            RequestUtil oRequestUtil = new RequestUtil();

            oReply = oRequestUtil.Execute <SecurityRequest>(Constants.Url.Rooms, "post", oSecurityRequest);
            JavaScriptSerializer js = new JavaScriptSerializer();

            lst = js.Deserialize <List <ListRoomResponse> >(js.Serialize(oReply.data));

            cboRooms.DataSource    = lst;
            cboRooms.DisplayMember = "Name";
            cboRooms.ValueMember   = "id";
            cboRooms.Refresh();

            //obtener mensajes del chat
            GetMessages();
        }
Пример #3
0
        public BaseApiResponse <string> Post(SecurityRequest request)
        {
            var response = new BaseApiResponse <string>();

            try
            {
                bool isSuccess = false;

                var caseNum = request.RequestData.FromHatsString <ConfirmLendingRequest>();

                var waitingConfirmCase = _mortgageBll.QueryWaitingLending(caseNum.CaseNum);
                if (waitingConfirmCase != null)
                {
                    isSuccess = _lendingBll.SubmitLending(waitingConfirmCase, waitingConfirmCase.CreateUser);
                }
                if (isSuccess)
                {
                    response.Status = StatusEnum.Success.ToString();
                }
                else
                {
                    response.Status  = StatusEnum.Failed.ToString();
                    response.Message = "进入放款失败";
                }
            }
            catch (Exception ex)
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = ex.Message;
            }

            return(response);
        }
Пример #4
0
        public async void LogIn_Should_Call_IFirebaseAuthenticationProvider_SignIn()
        {
            var request = new SecurityRequest();
            await _service.LogIn(request);

            await _provider.Received(1).SignIn(request);
        }
        public async Task <ActionResult> Post([FromBody] SecurityRequest securityRequest)
        {
            Logger.LogInformation($"Save Bonds request ::: {JsonConvert.SerializeObject(securityRequest)}");
            //if (securityRequest.SecurityType.ToUpper() != "TBILL" || securityRequest.SecurityType.ToUpper() != "BOND") return BadRequest("please pass TBILL or BOND for security type");
            //if (securityRequest.TransactionType.ToUpper() != "BUY" || securityRequest.SecurityType.ToUpper() != "SELL") return BadRequest("please pass BUY or SELL for Transaction Type");
            var postSecurity = new PostSecurities();

            try
            {
                var response = await postSecurity.PostBuySell(securityRequest, Configuration, Logger);

                if (response.ResponseCode == 0)
                {
                    return(Ok(response));
                }
                else if (response.ResponseCode == 400)
                {
                    return(BadRequest(response));
                }
                else
                {
                    return(StatusCode(500));
                }
            }
            catch (Exception ex)
            {
                Logger.LogError(ex, $"unable to Purchase/Sell security ::: {JsonConvert.SerializeObject(Response)}");
                return(StatusCode(500));
            }
        }
Пример #6
0
        public SecurityResponse GetToken()
        {
            var requestSecurity  = new SecurityRequest();
            var responseSecurity = new SecurityResponse();

            requestSecurity.email      = _username;
            requestSecurity.passphrase = _password;

            try
            {
                // Get the token for use the Integration API
                using (HttpClient apiRequest = new HttpClient())
                {
                    apiRequest.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    // No specific resource needs to be set
                    Task <HttpResponseMessage> response = apiRequest.PostAsync(_securityUrl, new StringContent(JsonConvert.SerializeObject(requestSecurity), Encoding.UTF8, "application/json"));

                    // If response is Ok, set the authorization transaction
                    if (response.Result.IsSuccessStatusCode)
                    {
                        responseSecurity = JsonConvert.DeserializeObject <SecurityResponse>(response.Result.Content.ReadAsStringAsync().Result);
                    }
                }
            }
            catch (Exception exp)
            {
                //Logger
            }

            return(responseSecurity);
        }
Пример #7
0
        private AddBaseAuditByLendingResponse PushToHats(string caseNum)
        {
            string hatsHost = ConfigurationManager.AppSettings["hats_host"];

            var securityRequest = new SecurityRequest()
            {
                RequestData = caseNum.ToHatsString()
            };

            var request = new HttpItem()
            {
                URL          = string.Format("{0}/api/BaseAuditPush/AddBaseAuditByLending", hatsHost),
                Method       = "post",
                ContentType  = "application/json; charset=utf-8",
                Postdata     = securityRequest.ToJson(),
                Accept       = "text/json",
                PostEncoding = Encoding.UTF8
            };

            var httpResult = new HttpHelper().GetHtml(request);

            if (httpResult.StatusCode == HttpStatusCode.OK)
            {
                return(Newtonsoft.Json.JsonConvert.DeserializeObject <AddBaseAuditByLendingResponse>(httpResult.Html));
            }
            else
            {
                return(new AddBaseAuditByLendingResponse()
                {
                    IsSuccess = false,
                    Message = "Hats接口调用错误"
                });
            }
        }
Пример #8
0
        public BaseApiResponse <string> Post(SecurityRequest request)
        {
            var response = new BaseApiResponse <string>();

            try
            {
                HatsCase hatsCase = request.RequestData.FromHatsString <HatsCase>();

                if (hatsCase.IsNotNull())
                {
                    var result = new HatsCaseValidator().Validate(hatsCase);
                    if (result.IsNotValid())
                    {
                        response.Status  = StatusEnum.Failed.ToString();
                        response.Message = result.GetErrors().First().Message;
                        return(response);
                    }

                    BaseAudit pendingCase = _baseAuditBll.QueryHatsPending(hatsCase.CaseNum);
                    if (pendingCase.IsNotNull())
                    {
                        pendingCase.EarnestMoney = hatsCase.EarnestMoney;
                        pendingCase.CaseMode     = hatsCase.TransferType;
                        pendingCase.ThirdParty   = hatsCase.ThirdParty;

                        pendingCase.ThirdPartyAuditAmount = hatsCase.TransferAmount;
                        pendingCase.ThirdPartyAuditRate   = hatsCase.TransferInterest;
                        pendingCase.ThirdPartyAuditTerm   = hatsCase.TransferTerm;

                        var isSuccess = _mortgageBll.IntoMortgage(pendingCase, pendingCase.CreateUser);
                        if (isSuccess)
                        {
                            response.Status = StatusEnum.Success.ToString();
                        }
                        else
                        {
                            response.Status  = StatusEnum.Failed.ToString();
                            response.Message = "进入签约失败";
                        }
                    }
                    else
                    {
                        response.Status  = StatusEnum.Failed.ToString();
                        response.Message = "数据已更改";
                    }
                }
                else
                {
                    response.Status  = StatusEnum.Failed.ToString();
                    response.Message = "案件信息为空";
                }
            }
            catch (System.Exception ex)
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = ex.Message;
            }

            return(response);
        }
        public void TestCheckAccess()
        {
            SecurityRequest securityRequest = new SecurityRequest()
            {
                Type = "Administrator"
            };

            HP.TS.Devops.Security.SecurityAction.CheckAccess(this.ConnectString, securityRequest, new StackFrame(1).GetMethod());
        }
Пример #10
0
        public async void Register_Should_Call_ISecurityService_Register()
        {
            var request = new SecurityRequest();
            var service = Substitute.For <ISecurityService>();

            await _controller.Register(request, service);

            await service.Received(1).Register(request);
        }
        public async Task <SecurityResponse> SignIn(SecurityRequest details)
        {
            var url     = $"{_endpoint}:signInWithPassword";
            var content = CreateAuthenticationRequest(details);

            var request  = _requestProvider.CreatePostRequest(url, content, queries: _defaultQuery);
            var response = await _apiClient.Send <SecurityResponse>(request);

            return(response);
        }
        private JObject CreateAuthenticationRequest(SecurityRequest request)
        {
            var serializer = new JsonSerializer {
                ContractResolver = new CamelCasePropertyNamesContractResolver()
            };
            var obj = JObject.FromObject(request, serializer);

            obj["returnSecureToken"] = true;
            return(obj);
        }
Пример #13
0
        private static string CreatePasswordBase(SecurityRequest request)
        {
            var builder = new StringBuilder();

            builder.Append(request.ServiceName);
            builder.Append(":");
            builder.Append(request.CommonName);
            builder.Append(":");
            builder.Append("v").Append(request.Version);
            return(builder.ToString());
        }
Пример #14
0
        public void ShouldGenerateIdempotentPass_WhenPassGenerateExecuteTwice(string service, string name,
                                                                              string masterpwd)
        {
            var request = new SecurityRequest {
                ServiceName = service, CommonName = name, MasterPassword = masterpwd
            };
            var passwordService = new PasswordService(new PasswordHashGenerator());

            var firstResult  = passwordService.Generate(request).GetAwaiter().GetResult();
            var secondResult = passwordService.Generate(request).GetAwaiter().GetResult();

            Assert.Equal(firstResult.GeneratedPassword, secondResult.GeneratedPassword);
        }
Пример #15
0
        public async Task <SecurityResult> Generate(SecurityRequest passwordRequest)
        {
            var passwordHash = await _hashGenerator.GenerateHash(passwordRequest);

            var passwordDict = GetDict(passwordRequest);

            var generatePassword = GeneratePasswordFromHash(passwordHash, passwordDict);

            return(new SecurityResult
            {
                GeneratedPassword = generatePassword.Substring(0, passwordRequest.Length)
            });
        }
Пример #16
0
        public void ShouldGenerateIdempotentHash_WhenHashGenerateExecuteTwice()
        {
            var request = new SecurityRequest
            {
                ServiceName = "test", CommonName = "user", MasterPassword = "******"
            };
            var hashGenerator = new PasswordHashGenerator();

            var firstResult  = hashGenerator.GenerateHash(request).GetAwaiter().GetResult();
            var secondResult = hashGenerator.GenerateHash(request).GetAwaiter().GetResult();

            Assert.Equal(firstResult, secondResult);
        }
Пример #17
0
        public async Task <string> GenerateHash(SecurityRequest request)
        {
            var masterPasswordNumberGenerator = new MasterPasswordNumberGenerator(request.MasterPassword);
            var encoder = new ScryptEncoder(
                iterationCount: DefaultIterationCount,
                blockSize: DefaultBlockSize,
                threadCount: DefaultThreadCount,
                saltGenerator: masterPasswordNumberGenerator);
            var passwordBase = CreatePasswordBase(request);

            var passwordHash = await Task.Run(() => encoder.Encode(passwordBase));

            return(passwordHash.Split('$').Last());
        }
        public ActionResult Index()
        {
            this.GetSession();

            List <ListContadoresResponse> list = new List <ListContadoresResponse>();
            SecurityRequest oSecurityRequest   = new SecurityRequest();

            oSecurityRequest.Token = oUserSession.accessToken;

            RequestUtil oRequestUtil = new RequestUtil();
            Reply       oR           = oRequestUtil.Execute <SecurityRequest>(Constants.Url.CONTADORES, "post", oSecurityRequest);

            list = JsonConvert.DeserializeObject <List <ListContadoresResponse> >(JsonConvert.SerializeObject(oR.data));


            return(View(list));
        }
Пример #19
0
 public Task <SecurityResponse> Security(SecurityRequest request)
 {
     try
     {
         using (var session = this.Database.CreateSession())
         {
             var responseBuilder = new SecurityResponseBuilder(session, request);
             var response        = responseBuilder.Build();
             return(Task.FromResult(response));
         }
     }
     catch (Exception e)
     {
         this.Logger.LogError(e, "SecurityRequest {request}", request);
         throw;
     }
 }
Пример #20
0
        public void ShouldNotGenerateIdempotentHash_WhenDifferentVersion()
        {
            var request = new SecurityRequest
            {
                ServiceName = "test", CommonName = "user", MasterPassword = "******", Version = 1
            };
            var request2 = new SecurityRequest
            {
                ServiceName = "test", CommonName = "user", MasterPassword = "******", Version = 2
            };
            var hashGenerator = new PasswordHashGenerator();

            var firstResult  = hashGenerator.GenerateHash(request).GetAwaiter().GetResult();
            var secondResult = hashGenerator.GenerateHash(request2).GetAwaiter().GetResult();

            Assert.NotEqual(firstResult, secondResult);
        }
Пример #21
0
        // GET: Lobby
        public ActionResult Index()
        {
            GetSession();

            List <ListRoomsResponse> lst = new List <ListRoomsResponse>();

            SecurityRequest oSecurityRequest = new SecurityRequest();

            oSecurityRequest.AccessToken = oUserSession.AccessToken;

            RequestUtil oRequestUtil = new RequestUtil();

            Reply oReply = oRequestUtil.Execute <SecurityRequest>(Constants.Url.ROOMS, "post", oSecurityRequest);

            lst = JsonConvert.DeserializeObject <List <ListRoomsResponse> >(JsonConvert.SerializeObject(oReply.data));

            return(View(lst));
        }
Пример #22
0
        protected bool VerifyToken(SecurityRequest model)
        {
            using (ChatDBEntities db = new ChatDBEntities())
            {
                var oUser = db.user.Where(d => d.access_token == model.AccessToken).FirstOrDefault();

                if (oUser != null)
                {
                    oUserSession             = new UserResponse();
                    oUserSession.AccessToken = oUser.access_token;
                    oUserSession.City        = oUser.city;
                    oUserSession.Name        = oUser.name;
                    oUserSession.Id          = oUser.idUser;
                    return(true);
                }
            }
            return(false);
        }
Пример #23
0
        private static char[] GetDict(SecurityRequest passwordRequest)
        {
            var builder = new StringBuilder();

            if (passwordRequest.HasNumeric)
            {
                builder.Append(numericDict);
            }
            if (passwordRequest.HasLetters)
            {
                builder.Append(letterDict);
            }
            if (passwordRequest.HasSpecialSymbols)
            {
                builder.Append(symbolicDict);
            }
            return(builder.ToString().ToCharArray());
        }
Пример #24
0
 public ActionResult <SecurityResponse> Post([FromBody] SecurityRequest request) =>
 this.PolicyService.SyncPolicy.Execute(
     () =>
 {
     try
     {
         using (var session = this.DatabaseService.Database.CreateSession())
         {
             var responseBuilder = new SecurityResponseBuilder(session, request);
             var response        = responseBuilder.Build();
             return(response);
         }
     }
     catch (Exception e)
     {
         this.Logger.LogError(e, "SecurityRequest {request}", request);
         throw;
     }
 });
Пример #25
0
        // GET: Lobby
        public ActionResult Index()
        {
            GetSession();
            List <ListRoomResponse> lst = new List <ListRoomResponse>();

            //oUserSession

            SecurityRequest oSecurityRequest = new SecurityRequest();

            oSecurityRequest.AccessToken = oUserSession.AccessToken;
            Reply       oReply       = new Reply();
            RequestUtil oRequestUtil = new RequestUtil();

            oReply = oRequestUtil.Execute <SecurityRequest>(Constants.Url.Rooms, "post", oSecurityRequest);
            JavaScriptSerializer js = new JavaScriptSerializer();

            lst = js.Deserialize <List <ListRoomResponse> >(js.Serialize(oReply.data));

            return(View(lst));
        }
Пример #26
0
        public Response <SecurityResponse> ValidateUser(SecurityRequest request)
        {
            try
            {
                var messages = request.Validate();

                if (messages != null && messages.Count > 0)
                {
                    return(ResponseBadRequest(messages.ToList()));
                }

                if (request.User != _infoJWT.User ||
                    request.Password != _infoJWT.Password)
                {
                    return(ResponseBadRequest(new List <string> {
                        MessagesResponse.BadRequest
                    }));
                }

                var time = int.Parse(_infoJWT.TimeMin);

                var response = new SecurityResponse
                {
                    AccessToken = ManagerToken.GenerateToken(_infoJWT.Key, time, request.User),
                    Expiration  = DateTime.Now.AddMinutes(time),
                    TokenType   = "Bearer"
                };

                TokenJWT.Add(response);

                return(ResponseSuccess(new List <SecurityResponse> {
                    response
                }));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, $"Exception Method {nameof(ValidateUser)}");

                return(ResponseFail());
            }
        }
        public async void SignUp_Should_Call_IApiRequestProvider_CreatePostRequest()
        {
            JObject content = null;
            Dictionary <string, string> query = null;

            _requestProvider.CreatePostRequest(Arg.Any <string>(), Arg.Do <JObject>(a => content = a), Arg.Any <Dictionary <string, string> >(), Arg.Do <Dictionary <string, string> >(a => query = a), Arg.Any <Func <JObject, HttpContent> >());

            var request = new SecurityRequest
            {
                Email    = "email",
                Password = "******"
            };
            await _provider.SignUp(request);

            _requestProvider.Received(1).CreatePostRequest($"{_firebaseAuthEndpoint}/accounts:signUp", Arg.Any <JObject>(), Arg.Any <Dictionary <string, string> >(), Arg.Any <Dictionary <string, string> >(), null);

            content.Value <string>("email").Should().Be(request.Email);
            content.Value <string>("password").Should().Be(request.Password);
            content.Value <bool>("returnSecureToken").Should().BeTrue();

            query.Should().ContainKey("key");
            query["key"].Should().Be(_firebaseApiKey);
        }
Пример #28
0
 public SecurityResponseBuilder(ISession session, SecurityRequest securityRequest)
 {
     this.session = session;
     this.securityRequest = securityRequest;
 }
 public SecurityResponseBuilder(ISession session, SecurityRequest securityRequest, IAccessControlLists acls)
 {
     this.session         = session;
     this.securityRequest = securityRequest;
     this.acls            = acls;
 }
Пример #30
0
    public ITaskStatus requestSecurity(SecurityRequest srp)
    {
        emReplyMessage = null;
        //access to the message bus, of course parms grabbed from .config or data store
        enterpriseMessageBusInterface2 = new Bondedge.API(msgBus,rabbitUser,rabbitPwd);
        enterpriseMessageBusInterface2.RegisterClient(srp.GetUser(), Callback);
        

        //tranlsate client message to message bus message
        Domain.IRequest domainRequestMessage = OpenAPIToServiceBus.MessageTranslators.simpleToEnterpriseMessage(srp.Securities[0].Identifier, (int)srp.Securities[0].AsOfDate, 1.0);
        domainRequestMessage.SetID(srp.ID != Guid.Empty ? srp.ID : Guid.NewGuid());

       //place the message on the bus
        enterpriseMessageBusInterface2.SendRequest(domainRequestMessage);

        //<test> pass back success right now
        return new TaskStatus { Status = TASKSTATUS.Complete, Id = 1, ErrorCode = ERRORCODES.None, Message = "" };

    }
 public IActionResult Post([FromBody] SecurityRequest request)
 {
     return(Ok(_securityBL.ValidateUser(request)));
 }