AWS Лямбда-триггер предварительной аутентификации Cognito с использованием. Net Core 3 - возвращает исключение InvalidLambdaResponse - PullRequest
0 голосов
/ 14 июля 2020

Нужна помощь с AWS лямбда-триггером предварительной аутентификации Cognito, который нужно записать. Net Ядро 3. Я могу передать правильные атрибуты как часть атрибута 'validationData' в запросе когнито. Когда атрибут проверки не удовлетворяет условию, мне нужно отправить «UnauthorizedResponse» обратно на мой интерфейс. Однако, когда я пытаюсь вернуть объект ошибки из моего основного обработчика. net, я получаю исключение InvalidLambdaResponse. Любая справка или образец кода будут очень полезны.

Вот фрагмент кода с моей стороны -

public object FunctionHandler(JObject request, ILambdaContext context)
    {
        LambdaLogger.Log($"JObject: {request}");
        var input = request;
        var userId = input["userName"];
        LambdaLogger.Log($"Calling function: {context.FunctionName}\\n");
        LambdaLogger.Log($"Input userid: {userId}\\n");
        string strUserId = ((Newtonsoft.Json.Linq.JValue)userId).Value.ToString();
        var status = Util.FetchCognitoUser(strUserId); \\call to fetch user properties
        LambdaLogger.Log($"Pre auth execution complete");
        if (status)
        {
            return request;
        }
        else
        {
            request["response"]["statuscode"] = "400";
            request["response"]["statusmessage"] = "NotAuthorizedException";
            return request;
        }
    }

1 Ответ

0 голосов
/ 17 июля 2020

В конце концов, мне помогли некоторые пробы и ошибки. Это не так сложно, как казалось. Вы получаете необходимую функциональность, просто создавая исключение. :)

Я просто выбросил исключение из другой части приведенного выше примера кода. И мне удалось зафиксировать «исключение сбоя PreAuth»

else
    {
        throw new AmazonCognitoIdentityException("PreAuthentication Failure");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...