示例#1
0
        public ResultMessageEntity GenerateToken(AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            try
            {
                var claims = new[] {
                    new Claim(JwtRegisteredClaimNames.Sub, authenticationMsgEntity.Username),
                    new Claim(JwtRegisteredClaimNames.Jti, authenticationMsgEntity.PartnerKey)
                };

                var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("ThisismySecretKey"));
                var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256);
                var issuer      = "local.com";

                var token = new JwtSecurityToken(issuer, issuer, claims: claims, expires: DateTime.UtcNow.AddMinutes(10), signingCredentials: credentials);
                authenticationMsgEntity.TokenDetail = new JwtSecurityTokenHandler().WriteToken(token);
            }
            catch (Exception ex)
            {
                return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "Error while generating token", authenticationServiceErrorCodes.TokenGenerationUnexpectedError));
            }

            return(new ResultMessageEntity()
            {
                ResultStatus = ResultStatus.Success
            });
        }
示例#2
0
 public PartnerKeyDetailsDAO MapPartnerKeyDetailsDAO(AuthenticationReqMsgEntity authenticationReqMsgEntity)
 {
     return(new PartnerKeyDetailsDAO()
     {
         username = authenticationReqMsgEntity.Username,
         password = authenticationReqMsgEntity.Password,
         partnerkey = authenticationReqMsgEntity.PartnerKey
     });
 }
        public ResultMessageEntity VerifyGetAuthenticationDetail(AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            IParallelExecution <AuthenticationReqMsgEntity> parallelExecution = new ParallelExecution <AuthenticationReqMsgEntity>();

            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = IsPartnerValid, IsParallel = true, RequestObject = authenticationMsgEntity
            });
            return(parallelExecution.Execute());
        }
示例#4
0
        public ResultMessageEntity ProcessorGetAuthenticationDetail(AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            IParallelExecution <AuthenticationReqMsgEntity> parallelExecution = new ParallelExecution <AuthenticationReqMsgEntity>();

            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = GenerateToken, IsParallel = true, RequestObject = authenticationMsgEntity
            });

            return(parallelExecution.Execute());
        }
 public ResultMessageEntity IsPartnerKeyValid(AuthenticationReqMsgEntity authenticationMsgEntity)
 {
     if (authenticationMsgEntity.PartnerKey.IsEmpty())
     {
         return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "PartnerKey is empty", authenticationServiceErrorCodes.PartnerKeyIsEmpty));
     }
     return(new ResultMessageEntity {
         ResultStatus = ResultStatus.Success
     });
 }
        public AuthenticationReqMsgEntity MapAuthenticationMsgEntity(AuthenticationModel authenticationModel)
        {
            AuthenticationReqMsgEntity authenticationReqMsgEntity = new AuthenticationReqMsgEntity
            {
                Password   = authenticationModel.Password,
                PartnerKey = authenticationModel.PartnerKey,
                Username   = authenticationModel.Username
            };

            return(authenticationReqMsgEntity);
        }
 public ResultMessageEntity IsAuthenticationReqMsgEntityValid(AuthenticationReqMsgEntity authenticationMsgEntity)
 {
     if (authenticationMsgEntity == null)
     {
         return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "AuthenticationReqMsgEntity is empty", authenticationServiceErrorCodes.AuthenticationReqMsgEntityIsEmpty));
     }
     return(new ResultMessageEntity()
     {
         ResultStatus = ResultStatus.Success
     });
 }
 public ResultMessageEntity IsUserNameValid(AuthenticationReqMsgEntity authenticationMsgEntity)
 {
     if (authenticationMsgEntity.Username.IsEmpty())
     {
         return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "Username is empty", authenticationServiceErrorCodes.UsernameIsEmpty));
     }
     if (authenticationMsgEntity.Username.IsEmpty())
     {
         return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "Username is empty", authenticationServiceErrorCodes.UsernameIsEmpty));
     }
     return(new ResultMessageEntity {
         ResultStatus = ResultStatus.Success
     });
 }
        public ActionResult Post([FromBody] AuthenticationModel authenticationModel)
        {
            AuthenticationResModel authenticationResModel = null;

            try
            {
                AuthenticationReqMsgEntity authenticationMsgEntity = authenticationServiceApiMapper.MapAuthenticationMsgEntity(authenticationModel);
                ResultMessageEntity        resultMessageEntity     = authenticationService.GetAuthenticationDetail(authenticationMsgEntity);
                authenticationResModel = authenticationServiceApiMapper.MapAuthenticationModel(resultMessageEntity, authenticationMsgEntity);
            }
            catch (Exception ex)
            {
            }

            return(StatusCode((int)HttpStatusCode.OK, authenticationResModel));
        }
        public ResultMessageEntity IsPartnerValid(AuthenticationReqMsgEntity authenticationReqMsgEntity)
        {
            PartnerKeyDetailsDAO        partnerKeyDetailsDAO      = authenticationServiceMapper.MapPartnerKeyDetailsDAO(authenticationReqMsgEntity);
            List <PartnerKeyDetailsDAO> validPartnerKeyDetailsDAO = authenticationServiceRepository.GetPartnerDetail(partnerKeyDetailsDAO);

            if (!validPartnerKeyDetailsDAO.AnyWithNullCheck())
            {
                return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "Partner is Invalid", authenticationServiceErrorCodes.PartnerNotFound));
            }
            if (validPartnerKeyDetailsDAO.Count > 1)
            {
                return(ColdFishServiceOpenApiUtility.GetResultMessageEntity(ResultStatus.Fail, "To Many partners", authenticationServiceErrorCodes.PartnerNotFound));
            }
            return(new ResultMessageEntity {
                ResultStatus = ResultStatus.Success
            });
        }
        public ResultMessageEntity ValidGetAuthenticationDetail(AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            IParallelExecution <AuthenticationReqMsgEntity> parallelExecution = new ParallelExecution <AuthenticationReqMsgEntity>();

            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = IsAuthenticationReqMsgEntityValid, RequestObject = authenticationMsgEntity
            });
            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = IsUserNameValid, RequestObject = authenticationMsgEntity, IsParallel = true
            });
            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = IsPasswordValid, RequestObject = authenticationMsgEntity, IsParallel = true
            });
            parallelExecution.Add(new ParallelAction <AuthenticationReqMsgEntity> {
                Activity = IsPartnerKeyValid, RequestObject = authenticationMsgEntity, IsParallel = true
            });
            return(parallelExecution.Execute());
        }
        public ResultMessageEntity GetAuthenticationDetail(AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            ResultMessageEntity resultMessageEntity;

            //Set up

            //Validator
            resultMessageEntity = authenticationServiceValidator.ValidGetAuthenticationDetail(authenticationMsgEntity);
            if (resultMessageEntity.ResultStatus != ResultStatus.Success)
            {
                return(resultMessageEntity);
            }

            //Verifier
            resultMessageEntity = authenticationServiceVerifier.VerifyGetAuthenticationDetail(authenticationMsgEntity);
            if (resultMessageEntity.ResultStatus != ResultStatus.Success)
            {
                return(resultMessageEntity);
            }
            //Processor
            resultMessageEntity = authenticationServiceProcessors.ProcessorGetAuthenticationDetail(authenticationMsgEntity);
            if (resultMessageEntity.ResultStatus != ResultStatus.Success)
            {
                return(resultMessageEntity);
            }

            //PostProcessor
            ResultMessageEntity postResultMessageEntity = authenticationServicePostProcessors.PostProcessorGetAuthenticationDetail(authenticationMsgEntity);

            if (postResultMessageEntity.ResultStatus != ResultStatus.Success)
            {
                return(resultMessageEntity);
            }

            return(resultMessageEntity);
        }
        public AuthenticationResModel MapAuthenticationModel(ResultMessageEntity resultMessageEntity, AuthenticationReqMsgEntity authenticationMsgEntity)
        {
            AuthenticationResModel authenticationResModel = new AuthenticationResModel
            {
                Token         = authenticationMsgEntity.TokenDetail,
                ResultMessage = resultMessageEntity.MessageEntity.ToResultMessageModel()
            };

            return(authenticationResModel);
        }
示例#14
0
 public ResultMessageEntity PostProcessorGetAuthenticationDetail(AuthenticationReqMsgEntity authenticationMsgEntity)
 {
     return(new ResultMessageEntity());
 }