У меня есть простой API ядра Dotnet, который получает значение1, значение2 и метод [Авторизовать].Я пытаюсь получить токен обратно из Cognito idp, чтобы получить доступ к результату, но дело в том, что я не смог найти способ отправить (имя пользователя, пароль и адрес электронной почты) в Cognito, чтобы получить токен.
Я получаю следующую ошибку:
Ошибка в обработке ответа SAML: недопустимые атрибуты пользователя: электронная почта: атрибут обязателен, error_uri: 'error_uri is null' ¨ В файле startup.cs я настроил егокак показано ниже:
services.Configure<OpenIdConnectOptions>(Configuration.GetSection("Authentication:Cognito"));
var serviceProvider = services.BuildServiceProvider();
var authOptions = serviceProvider.GetService<IOptions<OpenIdConnectOptions>>();
services.AddAuthentication(options =>
{
options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
})
.AddCookie()
.AddOpenIdConnect(options =>
{
options.ResponseType = authOptions.Value.ResponseType;
options.MetadataAddress = authOptions.Value.MetadataAddress;
options.ClientId = authOptions.Value.ClientId;
options.ClientSecret = authOptions.Value.ClientSecret;
options.SaveTokens = authOptions.Value.SaveTokens;
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = authOptions.Value.TokenValidationParameters.ValidateIssuer
};
});
Я ожидаю получить токен после отправки атрибутов (имя пользователя, пароль и адрес электронной почты) в Cognito idp и предоставить его почтальону для получения значений.