

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# LambdaAuthorizer
<a name="sam-property-httpapi-lambdaauthorizer"></a>

Configure um autorizador Lambda para controlar o acesso à sua API HTTP do Amazon API Gateway com uma função. AWS Lambda 

Para obter mais informações e exemplos, consulte Como [trabalhar com AWS Lambda autorizadores para HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-lambdaauthorizer-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-lambdaauthorizer-syntax.yaml"></a>

```
  [AuthorizerPayloadFormatVersion](#sam-httpapi-lambdaauthorizer-authorizerpayloadformatversion): String
  EnableFunctionDefaultPermissions: Boolean
  [EnableSimpleResponses](#sam-httpapi-lambdaauthorizer-enablesimpleresponses): Boolean
  [FunctionArn](#sam-httpapi-lambdaauthorizer-functionarn): String
  [FunctionInvokeRole](#sam-httpapi-lambdaauthorizer-functioninvokerole): String
  [Identity](#sam-httpapi-lambdaauthorizer-identity): LambdaAuthorizationIdentity
```

## Propriedades
<a name="sam-property-httpapi-lambdaauthorizer-properties"></a>

 `AuthorizerPayloadFormatVersion`   <a name="sam-httpapi-lambdaauthorizer-authorizerpayloadformatversion"></a>
Especifica o formato da carga útil enviada a um autorizador da API HTTP do Lambda. Necessário para autorizadores da API HTTP do Lambda.  
Isso é passado para a seção `authorizerPayloadFormatVersion` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Valores válidos*: `1.0` ou `2.0`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EnableFunctionDefaultPermissions`   <a name="sam-httpapi-lambdaauthorizer-enablefunctiondefaultpermissions"></a>
Por padrão, o recurso da API HTTP não tem permissão para invocar o autorizador do Lambda. Especifique essa propriedade como `true` para criar automaticamente permissões entre seu recurso de API HTTP e seu autorizador do Lambda.  
*Tipo*: booliano  
*Obrigatório*: não  
*Valor padrão*: `false`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `EnableSimpleResponses`   <a name="sam-httpapi-lambdaauthorizer-enablesimpleresponses"></a>
Especifica se um autorizador do Lambda retorna uma resposta em um formato simples. Por padrão, um autorizador Lambda deve retornar uma política AWS Identity and Access Management (IAM). Se habilitado, o autorizador do Lambda pode retornar um valor booliano em vez de uma política do IAM.  
Isso é passado para a seção `enableSimpleResponses` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-httpapi-lambdaauthorizer-functionarn"></a>
O nome de recurso da Amazon (ARN) da função do Lambda que fornece autorização para a API.  
Isso é passado para a seção `authorizerUri` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-httpapi-lambdaauthorizer-functioninvokerole"></a>
O ARN do perfil do IAM que tem as credenciais necessárias para o API Gateway invocar a função do autorizador. Especifique esse parâmetro se a política baseada em recursos de sua função não conceder permissão ao API Gateway `lambda:InvokeFunction`.  
Isso é passado para a seção `authorizerCredentials` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
Para obter mais informações, consulte [Criar um autorizador do Lambda](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.example-create) no *Guia do desenvolvedor do API Gateway*.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-httpapi-lambdaauthorizer-identity"></a>
Especifica uma `IdentitySource` em uma solicitação recebida para um autorizador.  
Isso é passado para a seção `identitySource` de um `x-amazon-apigateway-authorizer` na seção `securitySchemes` de uma definição de OpenAPI.  
*Digite*: [LambdaAuthorizationIdentity](sam-property-httpapi-lambdaauthorizationidentity.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-lambdaauthorizer--examples"></a>

### LambdaAuthorizer
<a name="sam-property-httpapi-lambdaauthorizer--examples--lambdaauthorizer"></a>

LambdaAuthorizer exemplo

#### YAML
<a name="sam-property-httpapi-lambdaauthorizer--examples--lambdaauthorizer--yaml"></a>

```
Auth:
  Authorizers:
    MyLambdaAuthorizer:
      AuthorizerPayloadFormatVersion: 2.0
      FunctionArn:
        Fn::GetAtt:
          - MyAuthFunction
          - Arn
      FunctionInvokeRole:
        Fn::GetAtt:
          - LambdaAuthInvokeRole
          - Arn
      Identity:
        Headers:
          - Authorization
```

# LambdaAuthorizationIdentity
<a name="sam-property-httpapi-lambdaauthorizationidentity"></a>

A propriedade Use pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador Lambda. Para obter mais informações sobre fontes de identidade, consulte [Fontes de identidade](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html#http-api-lambda-authorizer.identity-sources) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-httpapi-lambdaauthorizationidentity-syntax"></a>

Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.

### YAML
<a name="sam-property-httpapi-lambdaauthorizationidentity-syntax.yaml"></a>

```
  [Context](#sam-httpapi-lambdaauthorizationidentity-context): List
  [Headers](#sam-httpapi-lambdaauthorizationidentity-headers): List
  [QueryStrings](#sam-httpapi-lambdaauthorizationidentity-querystrings): List
  [ReauthorizeEvery](#sam-httpapi-lambdaauthorizationidentity-reauthorizeevery): Integer
  [StageVariables](#sam-httpapi-lambdaauthorizationidentity-stagevariables): List
```

## Propriedades
<a name="sam-property-httpapi-lambdaauthorizationidentity-properties"></a>

 `Context`   <a name="sam-httpapi-lambdaauthorizationidentity-context"></a>
Converte as cadeias de caracteres de contexto fornecidas em uma lista de expressões de mapeamento no formato `$context.contextString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Headers`   <a name="sam-httpapi-lambdaauthorizationidentity-headers"></a>
Converte os cabeçalhos em uma lista de expressões de mapeamento no formato `$request.header.name`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `QueryStrings`   <a name="sam-httpapi-lambdaauthorizationidentity-querystrings"></a>
Converte as cadeias de caracteres de consulta fornecidas em uma lista de expressões de mapeamento no formato `$request.querystring.queryString`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-httpapi-lambdaauthorizationidentity-reauthorizeevery"></a>
O período time-to-live (TTL), em segundos, que especifica por quanto tempo o API Gateway armazena em cache os resultados do autorizador. Se você especificar um valor maior que 0, o API Gateway armazenará em cache as respostas do autorizador. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `StageVariables`   <a name="sam-httpapi-lambdaauthorizationidentity-stagevariables"></a>
Converte as variáveis de estágio fornecidas em uma lista de expressões de mapeamento no formato `$stageVariables.stageVariable`.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples--lambdarequestidentity"></a>

Exemplo de identidade de solicitação Lambda

#### YAML
<a name="sam-property-httpapi-lambdaauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

```
Identity:
  QueryStrings:
    - auth
  Headers:
    - Authorization
  StageVariables:
    - VARIABLE
  Context:
    - authcontext
  ReauthorizeEvery: 100
```