Este Lambda function gerencia o processo de autenticação para um pool de usuários Cognito. Ele recebe uma solicitação contendo um CPF do usuário e tenta registrar o usuário usando o método sign_up
do Cognito. Se o usuário for registrado com sucesso, ele inicia o processo de autenticação usando initiate_auth
e retorna a resposta de autenticação.
COGNITO_CLIENT_ID
: O ID do cliente do pool de usuários do Cognito.COGNITO_USER_POOL_ID
: O ID do pool de usuários do Cognito.COGNITO_ADMIN_USERNAME
: O nome de usuário do administrador para o pool de usuários do Cognito.
A função espera uma solicitação HTTP com um payload JSON contendo o CPF do usuário:
{
"body": "{\"cpf\":\"12345678900\"}"
}
A função retorna um objeto JSON com a seguinte estrutura:
statusCode: O código de status HTTP da resposta. body: Um objeto JSON contendo uma mensagem e a resposta de autenticação.
Exemplo de resposta bem-sucedida:
{
"statusCode": 200,
"body": "{\"message\":\"Usuário autenticado com sucesso\",\"response\":{\"AuthenticationResult\":{...}}}"
}
Exemplo de resposta não autorizada:
{
"statusCode": 401,
"body": "{\"message\":\"Usuário não autorizado\"}"
}
Exemplo de resposta de erro desconhecido:
{
"statusCode": 500,
"body": "{\"message\":\"Erro desconhecido: ...\"}"
}
- boto3
- botocore
- requests
- requests-aws4auth
Esta função assume que o CPF é um nome de usuário válido para o Cognito. Ajustes podem ser necessários com base em seus requisitos específicos e configurações do Cognito. O tratamento de erros é simplificado para fins de demonstração. Modifique conforme necessário para sua aplicação.