예제 #1
0
        public UserCardInfoResponse GetCardInfo(int userId, string cardNumber, bool isVerify = false)
        {
            var response = new UserCardInfoResponse();

            try
            {
                var request = new UserInfoRequest()
                {
                    UserId     = userId,
                    CardNumber = cardNumber,
                    IsVerify   = isVerify
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic    = new Dictionary <string, string>();
                var url    = GetUrl(BusinessObjectPublicUser.RequestFunction.GetCardInfo);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status          = result.Status;
                    ResponseMessage = result.Message;
                    return(SerializerObject.ProtoBufDeserialize <UserCardInfoResponse>(result.ResponseData, client.Saltkey));
                }
                return(response);
            }
            catch (Exception exception)
            {
                Status          = 0;
                ResponseMessage = SetResponseMessage(exception);
                return(default(UserCardInfoResponse));
            }
        }
예제 #2
0
        public UserCardInfoResponse InsertUserCard(int userId, string card_numbers, bool setMainCard, string otp, string accountId, string fullName)
        {
            var response = new TransactionInfoResponse();

            try
            {
                var request = new UserInfoRequest()
                {
                    UserId      = userId,
                    CardNumber  = card_numbers,
                    SetMainCard = setMainCard,
                    OTP         = otp,
                    Csn         = accountId,
                    FullName    = fullName
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic    = new Dictionary <string, string>();
                var url    = GetUrl(BusinessObjectPublicUser.RequestFunction.InsertUserCard);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status          = result.Status;
                    ResponseMessage = result.Message;
                    return(SerializerObject.ProtoBufDeserialize <UserCardInfoResponse>(result.ResponseData, client.Saltkey));
                }
                return(null);
            }
            catch (Exception exception)
            {
                Status          = 0;
                ResponseMessage = SetResponseMessage(exception);
                return(null);
            }
        }
예제 #3
0
        public bool VerifyOTPViaMobile(int userId, string cardNumber, string id, string mobileNumber)
        {
            var response = new TransactionInfoResponse();

            try
            {
                var request = new UserInfoRequest()
                {
                    UserId        = userId,
                    CardNumber    = cardNumber,
                    Identity      = id,
                    EmailOrMobile = mobileNumber
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic    = new Dictionary <string, string>();
                var url    = GetUrl(BusinessObjectPublicUser.RequestFunction.VerifyOTPViaMobile);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status          = result.Status;
                    ResponseMessage = result.Message;
                    return(SerializerObject.ProtoBufDeserialize <bool>(result.ResponseData, client.Saltkey));
                }
                return(false);
            }
            catch (Exception exception)
            {
                Status          = 0;
                ResponseMessage = SetResponseMessage(exception);
                return(false);
            }
        }
예제 #4
0
        public VingroupCardResponse GetListVingroupcardByUserId(int userId)
        {
            var response = new VingroupCardResponse();

            try
            {
                var request = new UserInfoRequest()
                {
                    UserId = userId
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic    = new Dictionary <string, string>();
                var url    = GetUrl(BusinessObjectPublicUser.RequestFunction.GetListVingroupCardByUserId);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status          = result.Status;
                    ResponseMessage = result.Message;
                    return(SerializerObject.ProtoBufDeserialize <VingroupCardResponse>(result.ResponseData, client.Saltkey));
                }
                return(null);
            }
            catch (Exception exception)
            {
                Status          = 0;
                ResponseMessage = SetResponseMessage(exception);
                return(null);
            }
        }
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute
        /// effective matches
        /// </summary>
        public async Task <PlayFabResult <UserInfoResponse> > UserInfoAsync(UserInfoRequest request, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            var developerSecretKey = request.AuthenticationContext?.DeveloperSecretKey ?? (authenticationContext?.DeveloperSecretKey ?? PlayFabSettings.DeveloperSecretKey);

            if (developerSecretKey == null)
            {
                throw new PlayFabException(PlayFabExceptionCode.DeveloperKeyNotSet, "DeveloperSecretKey is not found in Request, Server Instance or PlayFabSettings");
            }

            var httpResult = await PlayFabHttp.DoPost("/Matchmaker/UserInfo", request, "X-SecretKey", developerSecretKey, extraHeaders, apiSettings);

            if (httpResult is PlayFabError)
            {
                var error = (PlayFabError)httpResult;
                PlayFabSettings.GlobalErrorHandler?.Invoke(error);
                return(new PlayFabResult <UserInfoResponse> {
                    Error = error, CustomData = customData
                });
            }

            var resultRawJson = (string)httpResult;
            var resultData    = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <UserInfoResponse> >(resultRawJson);
            var result        = resultData.data;

            return(new PlayFabResult <UserInfoResponse> {
                Result = result, CustomData = customData
            });
        }
        public async Task <DTO.UserInfo> GetUserInfo(string samlAssertionId, CancellationToken token)
        {
            var x509Certificate = await _x509Provider.Provide(token);

            var userInfoRequest = new UserInfoRequest
            {
                Tgsid = samlAssertionId
            };

            using (var soapClient = SoapClient.Prepare())
            {
                soapClient
                .WithBinarySecurityTokenHeader(x509Certificate);

                var envelope = SoapEnvelope.Prepare();
                envelope.Body(userInfoRequest.ToXElement());

                var identityInfoServiceUri = _environment.GetServiceUri("pz-services/tpUserInfo");

                var response = await soapClient.SendAsync(
                    identityInfoServiceUri.AbsoluteUri,
                    "GetTpUserInfo",
                    envelope,
                    token);

                var userInfoResponse = response.Body <UserInfoResponse>();

                return(userInfoResponse.GetTpUserInfoReturn);
            }
        }
예제 #7
0
        private UserInfoRequestResponse PrepareUserInfo(UserInfoRequest uir)
        {
            UserInfoRequestResponse.Builder builder = new UserInfoRequestResponse.Builder();
            builder.SetAssist(10).SetCreeps(10).SetDeath(10).SetDeny(10).SetKill(213).SetLost(21312).SetRax(21312).SetTotalGames(1213).SetTower(2312).SetWins(21321).SetTotalReport(20);

            return builder.Build();
        }
        public async Task <IActionResult> UserInfo()
        {
            var client = httpClientFactory.CreateClient(HttpClientNames.Identity);

            using var discoveryDocumentRequest = new DiscoveryDocumentRequest
                  {
                      Policy = new DiscoveryPolicy { RequireHttps = false },
                  };

            var metaDataResponse = await client.GetDiscoveryDocumentAsync(discoveryDocumentRequest);

            if (metaDataResponse.IsError)
            {
                throw new HttpRequestException($"DiscoveryDocumentError : {metaDataResponse.Error}");
            }

            var accessToken = await HttpContext.GetTokenAsync(OpenIdConnectParameterNames.AccessToken);

            using var userInfoRequest = new UserInfoRequest
                  {
                      Address = metaDataResponse.UserInfoEndpoint,
                      Token   = accessToken,
                  };

            var userInfoResponse = await client.GetUserInfoAsync(userInfoRequest);

            if (userInfoResponse.IsError)
            {
                throw new HttpRequestException($"UserInfoResponse : {userInfoResponse.Error}");
            }

            return(View(new UserInfoViewModel {
                UserClaims = userInfoResponse.Claims, AccessToken = accessToken
            }));
        }
        public async Task <ResponseMessage> Post(string userId, [FromBody] UserInfoRequest model)
        {
            ResponseMessage response = new ResponseMessage();

            if (!ModelState.IsValid)
            {
                response.Code = ResponseCodeDefines.ModelStateInvalid;
                return(response);
            }
            //权限控制
            if (!await _permissionExpansionManager.HavePermission(userId, "UserInfoCreate", model.OrganizationId))
            {
                response.Code = ResponseCodeDefines.NotAllow;
                return(response);
            }
            var user = _mapper.Map <Users>(model);

            user.FilialeId = await _organizationsManager.FindFilialeIdAsync(user.OrganizationId);

            if (string.IsNullOrEmpty(user.FilialeId))
            {
                user.FilialeId = user.OrganizationId;
            }
            user.IsDeleted = false;
            var result = await _extendUserManager.CreateAsync(user, model.Password);

            if (result.Succeeded)
            {
                return(response);
            }
            response.Code = ResponseCodeDefines.ServiceError;
            return(response);
        }
        public async Task <BaseResponse> GetAsync([FromRoute] string user)
        {
            var request  = new UserInfoRequest(user);
            var response = _userInfoCommand.Execute(request);

            return(response);
        }
예제 #11
0
        public UserInfoResponse UserInfo(UserInfoRequest request)
        {
            var user = UserRepository.RetrieveUser(request.SessionId);

            if (user == null)
            {
                return(new UserInfoResponse
                {
                    FirstName = string.Empty,
                    Surname = string.Empty,
                    Email = string.Empty,
                    TotalPoints = 0,
                    UsablePoints = 0,
                    Last5Transactions = new TransactionResponse[0],
                    Success = false,
                    ErrorMessage = "Invalid Session Details"
                });
            }

            return(new UserInfoResponse
            {
                FirstName = user.FirstName,
                Surname = user.Surname,
                Email = user.Email,
                TotalPoints = TransactionRepository.GetUsersPoints(user.UserId),
                UsablePoints = TransactionRepository.GetUsersUsablePoints(user.UserId),
                Last5Transactions = MapOutTransactions(TransactionRepository.RetrieveXTransactionsForUser(5, user.UserId)),
                Success = true
            });
        }
예제 #12
0
        public UserCreditResponse GetUserCredit(UserInfoRequest request, out int status, out string message)
        {
            status  = 0;
            message = string.Empty;
            var response = new TransactionInfoResponse();

            try
            {
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic    = new Dictionary <string, string>();
                var url    = GetUrl(BusinessObjectPublicUser.RequestFunction.GetUserCredit);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    status          = result.Status;
                    message         = result.Message;
                    ResponseMessage = result.Message;
                    Status          = result.Status;
                    return(SerializerObject.ProtoBufDeserialize <UserCreditResponse>(result.ResponseData, client.Saltkey));
                }
                return(null);
            }
            catch (Exception exception)
            {
                status          = 0;
                message         = "Lỗi từ user api";
                ResponseMessage = SetResponseMessage(exception);
                return(null);
            }
        }
        public async Task <IActionResult> PrivacyAsync()
        {
            var accessToken = await HttpContext.GetTokenAsync("access_token");

            var client = new HttpClient();

            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
            var disco = await client.GetDiscoveryDocumentAsync("https://localhost:5000");

            HttpClient httpClient = new HttpClient();
            //DiscoveryDocumentResponse discoveryDocument = await httpClient.GetDiscoveryDocumentAsync();



            string disco2 = "https://localhost:5000/.well-known/openid-configuration";


            //var disco = await client.GetDiscoveryDocumentAsync();

            UserInfoRequest request = new UserInfoRequest();

            request.Address = disco.UserInfoEndpoint;
            request.Token   = accessToken;


            var response = await client.GetUserInfoAsync(request);


            return(View());
        }
예제 #14
0
        public bool ChangeCardToMain(int userId, string card_numbers)
        {
            var response = new TransactionInfoResponse();
            try
            {
                var request = new UserInfoRequest()
                {
                    UserId = userId,
                    CardNumber = card_numbers
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.ChangeToMainCard);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status = result.Status;
                    ResponseMessage = result.Message;
                    return SerializerObject.ProtoBufDeserialize<bool>(result.ResponseData, client.Saltkey);
                }
                return false;
            }
            catch (Exception exception)
            {
                Status = 0;
                ResponseMessage = SetResponseMessage(exception);
                return false;
            }
        }
예제 #15
0
        /// <summary>
        /// Gets the current authenticated user using JavaScript interop.
        /// </summary>
        /// <returns>A <see cref="Task{ClaimsPrincipal}"/>that will return the current authenticated user when completes.</returns>
        protected override async Task <ClaimsPrincipal> GetAuthenticatedUser()
        {
            var accessTokenResult = await RequestAccessToken();

            if (accessTokenResult.Status == AccessTokenResultStatus.Success && accessTokenResult.TryGetToken(out var accessToken))
            {
                using var userInfoClient = CreateClient(Client.Options);
                using var request        = new UserInfoRequest
                      {
                          Address = Client.Options.ProviderInformation.UserInfoEndpoint,
                          Token   = accessToken.Value,
                      };

                var userInfoResponse = await userInfoClient.GetUserInfoAsync(request).ConfigureAwait(true);

                if (userInfoResponse.Exception != null)
                {
                    throw userInfoResponse.Exception;
                }

                var account = JsonSerializer.Deserialize <TAccount>(userInfoResponse.Raw);

                await MergeIdTokenClaims(account);

                return(await AccountClaimsPrincipalFactory.CreateUserAsync(account, Options.UserOptions));
            }
            else
            {
                return(new ClaimsPrincipal(new ClaimsIdentity()));
            }
        }
예제 #16
0
        public async Task <IActionResult> PostUserInfo([FromBody] UserInfoRequest request)
        {
            var info = new PageViewInfo(request);
            await _userStore.StoreInfo(info);

            return(Ok());
        }
예제 #17
0
        public async Task <GetUserLoginResponseType> GetUserInfo(UserInfoRequest userInfoRequest)
        {
            try
            {
                var response = await UserServiceClient.UserGetuserloginAsync(userInfoRequest.DomainName,
                                                                             userInfoRequest.DomainUserGuid,
                                                                             userInfoRequest.DomainUserId,
                                                                             userInfoRequest.DeviceName,
                                                                             userInfoRequest.IpAddress,
                                                                             userInfoRequest.TemporaryAccessGuid);

                if (response.ResponseCd != "1")
                {
                    response.UserDefaultAgencyCd = string.IsNullOrEmpty(response.UserDefaultAgencyCd) ? SupremeAgencyId: response.UserDefaultAgencyCd;
                    Logger.LogDebug($"SMGOV_USERGUID: {userInfoRequest.DomainUserGuid}, UserAgencyCd: {response.UserDefaultAgencyCd}, UserPartId: {response.UserPartId}");
                    return(response);
                }
                Logger.LogInformation("Returned responseCd = 1 (failed) from getUserLogin");
                return(null);
            }
            catch (Exception e)
            {
                Logger.LogError(e, e.Message);
                return(null);
            }
        }
        public async Task <IActionResult> OrderFrame()
        {
            var accessToken = await HttpContext.GetTokenAsync(OpenIdConnectParameterNames.AccessToken);

            // Add IdentityModel NuGet Package
            var discoveryEndpoint = new HttpClient(); //DiscoveryEndpoint("https://localhost:44316/", "");
            var metaDataResponse  = await discoveryEndpoint.GetDiscoveryDocumentAsync("https://localhost:44316/");

            var request = new UserInfoRequest()
            {
                Address = metaDataResponse.UserInfoEndpoint,
                Method  = HttpMethod.Get,
                //AuthorizationHeaderStyle = BasicAuthenticationHeaderStyle.Rfc2617,
                Token = accessToken
            };

            var response = await discoveryEndpoint.GetUserInfoAsync(request);

            if (response.IsError)
            {
                throw new Exception("Problem accessing the UseInfo endpoint.", response.Exception);
            }
            var address = response.Claims.SingleOrDefault(x => x.Type == "address")?.Value;

            return(View(new OrderFrameViewModel(address)));
        }
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute effective matches
        /// </summary>
        public static async Task <PlayFabResult <UserInfoResponse> > UserInfoAsync(UserInfoRequest request, object customData = null)
        {
            if (PlayFabSettings.DeveloperSecretKey == null)
            {
                throw new Exception("Must have PlayFabSettings.DeveloperSecretKey set to call this method");
            }

            var httpResult = await PlayFabHttp.DoPost("/Matchmaker/UserInfo", request, "X-SecretKey", PlayFabSettings.DeveloperSecretKey);

            if (httpResult is PlayFabError)
            {
                var error = (PlayFabError)httpResult;
                if (PlayFabSettings.GlobalErrorHandler != null)
                {
                    PlayFabSettings.GlobalErrorHandler(error);
                }
                return(new PlayFabResult <UserInfoResponse> {
                    Error = error, CustomData = customData
                });
            }

            var resultRawJson = (string)httpResult;
            var resultData    = JsonWrapper.DeserializeObject <PlayFabJsonSuccess <UserInfoResponse> >(resultRawJson);
            var result        = resultData.data;

            return(new PlayFabResult <UserInfoResponse> {
                Result = result, CustomData = customData
            });
        }
예제 #20
0
        public HttpResponseMessage AddUserInfo(UserInfoRequest userInfoRequest)
        {
            //var token = System.Web.HttpContext.Current.Request.Headers["auth"];
            var result = _userInfoService.AddUserInfo(userInfoRequest);

            return(toJson(null, result.State, result.Message));
        }
예제 #21
0
파일: Program.cs 프로젝트: fengrui358/Labs
        private static async Task GetUserInfo(string token)
        {
            using (var httpClient = new HttpClient {
                BaseAddress = new Uri("http://localhost:44362")
            })
            {
                var document = await httpClient.GetDiscoveryDocumentAsync();

                if (!document.IsError)
                {
                    token = token.Remove(0, 7);
                    var request = new UserInfoRequest
                    {
                        RequestUri = new Uri(document.UserInfoEndpoint),
                        Token      = token
                    };

                    var userResponse = await httpClient.GetUserInfoAsync(request);

                    if (!userResponse.IsError)
                    {
                        Console.WriteLine(userResponse.Raw);
                    }
                }
            }
        }
예제 #22
0
        public ActionResult PostUserInfo([FromBody] UserInfoRequest request)
        {
            var authorizationToken = this.Request.Headers["Authorization"].ToString();

            if (authorizationToken == "")
            {
                return(Unauthorized());
            }
            int id = Jwt.GetIdFromToken(authorizationToken);

            if (id == 0)
            {
                return(Unauthorized());
            }
            dynamic result = Repository.SetUserInfo(request, id);

            if (result == null)
            {
                return(NotFound(new { message = "not found" }));
            }
            if (result.ToString() == "ERROR")
            {
                return(BadRequest(new { message = "Error" }));
            }
            return(Ok(new { message = "Done" }));
        }
예제 #23
0
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute
        /// effective matches
        /// </summary>
        public void UserInfo(UserInfoRequest request, Action <UserInfoResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            var context      = (request == null ? null : request.AuthenticationContext) ?? authenticationContext;
            var callSettings = apiSettings ?? PlayFabSettings.staticSettings;

            PlayFabHttp.MakeApiCall("/Matchmaker/UserInfo", request, AuthType.DevSecretKey, resultCallback, errorCallback, customData, extraHeaders, context, callSettings, this);
        }
예제 #24
0
 public static UserInfoResponse HandleUserInfoRequest(UserInfoRequest request)
 {
     //TODO: 数据库查询
     return(new UserInfoResponse()
     {
     });
 }
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute
        /// effective matches
        /// </summary>
        public static async Task <PlayFabResult <UserInfoResponse> > UserInfoAsync(UserInfoRequest request, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            if (PlayFabSettings.staticSettings.DeveloperSecretKey == null)
            {
                throw new PlayFabException(PlayFabExceptionCode.DeveloperKeyNotSet, "Must have PlayFabSettings.staticSettings.DeveloperSecretKey set to call this method");
            }

            var httpResult = await PlayFabHttp.DoPost("/Matchmaker/UserInfo", request, "X-SecretKey", PlayFabSettings.staticSettings.DeveloperSecretKey, extraHeaders);

            if (httpResult is PlayFabError)
            {
                var error = (PlayFabError)httpResult;
                PlayFabSettings.GlobalErrorHandler?.Invoke(error);
                return(new PlayFabResult <UserInfoResponse> {
                    Error = error, CustomData = customData
                });
            }

            var resultRawJson = (string)httpResult;
            var resultData    = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <UserInfoResponse> >(resultRawJson);
            var result        = resultData.data;

            return(new PlayFabResult <UserInfoResponse> {
                Result = result, CustomData = customData
            });
        }
예제 #26
0
 public UserInfo getMe()
 {
     if (TempData.SelfInfo == null)
     {
         UserInfoRequest data = (UserInfoRequest) new DataContractJsonSerializer(
             typeof(UserInfoRequest)
             ).ReadObject(
             new MemoryStream(
                 Encoding.UTF8.GetBytes(getWeb(apiUrl + "getMe").Content)
                 )
             );
         if (data.ok)
         {
             TempData.SelfInfo = data.result;
             return(data.result);
         }
         else
         {
             return(null);
         }
     }
     else
     {
         return(TempData.SelfInfo);
     }
 }
예제 #27
0
        protected override async Task <AuthenticateResult> HandleAuthenticateAsync()
        {
            string siteMinderUserGuidHeader = Request.Headers["SMGOV_USERGUID"];
            string siteMinderUserTypeHeader = Request.Headers["SMGOV_USERTYPE"];

            if (siteMinderUserGuidHeader == null || siteMinderUserTypeHeader == null)
            {
                return(AuthenticateResult.NoResult());
            }

            if (siteMinderUserTypeHeader != ValidSiteMinderUserType)
            {
                return(AuthenticateResult.Fail("Invalid SiteMinder UserType Header."));
            }

            var authenticatedBySiteMinderPreviously = Context.User.Identity.AuthenticationType == SiteMinder;
            var participantId = Context.User.ParticipantId();
            var agencyCode    = Context.User.AgencyCode();
            var isSupremeUser = Context.User.IsSupremeUser();

            if (!authenticatedBySiteMinderPreviously)
            {
                var request = new UserInfoRequest
                {
                    DeviceName          = Environment.MachineName,
                    DomainUserGuid      = siteMinderUserGuidHeader,
                    DomainUserId        = Request.Headers["SM_USER"],
                    IpAddress           = Request.Headers["X-Real-IP"],
                    TemporaryAccessGuid = ""
                };
                var jcUserInfo = await JCUserService.GetUserInfo(request);

                if (jcUserInfo == null)
                {
                    return(AuthenticateResult.Fail("Couldn't authenticate through JC-Interface."));
                }

                participantId = jcUserInfo.UserPartId;
                agencyCode    = jcUserInfo.UserDefaultAgencyCd;
                isSupremeUser = true;
            }

            var claims = new[] {
                new Claim(CustomClaimTypes.JcParticipantId, participantId),
                new Claim(CustomClaimTypes.JcAgencyCode, agencyCode),
                new Claim(CustomClaimTypes.IsSupremeUser, isSupremeUser.ToString())
            };
            var identity  = new ClaimsIdentity(claims, Scheme.Name);
            var principal = new ClaimsPrincipal(identity);

            if (!authenticatedBySiteMinderPreviously)
            {
                await Context.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, principal);
            }

            var ticket = new AuthenticationTicket(principal, Scheme.Name);

            return(AuthenticateResult.Success(ticket));
        }
예제 #28
0
        public async Task <UserEntity> ValidateCredentials(UserInfoRequest userInfoRequest)
        {
            var password = ComputeHash(userInfoRequest.Password, new SHA256CryptoServiceProvider());
            var query    = $" SELECT * FROM User_Auth WHERE NAME_USER = '******' AND USER_PWD = '{ password }'";
            var result   = await _connection.QueryFirstAsync <UserEntity>(query, null, _transaction);

            return(result);
        }
예제 #29
0
        public GeneralResponse <ResponseUserInfo> UpdateAccNumber(string userToken, UserInfoRequest userInfo)
        {
            var result = container.Resolve <GeneralResponse <ResponseUserInfo> >();

            if (!ModelState.IsValid)
            {
                result.ResponseCode    = HttpStatusCode.BadRequest;
                result.ResponseMessage = "Request is wrong";
                result.Result          = null;
                return(result);
            }

            try
            {
                var token = _unitOfWork.UserToken.GetSingle(x => x.Token == userToken);
                if (token == null)
                {
                    result.ResponseCode    = HttpStatusCode.NotFound;
                    result.ResponseMessage = "Invalid User Token";
                    result.Result          = null;
                    return(result);
                }

                var user = _unitOfWork.UserInfo.GetSingle(x => x.NickName.ToUpper() == userInfo.NickName.ToUpper() && x.Id == token.UserInfoId);
                if (user == null)
                {
                    result.ResponseCode    = HttpStatusCode.NotFound;
                    result.ResponseMessage = "Invalid User";
                    result.Result          = null;
                    return(result);
                }

                user.AccountNumber = userInfo.AccountNumber;
                token.Token        = String.Concat(TokenGenerator.Generate(32), user.NickName);

                _unitOfWork.Complete();

                var UserResponse = container.Resolve <ResponseUserInfo>();

                UserResponse.Id             = user.Id;
                UserResponse.AccountNumber  = user.AccountNumber;
                UserResponse.NickName       = user.NickName;
                UserResponse.ActivityStatus = user.ActiveStatus;
                UserResponse.UserToken      = token.Token;

                result.ResponseCode    = HttpStatusCode.OK;
                result.ResponseMessage = "User has been updated";
                result.Result          = (IEnumerable <ResponseUserInfo>)UserResponse;
                return(result);
            }
            catch
            {
                result.ResponseCode    = HttpStatusCode.BadRequest;
                result.ResponseMessage = "Something went wrong";
                result.Result          = null;
                return(result);
            }
        }
예제 #30
0
        static void Main(string[] args)
        {
            try
            {
                TTransport          transport = new TSocket("localhost", 9090);
                TProtocol           protocol  = new TBinaryProtocol(transport);
                LoginService.Client client    = new LoginService.Client(protocol);

                transport.Open();
                try
                {
                    if (client.ping())
                    {
                        Console.WriteLine("connected");
                        do
                        {
                            Console.WriteLine("Login");
                            Console.WriteLine("Nhap User Name: ");
                            string UserName = Console.ReadLine();
                            Console.WriteLine("Nhap password: "******"Dang nhap thanh cong: " + response.UserName);
                            }
                            else
                            {
                                Console.WriteLine("Dang nhap that bai");
                            }
                        } while (Console.ReadKey().Key != ConsoleKey.Enter);
                    }
                    else
                    {
                        Console.WriteLine("not connect");
                    }
                    Console.ReadKey();
                }
                finally
                {
                    transport.Close();
                }
            }
            catch (TApplicationException x)
            {
                Console.WriteLine(x.StackTrace);
                Console.ReadKey();
            }
            catch (UserAuthException e)
            {
                Console.WriteLine(e.Message);
                Console.ReadKey();
            }
        }
예제 #31
0
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute effective matches
        /// </summary>
        public static void UserInfo(UserInfoRequest request, Action <UserInfoResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null)
        {
            if (PlayFabSettings.DeveloperSecretKey == null)
            {
                throw new Exception("Must have PlayFabSettings.DeveloperSecretKey set to call this method");
            }

            PlayFabHttp.MakeApiCall("/Matchmaker/UserInfo", request, AuthType.DevSecretKey, resultCallback, errorCallback, customData);
        }
        /// <summary>
        /// Retrieves the relevant details for a specified user, which the external match-making service can then use to compute
        /// effective matches
        /// </summary>
        public static void UserInfo(UserInfoRequest request, Action <UserInfoResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            if (PlayFabSettings.DeveloperSecretKey == null)
            {
                throw new PlayFabException(PlayFabExceptionCode.DeveloperKeyNotSet, "Must have PlayFabSettings.DeveloperSecretKey set to call this method");
            }

            PlayFabHttp.MakeApiCall("/Matchmaker/UserInfo", request, AuthType.DevSecretKey, resultCallback, errorCallback, customData, extraHeaders);
        }
예제 #33
0
 private void ProcessUserInfoRequest(UserInfoRequest uir)
 {
     if (uir.Username != m_Client.Username)
     {
         m_Client.Dispose();
         return;
     }
    m_Client.SendBytes(CreateCommand(XCommunicateEnum.UserInfoRequestResponse,PrepareUserInfo(uir).ToByteArray()));
  
 }
        static void Main(string[] args)
        {
            // Create client.
            UserServicePortTypeClient client = new UserServicePortTypeClient();

            /*
             * CREATE USER
             */
            UserCreationRequest userCreationRequest = new UserCreationRequest();
            userCreationRequest.username = "******";
            userCreationRequest.firstname = "Max";
            userCreationRequest.lastname = "Mustermann";
            userCreationRequest.gender = false;
            userCreationRequest.age = "38";
            UserCreationResponse userCreationResponse = client.CreateUser(userCreationRequest);
            if (!userCreationResponse.response)
            {
                Console.WriteLine("ERROR  : user creation request failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: user creation request succeeded");
            }

            /*
             * CREATE GROUP
             */
            GroupCreationRequest groupCreationRequest = new GroupCreationRequest();
            groupCreationRequest.groupname = "testers";
            GroupCreationResponse groupCreationResponse = client.CreateGroup(groupCreationRequest);
            if (!groupCreationResponse.response)
            {
                Console.WriteLine("ERROR  : group creation request failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: group creation request succeeded");
            }

            /*
             * ADD USER TO GROUP
             */
            GroupAddUserRequest groupAddUserRequest = new GroupAddUserRequest();
            groupAddUserRequest.username = "******";
            groupAddUserRequest.groupname = "testers";
            GroupAddUserResponse groupAddUserResponse = client.GroupAddUser(groupAddUserRequest);
            if (!groupAddUserResponse.response)
            {
                Console.WriteLine("ERROR  : adding user to group failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: adding user to group succeeded");
            }

            /*
             * GET USER INFO
             */
            UserInfoRequest userInfoRequest = new UserInfoRequest();
            userInfoRequest.username = "******";
            UserInfo userInfoResponse = client.GetUserInfo(userInfoRequest);
            if (userInfoResponse.firstname != "Max" ||
                userInfoResponse.lastname != "Mustermann" ||
                userInfoResponse.gender != false ||
                userInfoResponse.age != "38")
            {
                Console.WriteLine("ERROR  : getting user info failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: getting user info succeeded");
            }

            /*
             * GET GROUP INFO
             */
            GroupInfoRequest groupInfoRequest = new GroupInfoRequest();
            groupInfoRequest.groupname = "testers";
            string[] groupInfoResponse = client.GetGroupInfo(groupInfoRequest);
            if (groupInfoResponse.Length != 1 ||
                groupInfoResponse[0] != "user")
            {
                Console.WriteLine("ERROR  : getting group info failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: getting group info succeeded");
            }

            /*
             * REMOVE USER FROM GROUP
             */
            GroupDeleteUserRequest groupDeleteUserRequest = new GroupDeleteUserRequest();
            groupDeleteUserRequest.username = "******";
            groupDeleteUserRequest.groupname = "testers";
            GroupDeleteUserResponse groupDeleteUserResponse = client.GroupDeleteUser(groupDeleteUserRequest);
            if (!groupDeleteUserResponse.response)
            {
                Console.WriteLine("ERROR  : deleting user from group failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: deleting user from group succeeded");
            }

            /*
             * DELETE USER
             */
            UserDeletionRequest userDeletionRequest = new UserDeletionRequest();
            userDeletionRequest.username = "******";
            UserDeletionResponse userDeletionResponse = client.DeleteUser(userDeletionRequest);
            if (!userDeletionResponse.response)
            {
                Console.WriteLine("ERROR  : deleting user failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: deleting user succeeded");
            }

            /*
             * DELETE GROUP
             */
            GroupDeletionRequest groupDeletionRequest = new GroupDeletionRequest();
            groupDeletionRequest.groupname = "testers";
            GroupDeletionResponse groupDeletionResponse = client.DeleteGroup(groupDeletionRequest);
            if (!groupDeletionResponse.response)
            {
                Console.WriteLine("ERROR  : deleting group failed");
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("SUCCESS: deleting group succeeded");
                Console.ReadLine();
            }
        }
 public void RequestUserInfo(UserInfoRequest userInfoRequest)
 {
     SharpConnectionHelperSingleton.Instance.RequestUserInfo(userInfoRequest);
 }
 public GetUserInfoRequest(UserInfoRequest UserInfoRequest)
 {
     this.UserInfoRequest = UserInfoRequest;
 }
예제 #37
0
        public UserCardInfoResponse GetCardInfo(int userId, string cardNumber, bool isVerify = false)
        {
            var response = new UserCardInfoResponse();
            try
            {
                var request = new UserInfoRequest()
                {
                    UserId = userId,
                    CardNumber = cardNumber,
                    IsVerify = isVerify
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.GetCardInfo);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status = result.Status;
                    ResponseMessage = result.Message;
                    return SerializerObject.ProtoBufDeserialize<UserCardInfoResponse>(result.ResponseData, client.Saltkey);
                }
                return response;
            }
            catch (Exception exception)
            {
                Status = 0;
                ResponseMessage = SetResponseMessage(exception);
                return default(UserCardInfoResponse);
            }
        }
예제 #38
0
        public VingroupCardResponse GetListVingroupcardByUserId(int userId)
        {
            var response = new VingroupCardResponse();
            try
            {
                var request = new UserInfoRequest()
                {
                    UserId = userId
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.GetListVingroupCardByUserId);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status = result.Status;
                    ResponseMessage = result.Message;
                    return SerializerObject.ProtoBufDeserialize<VingroupCardResponse>(result.ResponseData, client.Saltkey);
                }
                return null;
            }
            catch (Exception exception)
            {
                Status = 0;
                ResponseMessage = SetResponseMessage(exception);
                return null;
            }
        }
예제 #39
0
        public UserCardInfoResponse InsertUserCard(int userId, string card_numbers, bool setMainCard, string otp, string accountId, string fullName)
        {
            var response = new TransactionInfoResponse();
            try
            {
                var request = new UserInfoRequest()
                {
                    UserId = userId,
                    CardNumber = card_numbers,
                    SetMainCard = setMainCard,
                    OTP = otp,
                    Csn = accountId,
                    FullName = fullName
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.InsertUserCard);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status = result.Status;
                    ResponseMessage = result.Message;
                    return SerializerObject.ProtoBufDeserialize<UserCardInfoResponse>(result.ResponseData, client.Saltkey);
                }
                return null;
            }
            catch (Exception exception)
            {
                Status = 0;
                ResponseMessage = SetResponseMessage(exception);
                return null;
            }
        }
예제 #40
0
        public UserInfoResponse UpdateUserInfo(UserInfoRequest request, out int status, out string message)
        {
            status = 0;
            message = string.Empty;
            var response = new UserInfoResponse();
            try
            {
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.UpdateUserInfo);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    status = result.Status;
                    message = result.Message;
                    ResponseMessage = result.Message;
                    Status = result.Status;
                    return SerializerObject.ProtoBufDeserialize<UserInfoResponse>(result.ResponseData, client.Saltkey);
                }
                return null;
            }
            catch (Exception exception)
            {
                status = 0;
                message = "Lỗi từ user api";
                ResponseMessage = SetResponseMessage(exception);
                return null;
            }
        }
예제 #41
0
        public bool VerifyCardInfo(string cardInfo, string idPassport, string mobile)
        {
            var response = new TransactionInfoResponse();
            try
            {
                var request = new UserInfoRequest()
                {
                    CardNumber = cardInfo,
                    Identity = idPassport,
                    EmailOrMobile = mobile
                };
                IHttpOrderClient client = new HttpOrderClient(Publickey, true);
                var dic = new Dictionary<string, string>();
                var url = GetUrl(BusinessObjectPublicUser.RequestFunction.VerifyCardInfo);
                var result = client.Post(request, url, dic, Appid, Uid);

                if (result != null && result.ResponseData != null)
                {
                    Status = result.Status;
                    ResponseMessage = result.Message;
                    return SerializerObject.ProtoBufDeserialize<bool>(result.ResponseData, client.Saltkey);
                }
                return false;
            }
            catch (Exception exception)
            {
                Status = 0;
                ResponseMessage = SetResponseMessage(exception);
                return false;
            }
        }