ASP.NET MVC 4.5.2 подключение к IdentityServer4
у меня есть веб-сайт, работающий на ASP.NET MVC 4.5.2. У меня работает сервер IdentityServer4, но когда я пытаюсь аутентифицироваться против него, я получаю:
invalid_request
для ASP.NET ядро MVC документация есть:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationScheme = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectOptions
{
AuthenticationScheme = "oidc",
SignInScheme = "Cookies",
Authority = "http://localhost:5000",
RequireHttpsMetadata = false,
ClientId = "mvc",
SaveTokens = true
});
Я включаю следующий пакет NuGet в свой проект Microsoft.Оуин.Безопасность.OpenIdConnect. Мой код выглядит следующим образом:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{
AuthenticationType = "oidc",
SignInAsAuthenticationType = "Cookies",
Authority = "http://localhost:5000",
ClientId = "mvc",
});
Как правильно подключиться к нему?
1 ответов
ОК, я получил это работает.
вам нужно добавить следующий пакет NuGet в ваше решение Microsoft.Оуин.Безопасность.OpenIdConnect .
мой Startup.Auth.cs
содержит
public void ConfigureAuth(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{
Authority = "http://localhost:5000", //ID Server
ClientId = "demo",
ResponseType = "id_token code",
SignInAsAuthenticationType = "Cookies",
RedirectUri = "http://localhost:51048/signin-oidc", //URL of website
Scope = "openid",
});
}
моя конфигурация клиента в IdentityServer:
public static IEnumerable<Client> GetClients()
{
return new List<Client> {
new Client {
ClientId = "demo",
AllowedScopes = new List<string> { "openid"},
AllowedGrantTypes = GrantTypes.Hybrid,
RedirectUris = new List<string>{"http://localhost:51048/signin-oidc"},
}
};
}