Как установить пользовательское сообщение об ошибке в IdentityServer 4? - PullRequest
2 голосов
/ 28 февраля 2020

Я пытаюсь настроить сообщения об ошибках, возвращаемые IdentityServer 4. Я запускаю приложение. NET Core 2.2. Глядя в документы , я добавил следующий бит:

services
    .AddIdentityServer()
    // other stuff
    .AddCustomTokenRequestValidator<TestValidator>();

...

public class TestValidator : ICustomTokenRequestValidator
{
    public Task ValidateAsync(CustomTokenRequestValidationContextcontext)
    {
        var validationResult = context.Result;

        validationResult.ErrorDescription = ":D";

        return Task.CompletedTask;
    }
}

Проблема в том, что когда я устанавливаю точку останова в методе ValidateAsyn c, точка останова никогда не срабатывает. То, что я хотел бы сделать, - это когда пользователь вводит неверный набор идентификатора клиента / секрета для возврата пользовательского сообщения вместо обобщенного c error: invalid_client.

. Для запроса токена я использую следующее в моем другом проекте:

var token = await httpClient.RequestClientCredentialsTokenAsync(new ClientCredentialsTokenRequest {...});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...