Saltar al contenido

Servicio de autorización de OAuth en ASP.NET Core

Nuestros mejores investigadores agotaron sus provisiones de café, por su búsqueda todo el tiempo por la respuesta, hasta que Abram encontró la contestación en Beanstalk y en este momento la comparte con nosotros.

Solución:

EDITAR (28/01/2021): AspNet.Security.OpenIdConnect.Server se fusionó con OpenIddict como parte de la actualización 3.0. Para comenzar con OpenIddict, visite documentation.openiddict.com.


No pierdas tu tiempo buscando un OAuthAuthorizationServerMiddleware alternativa en ASP.NET Core, el equipo de ASP.NET simplemente decidió no portarlo: https://github.com/aspnet/Security/issues/83

Sugiero echar un vistazo a AspNet.Security.OpenIdConnect.Serveruna bifurcación avanzada del middleware del servidor de autorización OAuth2 que viene con Katana 3: hay una versión de OWIN/Katana 3 y una versión de ASP.NET Core que es compatible con .NET Framework completo y .NET Core.

https://github.com/aspnet-contrib/AspNet.Security.OpenIdConnect.Server

ASP.NET Core 1.x:

app.UseOpenIdConnectServer(options =>

    options.AllowInsecureHttp = true;
    options.TokenEndpointPath = new PathString("/token");
    options.AccessTokenLifetime = TimeSpan.FromDays(1);
    options.TokenEndpointPath = "/token";
    options.Provider = new SimpleAuthorizationServerProvider();
);

ASP.NET Core 2.x:

services.AddAuthentication().AddOpenIdConnectServer(options =>

    options.AllowInsecureHttp = true;
    options.TokenEndpointPath = new PathString("/token");
    options.AccessTokenLifetime = TimeSpan.FromDays(1);
    options.TokenEndpointPath = "/token";
    options.Provider = new SimpleAuthorizationServerProvider();
);

Para obtener más información sobre este proyecto, recomiendo leer http://kevinchalet.com/2016/07/13/creating-your-own-openid-connect-server-with-asos-introduction/.

¡Buena suerte!

Para cualquiera que todavía esté buscando el servidor de autorización de OAuth original en ASP.NET 5, he transferido el código y la muestra original aquí: https://github.com/XacronDevelopment/oauth-aspnet

El puerto incluye compatibilidad con versiones anteriores para permitir que los servidores de recursos ASP.NET 4.x lean los tokens de acceso creados por el servidor de autorización.

Los paquetes nuget están aquí: https://www.nuget.org/packages/OAuth.AspNet.AuthServer https://www.nuget.org/packages/OAuth.AspNet.Tokens https://www.nuget.org/ paquetes/OAuth.Owin.Tokens

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *