Я использую IdentityServer3 с несколькими приложениями за последний год. Все эти приложения работают на .Net Framework 4.5. Теперь я создал приложение ASP.Net Core MVC (1.1), и я хотел использовать свой IdentityServer для обеспечения безопасности этого приложения. Но я изо всех сил пытаюсь заставить его работать. Я получаю 401 Несанкционированную ошибку.401 Неавторизованный с IdentityServer3 В ASP.Net Core 1.1 MVC Application
Вот конфигурация Я использую:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationScheme = "Cookies",
AutomaticAuthenticate = true,
AutomaticChallenge = true
});
JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear();
app.UseOpenIdConnectAuthentication(new OpenIdConnectOptions
{
AuthenticationScheme = "oidc",
SignInScheme = "Cookies",
Authority = "<IdentityServer URL>",
RequireHttpsMetadata = false,
ClientId = "clientid",
ResponseType = "token id_token",
Scope = { "openid","email"},
SaveTokens = true,
PostLogoutRedirectUri = "http://localhost:29995/",
Scope = { "openid, email" },
ResponseType = "id_token token",
Events = new OpenIdConnectEvents()
{
OnTokenValidated = (context) =>
{
//my code
return Task.FromResult(0);
}
}
});
Когда я пытаюсь попасть защищенную страницу я получаю 401 Несанкционированное. Его даже не идет на страницу входа IdentityServer.
Url, что он пытается ударить
https://<IdentityServerUrl>/connect/authorize?client_id=APITestweb&redirect_uri=http://localhost:29995/signin-oidc&response_type=code id_token&scope=openid profile email&response_mode=form_post&nonce=<data>&state=<data>
идентификатор клиента и URL, правильно настроен. Я попытался создать еще одно приложение ASP.Net MVC (не ASP.Net Core), и это прекрасно работает с той же информацией о конфигурации.
Пожалуйста, помогите.
[Edit] Добавление записи информации в
[Debug] Executing action "WebClient.Controllers.HomeController.About (WebClient)"
[Information] Authorization failed for user: null.
[Warning] Authorization failed for the request at filter '"Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter"'.
[Information] Executing ChallengeResult with authentication schemes ([]).
[Debug] AuthenticationScheme: "Cookies" was not authenticated.
[Verbose] Entering "Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler"'s HandleUnauthorizedAsync.
[Verbose] Using properties.RedirectUri for 'local redirect' post authentication: '"http://localhost:29995/Home/About"'.
[Debug] Reading data from file '"C:\path\DataProtection-Keys\key-2a848b38-3cf4-4c57-b8ef-4c0b56c83993.xml"'.
[Debug] Found key {2a848b38-3cf4-4c57-b8ef-4c0b56c83993}.
[Debug] Considering key {2a848b38-3cf4-4c57-b8ef-4c0b56c83993} with expiration date 2017-03-08 21:08:54Z as default key.
[Debug] Decrypting secret element using Windows DPAPI.
[Debug] Opening CNG algorithm '"AES"' from provider 'null' with chaining mode CBC.
[Debug] Opening CNG algorithm '"SHA256"' from provider 'null' with HMAC.
[Debug] Using key {2a848b38-3cf4-4c57-b8ef-4c0b56c83993} as the default key.
[Verbose] Performing protect operation to key {2a848b38-3cf4-4c57-b8ef-4c0b56c83993} with purposes "('project path', 'Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectMiddleware', 'System.String', 'oidc', 'v1')".
[Verbose] Performing protect operation to key {2a848b38-3cf4-4c57-b8ef-4c0b56c83993} with purposes "('project path', 'Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectMiddleware', 'System.String', 'oidc', 'v1')".
[Information] AuthenticationScheme: "oidc" was challenged.
[Information] Request finished in 1301.6524ms 401
[Debug] Connection id ""0HL10CR7G2G0J"" completed keep alive response.
Вы добавили вход в проект 1.1? что говорит журнал? – Lutando
@ Lutando Спасибо. Я добавил информацию журнала к вопросу. – user3731783
Какая версия OIDC mw? –