Я пытался добавить AWS Cognito в качестве внешнего поставщика в мой экземпляр IdentityServer4.
services.AddAuthentication().AddOpenIdConnect(options =>
{
options.Authority = "https://cognito-idp.us-east-1.amazonaws.com/us-east-1_ydUErvZQJ/";
options.ClientId = "2m50t6m94ec7pcnuk4179k15sf";
options.ResponseType = OpenIdConnectResponseType.Token;
options.Scope.Add("email");
options.Scope.Add("profile");
options.Scope.Add("openid");
options.Scope.Add("aws.cognito.signin.user.admin");
});
К сожалению, я получаю сообщение об ошибке. Состояние пусто. Я уверен, что мне чего-то не хватает в конфиге. Я ознакомился с документацией AWS Cognito и IdentityServer4 и, похоже, не вижу, что мне не хватает.
System.Exception: An error was encountered while handling the remote login.
---> System.Exception: OpenIdConnectAuthenticationHandler: message.State is null or empty.
--- End of inner exception stack trace ---
at Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler`1.HandleRequestAsync()
at IdentityServer4.Hosting.FederatedSignOut.AuthenticationRequestHandlerWrapper.HandleRequestAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at IdentityServer4.Hosting.BaseUrlMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.MigrationsEndPointMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.Invoke(HttpContext httpContext)
at Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.DatabaseErrorPageMiddleware.Invoke(HttpContext httpContext)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)