public string PagarPorPix(CobrancaRequest cobranca, string txId, Credenciais credenciais)
        {
            string token    = JObject.Parse(Authorize(credenciais))["access_token"].ToString();
            int    location = GerarCobrnca(token, cobranca, txId, credenciais.BaseUrl, credenciais.PathCertificado);

            return(ObterQrCode(token, location, credenciais.BaseUrl, credenciais.PathCertificado));
        }
        public void ObterQrCode()
        {
            string      token       = "eyJhbGciOiJIUzI1NiIsI9.eyJ0eXBlIjoiYWNjZiJDbGllbnRfSWRfOThkMWmNiMWQ0NjM5YWFkOCIsImFjb3VudF9jb2RliNWEyM2I2ZTQ0ZWVkYzU1OTZjY2JhYzFhNjVlYmM3MjgiLCJzY29wZXMiOlsiY29iLnJlYWQiLCJjb2Iud3JpdGUiLCJnbi5iYWxhbmNlLnJlYWQiLCJnbi5waXguZXZwLnJlYWQiLCJnbi5waXguZXZwLndyaXRlIiwiZ24uc2V0dGluZ3MucmVhZCIsImduLnNldHRpbmdzLndyaXRlIiwicGF5bG9hZGxvY2F0aW9uLnJlYWQiLCJwYXlsb2FkbG9jYXRpb24ud3JpdGUiLCJwaXgucmVhZCIsInBpeC53cml0ZSIsIndlYmhvb2sucmVhZCIsIndlYmhvb2sud3JpdGUiXSwiZXhwaXJlc0luIjozNjAwLCJjb25maWd1cmF0aW9uIjp7Ing1dCNTMjU2IjoibnhYYUxXd0hGSGZpdXp2Mk1rck51b2I4T1psSjd4SnNzeitON1gvMGhKRT0ifSwiaWF0IjoxNjIwNzU4NzI0LCJleHAiOjE2MjA3NjIzMjR9.Vk-sW3xPds88vhlW-tItEeOgsQxPRNFXciA6KArOYcI";
            Credenciais credenciais = PreencherCredenciais();

            _baseIntegracao.ObterQrCode(token, 1, credenciais.BaseUrl, credenciais.PathCertificado);;
        }
        public bool Validar(CredenciaisDoUsuario credenciais)
        {
            var credenciasOriginais = _repositorio.Por(credenciais.Email);
            var fornecidas          = Credenciais.Nova(credenciais.Email, credenciais.Senha, credenciasOriginais.Salt);

            return(credenciasOriginais.CompararCom(fornecidas));
        }
Exemple #4
0
        public IActionResult Post([FromBody] CobrancaRequest payLoad, string txId, int credencialId)
        {
            Credenciais credenciais = _baseRepository.ObterCredenciaisGerenciaNet(credencialId);

            payLoad.chave = credenciais.chave;
            string imagem = _baseIntegracao.PagarPorPix(payLoad, txId, credenciais);

            return(Ok(imagem));
        }
        public static Credenciais GeraChave()
        {
            Credenciais dados = new Credenciais();

            using (AesManaged aes = new AesManaged())
            {
                dados.chave             = aes.Key;
                dados.vetorIncializacao = aes.IV;
            }
            return(dados);
        }
        private Credenciais PreencherCredenciais()
        {
            Credenciais credenciais = new Credenciais();

            credenciais.CredenciaisID   = 0;//id de localização das credenciais em nosso banco de dados
            credenciais.BaseUrl         = "base url da api gerencianet";
            credenciais.chave           = "chave pix de cada cliente";
            credenciais.ClientId        = "Client_Id fornecido pela api gerencianet";
            credenciais.Secret          = "Client_secret fornecido pela api gerencianet";
            credenciais.PathCertificado = "caminho do certificado digital fornecido pela gerencianet";

            return(credenciais);
        }
        public async Task <ActionResult> CompleteAsync()
        {
            var auth = new MvcAuthorizer
            {
                CredentialStore = new SessionStateCredentialStore()
            };
            await auth.CompleteAuthorizeAsync(Request.Url);

            var authCredentials = auth.CredentialStore;

            // É assim que você acessa as credenciais após a autorização.
            // O oauthToken e oauthTokenSecret não expiram.
            // Você pode usar o userID para associar as credenciais ao usuário.
            // Você pode salvar credenciais da maneira que quiser - banco de dados,
            // armazenamento isolado, etc. - depende de você.
            // Você pode recuperar e carregar todas as 4 credenciais em subseqüentes
            // consultas para evitar a necessidade de autorizar novamente.
            // Quando você tiver carregado todas as 4 credenciais, o LINQ to Twitter permitirá
            // você fazer consultas sem re-autorizar.
            //================================================================================

            Credenciais credenciais = new Credenciais
            {
                ConsumerKey      = authCredentials.ConsumerKey,
                ConsumerSecret   = authCredentials.ConsumerSecret,
                OAuthToken       = authCredentials.OAuthToken,
                OAuthTokenSecret = authCredentials.OAuthTokenSecret,
                ScreenName       = authCredentials.ScreenName,
                UserID           = authCredentials.UserID
            };

            // Carreegando propriedades static da class CredenciaisAuth
            // ========================================================
            CredenciaisAuth.ConsumerKey      = authCredentials.ConsumerKey;
            CredenciaisAuth.ConsumerSecret   = authCredentials.ConsumerSecret;
            CredenciaisAuth.OAuthToken       = authCredentials.OAuthToken;
            CredenciaisAuth.OAuthTokenSecret = authCredentials.OAuthTokenSecret;
            CredenciaisAuth.ScreenName       = authCredentials.ScreenName;
            CredenciaisAuth.UserID           = authCredentials.UserID;

            //Carreegando propriedades num Cokie
            //==================================
            HttpCookie httpcookie = new HttpCookie("twitterdesk");

            httpcookie.Value   = credenciais.ToString();
            httpcookie.Expires = DateTime.Now.AddMonths(1);
            Response.Cookies.Add(httpcookie);

            return(RedirectToAction("Index", "StatusDemos"));
        }
 public void Cadastrar(DadosDoUsuario usuario)
 {
     _repositorio.Cadastrar(new Usuario {
         Nome             = usuario.Nome,
         Credenciais      = Credenciais.Nova(usuario.Email, usuario.Senha, _repositorio.NewSalt().ToString()),
         DataDeNascimento = usuario.DataDeNascimento,
         Endereco         = new Endereco {
             Logradouro        = usuario.Endereco,
             Numero            = usuario.Numero,
             Complemento       = usuario.Complemento,
             Cep               = usuario.Cep,
             Cidade            = usuario.Cep,
             UnidadeFederativa = usuario.UnidadeFederativa
         }
     });
 }
Exemple #9
0
        public void DeveInvalidarCredenciais()
        {
            var repositorio = new Mock <IRepositorioDeUsuario> ();
            var salt        = Guid.NewGuid();

            repositorio.Setup(x => x.Por("*****@*****.**"))
            .Returns(Credenciais.Nova("*****@*****.**", "123456", salt.ToString()));
            var servicoDeLogin = new ServicoDeLogin(repositorio.Object) as IServicoDeLogin;

            var validacao = servicoDeLogin.Validar(new CredenciaisDoUsuario {
                Email = "*****@*****.**",
                Senha = "1234567"
            });

            validacao.Should().BeFalse();
        }
        public string Authorize(Credenciais credenciais)
        {
            var authorization = Base64Encode($@"{credenciais.ClientId}:{credenciais.Secret}");
            var client        = new RestClient(@$ "{credenciais.BaseUrl}/oauth/token");
            var request       = new RestRequest(Method.POST);

            ObterCertificado(client, credenciais.PathCertificado);

            request.AddHeader("Authorization", "Basic " + authorization);
            request.AddHeader("Content-Type", "application/json");
            request.AddParameter("application/json", "{\r\n    \"grant_type\": \"client_credentials\"\r\n}", ParameterType.RequestBody);

            IRestResponse restResponse = client.Execute(request);

            return(restResponse.Content);
        }
Exemple #11
0
        public void DeveCadastrarUsuario()
        {
            var repositorio = new Mock <IRepositorioDeUsuario> ();
            var salt        = Guid.NewGuid();
            var usuario     = new Usuario {
                Nome             = "nome",
                Credenciais      = Credenciais.Nova("*****@*****.**", "123456", salt.ToString()),
                DataDeNascimento = new DateTime(1987, 2, 25),
                Endereco         = new Endereco {
                    Logradouro        = "Rua 11",
                    Numero            = 0,
                    Complemento       = "nenhum",
                    Cep               = "14800206",
                    Cidade            = "Araraquara",
                    UnidadeFederativa = "SP"
                }
            };

            repositorio.Setup(x => x.NewSalt()).Returns(salt);
            repositorio.Setup(x =>
                              x.Cadastrar(It.IsAny <Usuario>()));

            var servicoDeLogin = new ServicoDeLogin(repositorio.Object) as IServicoDeLogin;

            servicoDeLogin.Cadastrar(new DadosDoUsuario {
                Nome             = "nome",
                Email            = "*****@*****.**",
                RepetirEmail     = "*****@*****.**",
                Senha            = "123456",
                RepetirSenha     = "123456",
                DataDeNascimento = new DateTime(1987, 2, 25),
                Endereco         = "Rua 11",
                Numero           = 0,
                Complemento      = "nenhum",
                Cep               = "14800206",
                Cidade            = "Araraquara",
                UnidadeFederativa = "SP"
            });

            repositorio.Verify(x => x.NewSalt(), Times.Once());
            repositorio.Verify(x => x.Cadastrar(It.IsAny <Usuario>()));
        }
Exemple #12
0
        // GET: api/AuthVimeo/5


        public async Task <IActionResult> GetCredenciais([FromUri] string code, [FromUri] string state)
        {
            WebServicesApi webServices = new WebServicesApi();

            //Credencial Vimeo
            //string clientId = Hash.GerarHash(webServices.ClientId);
            //string clientSecret = Hash.GerarHash(webServices.ClientSecret);


            if (code != null)
            {
                if (state == "vamosnessa")
                {
                    //Cabeçalho
                    string clientId     = "865935be6d8a847f41e4554bd2e5b5af2ed53edf";
                    string clientSecret = "NRl0Ur3GnCQz4wubNSgF8yfiCaW8gKwXYNzyaU/gqqJikqT5UMzpCXH0jo7oJfoPk+LFYz4IjDqHp8ZIx5rNRxJdHeR5PhjRRFO8krUxKZRO/nt2hdSHX8cSOwMmqvQW";
                    //string clientId = Hash.GerarHash(webServices.ClientId);
                    //string clientSecret = Hash.GerarHash(webServices.ClientSecret);

                    string valueAuthorization = $"basic base64_encode({clientId}:{clientSecret})";
                    client.DefaultRequestHeaders.Add("Authorization", valueAuthorization);


                    //VimeoCredenciais vimeo = new VimeoCredenciais();
                    VimeoCredenciais vimeo = new VimeoCredenciais();
                    //Corpo
                    vimeo.GrantType = "authorization_code";
                    vimeo.Code      = code;
                    //vimeo.RedirectUri = redirect_uri;
                    vimeo.RedirectUri = new Uri("http://localhost:53520/api/AuthVimeo/");

                    //var parameters = new Dictionary<string, string>
                    //{
                    //    ["grant_type"] = "authorization_code",
                    //    ["code"] = code,
                    //    ["redirect_uri"] = "http://localhost:53520/api/AuthVimeo/"
                    //};


                    HttpResponseMessage response = client.PostAsJsonAsync <VimeoCredenciais>("http://localhost:53520/api/AuthVimeo/", vimeo).Result;
                    //if (!response.IsSuccessStatusCode)
                    //{
                    //    var codigoerro = response.ReasonPhrase;
                    //}

                    response.EnsureSuccessStatusCode();

                    vimeo = response.Content.ReadAsAsync <VimeoCredenciais>().Result;

                    Credenciais credenciais = new Credenciais
                    {
                        ClientesID       = 1,
                        WebServicesApiId = 1
                    };

                    var lista = db.WebServicesApis.Find(1);

                    //lista.TokenAcess = vimeo.TokenType;

                    //db.Credenciais.Add(credenciais);
                    //db.Entry(webServices).State = EntityState.Modified;
                    //db.SaveChanges();
                    //Salvar o Access Token do banco de dados

                    return(null);
                }
                else
                {
                    return(null);
                }
            }

            return(null);
        }