• 0
Sign in to follow this  
MOLDSYSTEMSLTDA

Autorização e Autenticação automática

Question

Server-side

O fluxo de autorização Server side é o mais adequado para os aplicativos que executam código do lado do servidor, por exemplo, aplicativos desenvolvidos em linguagem Java, Grails, Go, etc. Notas: Esta opção será útil para aplicativos que executam cron jobs para atualizar estoque de produtos ou operar sem que um usuário esteja interagindo diretamente com o aplicativo. Para conhecer mais detalhes sobre este fluxo, recomendamos ver o tutorial “Autorização Server-Side”.

Bom dia galera, o texto acima se encontra no seguinte LINK: https://developers.mercadolivre.com.br/pt_br/imoveis-autenticacao-autorizacao

o meu caso é o que se descreve em "Notas", a aplicação irá executar um JOB que não possui interação com o usuário para autorizar o envio dos anúncios.

ao clicar no tutorial "Autorização Server-side" no LINK: https://developers.mercadolivre.com.br/pt_br/server-side/

tem um trecho que diz o seguinte: "2) Você não tem que se preocupar com a autenticação dos usuários no Mercado Livre, nossa plataforma fará tudo! "

quando eu abro o link "nossa plataforma fará tudo",  sou redirecionado para outro link da documentação, mas não possui nada falando sobre essa "automação" da autenticação,

imaginei que tivesse algo nas SDK, no meu caso é JAVA, abri o GitHub, mas também não encontrei nada, o Job vai rodar de madrugada, e não há como o usuário inserir o usuário e senha dele e ainda clicar em permitir, alguém poderia me ajudar ?

Share this post


Link to post
Share on other sites

22 answers to this question

Recommended Posts

  • 0
Posted (edited)

Amigo essa parte do nossa plataforma fará tudo só serve se tu domina o github e o heroku, aqui eu desisti dela pois uso manjaro linux x86 e o heroku só funciona com manjaro linux de 64 bits.

O melhor é tu baixar o sdk referente a tua plataforma e fazer na mão o login, pois aquele tal de automático mais complicará tua vida, ele é muito engessado, vi que fiz certo em abandonar, tu vai perder muito tempo lá e vai retornar ao zero.

Baixa o SDK referente a tua plataforma e vai seguindo a orientação do SDK que tu baixou deve ter exemplo, não sei como é o teu, mas o do php tem e funcionou certinho.

 

Primeira coisa que tu vai fazer é registrar o api no mercado livre com uma url redirect válida para teu domínio.

Logo posteriormente, 

Tu baixa o SDK e faz uma index.php (em java é outro) incluir os arquivos do SDK e configure os dados do teu api para o login nele.

Posteriormente,

Tu faz teu index.php (em java é outro) mostrar esses dados dando isnal de vida que tu carregou corretamente, quando isso ocorrer é que tu ta pronto.

Cria um botão de login, e simula uma tentativa.

Posteriormente, 

Vá na documentação e veja o comando para buscar o nickname da conta logada e faça exibir.

Se conseguir, então sucesso!

Edited by andre machado

Share this post


Link to post
Share on other sites
  • 0

Então, não tem porque eu simular o login, o JOB será executado num momento onde não haverá ninguem para logar nenhuma das contas, eu quero saber se mesmo deslogado porém com a permissão já aceita, o sistema irá pedir o login ou irá retornar as informações que preciso para subir o anuncio ?

Share this post


Link to post
Share on other sites
  • 0

Eu segui o fluxo conforme documentação no seguinte link: https://developers.mercadolivre.com.br/pt_br/server-side/ 

porém tem outro link dentro deste que diz que não precisamos nos preocupar com autenticação, pois a plataforma já faz tudo, até é dado um exemplo que se refere ao meu caso.

Mas fica muito vago, ao abrir a SDK de Java, analisei o código fonte, porém reforçando o que o André, disse, "não tem pé e nem cabeça". E o manual pelo que pude ver dos outros usuárias deste fórum, também se contradiz e possui pontos vagos, um deles é o que estou tentando resolver aqui, se tiver alguma ajuda, obrigado.

Share this post


Link to post
Share on other sites
  • 0

não está vago, basta ler atentamente o texto: "Você não tem que se preocupar com a autenticação dos usuários no Mercado Livre, nossa plataforma fará tudo! "

ou seja, você não tem que se preocupar com a autenticação do usuário do seu sistema dentro do Mercado Livre, porém você deve seguir todo o fluxo do oAuth2.0

como sempre, recomendo que ANTES de iniciar na API tenha um profundo conhecimento de RESTful e oAuth2.0 , pois são padrões de mercado utilizados na API... tendo boa base em ambos é extremamente fácil se utilizar a API do ML

Share this post


Link to post
Share on other sites
  • 0
Posted (edited)
1 hour ago, MOLDSYSTEMSLTDA said:

Eu segui o fluxo conforme documentação no seguinte link: https://developers.mercadolivre.com.br/pt_br/server-side/ 

porém tem outro link dentro deste que diz que não precisamos nos preocupar com autenticação, pois a plataforma já faz tudo, até é dado um exemplo que se refere ao meu caso.

Mas fica muito vago, ao abrir a SDK de Java, analisei o código fonte, porém reforçando o que o André, disse, "não tem pé e nem cabeça". E o manual pelo que pude ver dos outros usuárias deste fórum, também se contradiz e possui pontos vagos, um deles é o que estou tentando resolver aqui, se tiver alguma ajuda, obrigado.

Oi,

O que não tem pé nem cabeça é tu usar o sdk deles como propôe "tudo para você".

Tu tem que baixar o SDK e usar somente a ligação com a classe e os objetos, e, assim que tu começar a rodar ele num index.php (ou diferente conforme seja o java) então vai conseguir fazer o que quer.

Olha os exemplos, e segue o fluxo mas como aprendizado, não programa dentro do SDK (mas usa ele nas ligações como classe e objeto).

Quando tu fizer o login numa página separado tu vai pegar o tal fluxo, e, criar o teu próprio.

Vamos lá,

Faça o que falei que vai entender só depois!

Com o SDK tu não vai nem precisar de banco de dados, entendeu, ai quando tu fizer com ele, tu vai começar a aprender e mudar o fluxo como gravar as informações num banco e começar a manipular do teu jeito, por isso não tem mágica dentro do SDK (Só um exemplo).

Edited by andre machado

Share this post


Link to post
Share on other sites
  • 0

Pra complementar, eu estou fazendo neste momento o mesmo que voce.

O servidor vai executar um job que não precisa de interação com o usuário!

Qualquer coisa me adiciona no ICQ: 

Mas eu não entendo nada de JAVA, Só PHP!

Pode continuar por aqui no fórum, lá no Icq só pra trocar idéia 🙂

 

Share this post


Link to post
Share on other sites
  • 0

Para o @mldev que disse que não existem pontos vagos, aqui vai um nesse manual defasado:

No link de SERVER-SIDE consta a seguinte nota: "Nota: Lembre que se você estiver trabalhando em local host poderá utilizar http e se estiver trabalhando em um domínio público deverá utilizar https e uma porta de menos de 5 dígitos. "   -   Porém ao tentar cadastrar uma redirect-uri no formulário de aplicação, ELE NÃO PERMITE CADASTRAR UMA URL SEM HTTPS, mas na nota acima ele informa que pode ser utilizado HTTP, nada vago não é mesmo 🙂

Share this post


Link to post
Share on other sites
  • 0
On 3/13/2019 at 3:35 PM, MOLDSYSTEMSLTDA said:

Para o @mldev que disse que não existem pontos vagos, aqui vai um nesse manual defasado:

No link de SERVER-SIDE consta a seguinte nota: "Nota: Lembre que se você estiver trabalhando em local host poderá utilizar http e se estiver trabalhando em um domínio público deverá utilizar https e uma porta de menos de 5 dígitos. "   -   Porém ao tentar cadastrar uma redirect-uri no formulário de aplicação, ELE NÃO PERMITE CADASTRAR UMA URL SEM HTTPS, mas na nota acima ele informa que pode ser utilizado HTTP, nada vago não é mesmo 🙂

Bom dia, eu estava pensando em operar com minha api no localhost mas desisti por causa disto, se tu conseguir me notifique como fez por favor, o mesmo critério do http e https me impede de trabalhar pelo localhost e por este motivo terei de migrar para um semi dedicado pago para ter um menor tempo de resposta na aplicação.

Share this post


Link to post
Share on other sites
  • 0
On 3/12/2019 at 6:52 PM, andre machado said:

O que não tem pé nem cabeça é tu usar o sdk deles como propôe "tudo para você"

qualquer SDK é somente uma ferramenta, é como uma serra elétrica: ela te ajuda a fazer o serviço, mas você tem que ter conhecimento e habilidade pra usar (ela não vai fazer o serviço por você)

Share this post


Link to post
Share on other sites
  • 0
On 3/13/2019 at 3:35 PM, MOLDSYSTEMSLTDA said:

Para o @mldev que disse que não existem pontos vagos, aqui vai um nesse manual defasado:

No link de SERVER-SIDE consta a seguinte nota: "Nota: Lembre que se você estiver trabalhando em local host poderá utilizar http e se estiver trabalhando em um domínio público deverá utilizar https e uma porta de menos de 5 dígitos. "   -   Porém ao tentar cadastrar uma redirect-uri no formulário de aplicação, ELE NÃO PERMITE CADASTRAR UMA URL SEM HTTPS, mas na nota acima ele informa que pode ser utilizado HTTP, nada vago não é mesmo 🙂

não terá pontos vagos se você ler TODO o manual:

"Para criar um aplicativo dentro do Application Manager é requisito obrigatório utilizar o protocolo HTTPS em sua URI de encaminhamento pois, dessa forma, garante-se que a mensagem seja criptografada e somente enviada para as pessoas autorizadas para sua leitura." referência: https://developers.mercadolivre.com.br/pt_br/registre-o-seu-aplicativo

além disso é algo básico que qualquer profissional da área sabe que ao utilizar uma API RESTful nunca se deve utilizar uma conexão que não seja criptografada (SSL) 🙂

Share this post


Link to post
Share on other sites
  • 0
On 3/13/2019 at 3:35 PM, MOLDSYSTEMSLTDA said:

Para o @mldev que disse que não existem pontos vagos, aqui vai um nesse manual defasado:

No link de SERVER-SIDE consta a seguinte nota: "Nota: Lembre que se você estiver trabalhando em local host poderá utilizar http e se estiver trabalhando em um domínio público deverá utilizar https e uma porta de menos de 5 dígitos. "   -   Porém ao tentar cadastrar uma redirect-uri no formulário de aplicação, ELE NÃO PERMITE CADASTRAR UMA URL SEM HTTPS, mas na nota acima ele informa que pode ser utilizado HTTP, nada vago não é mesmo 🙂

Olha bem o que tá escrito: se você estiver trabalhando com local host poderá utilizar http. No redirect -uri você pode colocar http://localhost para testar de forma local sem problema nenhum.

Share this post


Link to post
Share on other sites
  • 0
On 3/11/2019 at 11:52 AM, MOLDSYSTEMSLTDA said:

Server-side

O fluxo de autorização Server side é o mais adequado para os aplicativos que executam código do lado do servidor, por exemplo, aplicativos desenvolvidos em linguagem Java, Grails, Go, etc. Notas: Esta opção será útil para aplicativos que executam cron jobs para atualizar estoque de produtos ou operar sem que um usuário esteja interagindo diretamente com o aplicativo. Para conhecer mais detalhes sobre este fluxo, recomendamos ver o tutorial “Autorização Server-Side”.

Bom dia galera, o texto acima se encontra no seguinte LINK: https://developers.mercadolivre.com.br/pt_br/imoveis-autenticacao-autorizacao

o meu caso é o que se descreve em "Notas", a aplicação irá executar um JOB que não possui interação com o usuário para autorizar o envio dos anúncios.

ao clicar no tutorial "Autorização Server-side" no LINK: https://developers.mercadolivre.com.br/pt_br/server-side/

tem um trecho que diz o seguinte: "2) Você não tem que se preocupar com a autenticação dos usuários no Mercado Livre, nossa plataforma fará tudo! "

quando eu abro o link "nossa plataforma fará tudo",  sou redirecionado para outro link da documentação, mas não possui nada falando sobre essa "automação" da autenticação,

imaginei que tivesse algo nas SDK, no meu caso é JAVA, abri o GitHub, mas também não encontrei nada, o Job vai rodar de madrugada, e não há como o usuário inserir o usuário e senha dele e ainda clicar em permitir, alguém poderia me ajudar ?

Você conseguiu resolver o seu problema? Também estou no mesmo caso de precisar realizar o processo dentro de um JOB, mas não entendi como funciona o processo sem ter um usuário para fazer login.

Share this post


Link to post
Share on other sites
  • 0

@RENATOUNAI, procure na Internet sobre o oAuth2.

O @mldev já havia dado a dica.

A documentação já indica a NECESSIDADE de saber o que é oAuth2. Mas sempre é mais fácil perguntar no fórum do que ler, né ?

Eu sinto vergonha quando passo por algo assim.

 

Share this post


Link to post
Share on other sites
  • 0
Posted (edited)
On 4/2/2019 at 11:49 PM, rodrigojob said:

@RENATOUNAI, procure na Internet sobre o oAuth2.

O @mldev já havia dado a dica.

A documentação já indica a NECESSIDADE de saber o que é oAuth2. Mas sempre é mais fácil perguntar no fórum do que ler, né ?

Eu sinto vergonha quando passo por algo assim.

 

Vergonha eu sinto de vc @mldev que ao invés de ajudar manda o pessoal buscar no google, é mais fácil do que explicar como fazer né?

Se a documentação fosse descente não tinha tanta gente com dificuldade para fazer o processo de autenticação "SEM USUÁRIO PRA AUTORIZAR APLICAÇÃO".

Se for pra mandar o pessoal pesquisar no Google fecha essa porra de forum.

Edited by ALEXANDRE_REIS2012

Share this post


Link to post
Share on other sites
  • 0
On 3/17/2019 at 2:32 PM, mldev said:

não terá pontos vagos se você ler TODO o manual:

"Para criar um aplicativo dentro do Application Manager é requisito obrigatório utilizar o protocolo HTTPS em sua URI de encaminhamento pois, dessa forma, garante-se que a mensagem seja criptografada e somente enviada para as pessoas autorizadas para sua leitura." referência: https://developers.mercadolivre.com.br/pt_br/registre-o-seu-aplicativo

além disso é algo básico que qualquer profissional da área sabe que ao utilizar uma API RESTful nunca se deve utilizar uma conexão que não seja criptografada (SSL) 🙂

SSL não tem nada a ver com REST API, qualquer profissional da área sebe que SSL em uma conexão encriptada, e não criptografada como erroneamente tu citou, e serve somente para não permitir que seja "visto" o que esta sendo trafegado, então se tu tem uma aplicação que não trafega dados sensíveis, independente de ser REST ou não, NÃO PRECISA USAR SSL.

Share this post


Link to post
Share on other sites
  • 0
4 hours ago, ALEXANDRE_REIS2012 said:

Vergonha eu sinto de vc @mldev que ao invés de ajudar manda o pessoal buscar no google, é mais fácil do que explicar como fazer né?

Se a documentação fosse descente não tinha tanta gente com dificuldade para fazer o processo de autenticação "SEM USUÁRIO PRA AUTORIZAR APLICAÇÃO".

Se for pra mandar o pessoal pesquisar no Google fecha essa porra de forum.

4 hours ago, ALEXANDRE_REIS2012 said:

SSL não tem nada a ver com REST API, qualquer profissional da área sebe que SSL em uma conexão encriptada, e não criptografada como erroneamente tu citou, e serve somente para não permitir que seja "visto" o que esta sendo trafegado, então se tu tem uma aplicação que não trafega dados sensíveis, independente de ser REST ou não, NÃO PRECISA USAR SSL.

1. aprenda a LER! essa citação é do Mercado Livre e não minha e está na documentação deles

2. se você acredita que trafegar dados de login de contas comerciais (leia-se: DINHEIRO) não é dado sensível, então tenho dó de seus clientes. (ps.:  aproveite para ler a Lei Geral de Proteção de Dados Pessoais 13.709/2018 que verá que é de sua responsabilidade garantir a privacidade de todo e qualquer dado de seu cliente/usuário, sendo assim SSL se torna praticamente uma obrigação)

3. não sou funcionário do ML e se consegui entender a documentação então qualquer um com boa vontade também consegue (ps.: oAuth é padrão de mercado, não foi inventado pelo ML, qualquer desenvolvedor meia boca deveria conhecer)

4. aprenda a LER! quem disse "Eu sinto vergonha quando passo por algo assim." foi o @rodrigojob e não eu, mas lendo isso faço dele as minhas palavras

Share this post


Link to post
Share on other sites
  • 0
On 8/14/2019 at 8:57 AM, ALEXANDRE_REIS2012 said:

em uma conexão encriptada, e não criptografada como erroneamente tu citou

PS.: encriptar e criptografar são sinônimos

Share this post


Link to post
Share on other sites
  • 0
On 8/17/2019 at 11:59 AM, ALEXANDRE_REIS2012 said:

Só se for na tua terra, encriptar é o ato, criptografia é técnica.

Criptografar é o ato de usar a criptografia.
Língua portuguesa.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this