• 0
Víctor Daniel

¿Cómo obtener mi id de usuario de forma segura?

Question

¿Cómo puedo obtener el id de mi usuario de forma segura, teniendo como punto de partida los siguientes requerimientos?

  • Solo se conoce nombre de usuario, contraseña y país de la tienda.
  • No se conoce access_token
  • No usar proceso de autorización

Bajo este escenario es posible obtener el id de mi usuario usando el endpoint de la API de Mercado Libre siguiente:

https://api.mercadolibre.com/sites/{Site_id}/search?nickname={Nickname}

Pero con esta variante no obtengo el id de forma segura, pues cualquier persona sabiendo mi nickname y el país de mi tienda podría saber mi id de usuario.

Para el proceso que me ocupa, pudiera usar la variante del proceso de autorización, para obtener un access_token y luego obtener mi id de usuario a partir del siguiente endpoint:

GET https://api.mercadolibre.com/users/me?access_token=$ACCESS_TOKEN

Pero el parámetro Redirect URI de las aplicaciones de Mercado Libre permite url fijas y no permite parámetros en la misma.

Explico mi situación:

Estoy desarrollando una app que estará embebida en Shopify y necesito vincular cuentas de Mercado Libre a esta app. Si uso el proceso de autorización de Mercado Libre descrito aquí https://developers.mercadolivre.com.br/en_us/authentication-and-authorization no tengo forma de saber desde que URL (Tienda en Shopify) viene la petición de autorización. Si el parámetro Redirect URI permitiese parámetros dinámicos podría lograrlo. Algo así:

devML.jpg.187e922e58b0d5428985bb75b1789f17.jpg

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Hola.

Estas usando php? Si es asi hay una libreria en composer

https://packagist.org/packages/docta/mercadolibre

Te facilita mucho la obtencion de los permisos y ademas ahi me di cuenta que puedes enviar una variable mas en la url para dar los permisos.

Puedes utilizar esta variable para enviar lo que tu quieras de informacion, y ya cuando obtengas la respuesta de ml, tambien te va a regresar esta variable ademas de la de code.

La variable que te comento se llama "state" y con eso te va a funcionar lo que quieres hacer.

Igual si no quieres usar la libreria, solo le agregas a la url para dar los permisos la variable state.

Y no hay forma segura de obtener el id de usuario, practicamente cualquiera puede saberlo.

Saludos.

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