Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

156
Views
Autenticación angular con ASP.NET Web Api

Necesito crear una autenticación entre mi interfaz Angular y el backend ASP.NET Web Api.

Los requisitos son:

  • Necesito 2 páginas de inicio de sesión diferentes (1 con una pantalla de inicio de sesión clásica y 1 con una pantalla de inicio de sesión clásica + LinkedIn)

No puedo encontrar ninguna documentación actualizada sobre cómo debo hacer esto... Miré a https://auth0.com/ pero están usando un paquete que ya no es compatible con mi versión web api.

Mi investigación también me enseñó que probablemente debería usar Jwt, pero estoy teniendo dificultades para construir esto en mi API web.

¿Puede alguien por favor darme la documentación adecuada? Sé que hay una autenticación integrada, pero no sé qué tan buena es esta y cómo debería usarla con JWT. Todo lo que encuentro en la web está desactualizado... .

Su ayuda es muy apreciada.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Este es el flujo que debes hacer para autenticar a un usuario con linkedin:
Parte angular:
1. redirigir al usuario con los parámetros de consulta solicitados, por ejemplo:

 var req = { response_type: "code", client_id: "Your Client ID", redirect_uri: location.origin + location.pathname, state: "DCESFWf45A53sdfKef434" }; window.location.href = linkedinAuthorizationUrl + ObjecttoParams(req);

2. Después de que el usuario se autentique, LinkedIn lo redirigirá a su redirección_url con un código de nombre de parámetro de consulta adicional, su controlador angular debe recopilarlo y enviarlo a su método webapi para el siguiente paso.
Parte WebApi:
3. Una vez que haya publicado el código de Linkedin en su webapi, debe intercambiar el token con la API de Linkedin (HTTP POST), por ejemplo:

 using (WebClient wc = new WebClient()){ string RedirectUrl = providerLogin.RedirectUrl; //Exchange tokens with linkedin byte[] resultAsBytes = wc.UploadValues("https://www.linkedin.com/oauth/v2/accessToken", new NameValueCollection() { { "grant_type", "authorization_code" }, { "code", "THE CODE YOU RECEIVED FROM THE CLIENT" }, {"redirect_uri",RedirectUrl }, {"client_id", "YOUR LINKEDIN KEY"}, {"client_secret", "YOUR LINKEDIN PASSWORD"} }); string resultAsString = System.Text.Encoding.UTF8.GetString(resultAsBytes); var resultAsJson = JObject.Parse(resultAsString); string accessToken = resultAsJson["access_token"].ToString(); }

4. Última parte: cuando tenga el token de acceso, debe realizar una solicitud GET a la API de Linkedin para obtener los detalles del usuario:

 using (WebClient wc = new WebClient()){ wc.Headers.Add("Authorization", "Bearer " + accessToken); var json = wc.DownloadString("https://api.linkedin.com/v1/people/~: (email-address,id,first-name,last-name,picture-url,public-profile-url)? format=json"); resultAsJson = JObject.Parse(json); }

¡Y eso es! Espero que todo esté claro y que entiendas mi código. ¡Buena suerte!

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!