Ho utilizzato IdentityServer v3, ora voglio che un sito Web sia l'host di identità e l'host di web api.UseIdentityServerBearerTokenAuthentication non funziona per IdentityServer3
L'opzione di autorizzazione non viene utilizzata per convalidare il token. Ho verificato l'endpoint del token e l'endpoint di convalida del token funziona come previsto (posso ottenere e convalidare un token usando il postino). Ho usato l'attributo [Autorizza] per decorare il mio metodo di controllo. La registrazione completa è abilitata su IdentityServer, non viene registrato nulla quando si effettua una richiesta API con il nome dell'intestazione "Autorizzazione" con il valore "Bearer mytokenhere".
Questo è un sito Web vNext su ASP.NET 5 che utilizza Visual Studio 2015 CTP6.
app.UseMvc();
var certFile = AppDomain.CurrentDomain.BaseDirectory + "\\myawesomesite.pfx";
app.Map("/core", core =>
{
var factory = InMemoryFactory.Create(
users: Users.Get(),
clients: Clients.Get(),
scopes: Scopes.Get());
var idsrvOptions = new IdentityServerOptions
{
SiteName = "Lektieplan",
Factory = factory,
RequireSsl = false,
SigningCertificate = new X509Certificate2(certFile, "lektieplan"),
CorsPolicy = CorsPolicy.AllowAll,
LoggingOptions = new LoggingOptions { EnableWebApiDiagnostics = true,EnableHttpLogging = true, IncludeSensitiveDataInLogs = true, WebApiDiagnosticsIsVerbose = true }
};
core.UseIdentityServer(idsrvOptions);
});
app.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
{
Authority = "http://localhost:57540/core",
RequiredScopes = new[] { "api1" },
});
E il mio project.json
mie dipendenze:
"Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
"Microsoft.AspNet.Mvc": "6.0.0-beta3",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta3",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta3",
"Thinktecture.IdentityServer3": "1.3.0.0",
"Microsoft.AspNet.Owin": "1.0.0.0-beta3",
"Microsoft.AspNet.Security.DataProtection": "1.0.0.0-beta3",
"Thinktecture.IdentityServer3.AccessTokenValidation": "1.2.2",
"Autofac": "4.0.0-alpha1",
"log4net": "2.0.3"
ho mi sembra che alcuni dei campioni forniti funziona a causa di una scelta basata biscotto. Non voglio usare i cookie.
Penso che il middleware owin per l'autenticazione sia in conflitto con il middleware/core di owin, qualche suggerimento su come eseguire il debug di questo? – Jacee
ci sono novità? Funziona adesso? Voglio fare lo stesso. – dknaack