

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á.

# ApiAuth
<a name="sam-property-api-apiauth"></a>

Configure a autorização para controlar o acesso à sua API API Gateway.

Para obter mais informações e exemplos para configurar o acesso usando, AWS SAM consulte[Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-apiauth-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-api-apiauth-syntax.yaml"></a>

```
  AddApiKeyRequiredToCorsPreflight: Boolean
  [AddDefaultAuthorizerToCorsPreflight](#sam-api-apiauth-adddefaultauthorizertocorspreflight): Boolean
  [ApiKeyRequired](#sam-api-apiauth-apikeyrequired): Boolean
  [Authorizers](#sam-api-apiauth-authorizers): CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAM
  [DefaultAuthorizer](#sam-api-apiauth-defaultauthorizer): String
  [InvokeRole](#sam-api-apiauth-invokerole): String
  [ResourcePolicy](#sam-api-apiauth-resourcepolicy): ResourcePolicyStatement
  [UsagePlan](#sam-api-apiauth-usageplan): ApiUsagePlan
```

**nota**  
A propriedade `Authorizers` inclui o `AWS_IAM`, mas não é necessária nenhuma configuração extra do `AWS_IAM`. Para ver um exemplo, consulte [AWS IAM](#sam-property-api-apiauth--examples--aws_iam).

## Propriedades
<a name="sam-property-api-apiauth-properties"></a>

 `AddApiKeyRequiredToCorsPreflight`   <a name="sam-api-apiauth-addapikeyrequiredtocorspreflight"></a>
Se as propriedades `ApiKeyRequired` e `Cors` estiverem definidas, a configuração `AddApiKeyRequiredToCorsPreflight` fará com que a chave de API seja adicionada à propriedade `Options`.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: `True`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AddDefaultAuthorizerToCorsPreflight`   <a name="sam-api-apiauth-adddefaultauthorizertocorspreflight"></a>
Se as propriedades `DefaultAuthorizer` e `Cors` estiverem definidas, a configuração `AddDefaultAuthorizerToCorsPreflight` fará com que o autorizador padrão seja adicionado à propriedade `Options` na seção OpenAPI.  
*Tipo*: booliano  
*Obrigatório*: não  
*Padrão*: verdadeiro  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ApiKeyRequired`   <a name="sam-api-apiauth-apikeyrequired"></a>
Se definido como verdadeiro, uma chave de API é necessária para todos os eventos da API. Para obter mais informações sobre chaves de API, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do Gateway da API*.  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Authorizers`   <a name="sam-api-apiauth-authorizers"></a>
O autorizador usado para controlar o acesso à sua API do API Gateway.  
Para obter mais informações, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).  
*Tipo*: [CognitoAuthorizer](sam-property-api-cognitoauthorizer.md)\$1 [LambdaTokenAuthorizer](sam-property-api-lambdatokenauthorizer.md)\$1 [LambdaRequestAuthorizer](sam-property-api-lambdarequestauthorizer.md)\$1 AWS\$1IAM  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: O SAM adiciona os Autorizadores à OpenApi definição de uma Api.

 `DefaultAuthorizer`   <a name="sam-api-apiauth-defaultauthorizer"></a>
Especifique um autorizador padrão para uma API do API Gateway, que será usada para autorizar chamadas de API por padrão.  
Se a API EventSource da função associada a essa API estiver configurada para usar permissões do IAM, essa propriedade deverá ser definida como`AWS_IAM`, caso contrário, ocorrerá um erro.
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: nenhum  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `InvokeRole`   <a name="sam-api-apiauth-invokerole"></a>
Define as credenciais de integração para todos os recursos e métodos com esse valor.  
`CALLER_CREDENTIALS`mapeia para `arn:aws:iam:::<user>/`, que usa as credenciais do chamador para invocar o endpoint.  
*Valores válidos*: `CALLER_CREDENTIALS`, `NONE`, `IAMRoleArn`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `CALLER_CREDENTIALS`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ResourcePolicy`   <a name="sam-api-apiauth-resourcepolicy"></a>
Configure a política de recursos para todos os métodos e caminhos em uma API.  
*Digite*: [ResourcePolicyStatement](sam-property-api-resourcepolicystatement.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.  
*Notas adicionais*: Essa configuração também pode ser definida individualmente `AWS::Serverless::Function` usando [ApiFunctionAuth](sam-property-function-apifunctionauth.md). Isso é necessário para APIs com`EndpointConfiguration: PRIVATE`.

 `UsagePlan`   <a name="sam-api-apiauth-usageplan"></a>
Configura um plano de uso associado a essa API. Para obter mais informações sobre planos de uso, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do API Gateway*.  
Essa AWS SAM propriedade gera três CloudFormation recursos adicionais quando essa propriedade é definida: an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), an e an [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html). Para obter informações sobre esse cenário, consulte [UsagePlan propriedade é especificada](sam-specification-generated-resources-api.md#sam-specification-generated-resources-api-usage-plan). Para obter informações gerais sobre CloudFormation os recursos gerados, consulte[CloudFormation Recursos gerados para AWS SAM](sam-specification-generated-resources.md).  
*Digite*: [ApiUsagePlan](sam-property-api-apiusageplan.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-apiauth--examples"></a>

### CognitoAuth
<a name="sam-property-api-apiauth--examples--cognitoauth"></a>

Exemplo de autenticação do Cognito

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
     UserPoolArn:
       Fn::GetAtt:
         - MyUserPool
         - Arn
     AuthType: "COGNITO_USER_POOLS"
  DefaultAuthorizer: MyCognitoAuth
  InvokeRole: CALLER_CREDENTIALS
  AddDefaultAuthorizerToCorsPreflight: false
  ApiKeyRequired: false
  ResourcePolicy:
    CustomStatements: [{
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "execute-api:/Prod/GET/pets",
      "Condition": {
          "IpAddress": {
              "aws:SourceIp": "1.2.3.4"
          }
        }
    }]
    IpRangeDenylist:
      - "10.20.30.40"
```

### AWS IAM
<a name="sam-property-api-apiauth--examples--aws_iam"></a>

AWS Exemplo de IAM

#### YAML
<a name="sam-property-api-apiauth--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers: AWS_IAM
```

# ApiUsagePlan
<a name="sam-property-api-apiusageplan"></a>

Configura um plano de uso para uma API do API Gateway. Para obter mais informações sobre planos de uso, consulte [Criar e usar planos de uso com chaves de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) no *Guia do desenvolvedor do Gateway da API*.

## Sintaxe
<a name="sam-property-api-apiusageplan-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-api-apiusageplan-syntax.yaml"></a>

```
  [CreateUsagePlan](#sam-api-apiusageplan-createusageplan): String
  [Description](#sam-api-apiusageplan-description): String
  [Quota](#sam-api-apiusageplan-quota): [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)
  [Tags](#sam-api-apiusageplan-tags): List
  [Throttle](#sam-api-apiusageplan-throttle): [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)
  [UsagePlanName](#sam-api-apiusageplan-usageplanname): String
```

## Propriedades
<a name="sam-property-api-apiusageplan-properties"></a>

 `CreateUsagePlan`   <a name="sam-api-apiusageplan-createusageplan"></a>
Determina como esse plano de uso é configurado. Os valores válidos são `PER_API`, `SHARED` e `NONE`.  
`PER_API` cria recursos [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html) e [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html) que são específicos para essa API. Esses recursos têm lógica IDs de`<api-logical-id>UsagePlan`,`<api-logical-id>ApiKey`, e`<api-logical-id>UsagePlanKey`, respectivamente.  
`SHARED`cria [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html), e [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)recursos que são compartilhados em qualquer API que também tenha `CreateUsagePlan: SHARED` o mesmo AWS SAM modelo. Esses recursos têm lógica IDs de`ServerlessUsagePlan`,`ServerlessApiKey`, e`ServerlessUsagePlanKey`, respectivamente. Se você usar essa opção, recomendamos adicionar configurações adicionais para esse plano de uso em apenas um recurso de API para evitar definições conflitantes e um estado incerto.  
`NONE` desativa a criação ou associação de um plano de uso com essa API. Isso só é necessário se `SHARED` ou `PER_API` estiver especificado no [Seção Global do modelo AWS SAM](sam-specification-template-anatomy-globals.md).  
*Valores válidos*: `PER_API`, `SHARED` e `NONE`  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Description`   <a name="sam-api-apiusageplan-description"></a>
Uma descrição do plano de uso.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Quota`   <a name="sam-api-apiusageplan-quota"></a>
Configura o número de solicitações que os usuários podem fazer em um determinado intervalo.  
*Digite*: [QuotaSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Quota](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Tags`   <a name="sam-api-apiusageplan-tags"></a>
Uma matriz de tags arbitrárias (pares de chave-valor) a ser associada ao plano de uso.  
Essa propriedade usa o [Tipo de CloudFormation Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-tags)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `Throttle`   <a name="sam-api-apiusageplan-throttle"></a>
Configura a taxa de solicitações geral (média de solicitações por segundo) e capacidade de intermitência.  
*Digite*: [ThrottleSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[Throttle](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

 `UsagePlanName`   <a name="sam-api-apiusageplan-usageplanname"></a>
Um nome para o plano de uso.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é passada diretamente para a `[UsagePlanName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname)` propriedade de um `AWS::ApiGateway::UsagePlan` recurso.

## Exemplos
<a name="sam-property-api-apiusageplan--examples"></a>

### UsagePlan
<a name="sam-property-api-apiusageplan--examples--usageplan"></a>

Veja a seguir um exemplo de plano de uso.

#### YAML
<a name="sam-property-api-apiusageplan--examples--usageplan--yaml"></a>

```
Auth:
  UsagePlan:
    CreateUsagePlan: PER_API
    Description: Usage plan for this API
    Quota:
      Limit: 500
      Period: MONTH
    Throttle:
      BurstLimit: 100
      RateLimit: 50
    Tags:
      - Key: TagName
        Value: TagValue
```

# CognitoAuthorizer
<a name="sam-property-api-cognitoauthorizer"></a>

Defina um autorizador do grupo de usuários do Amazon Cognito.

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-cognitoauthorizer-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-api-cognitoauthorizer-syntax.yaml"></a>

```
  [AuthorizationScopes](#sam-api-cognitoauthorizer-authorizationscopes): List
  [Identity](#sam-api-cognitoauthorizer-identity): CognitoAuthorizationIdentity
  [UserPoolArn](#sam-api-cognitoauthorizer-userpoolarn): String
```

## Propriedades
<a name="sam-property-api-cognitoauthorizer-properties"></a>

 `AuthorizationScopes`   <a name="sam-api-cognitoauthorizer-authorizationscopes"></a>
Lista de escopos de autorização para esse autorizador.  
*Tipo:* lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-cognitoauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador.  
*Digite*: [CognitoAuthorizationIdentity](sam-property-api-cognitoauthorizationidentity.md)  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `UserPoolArn`   <a name="sam-api-cognitoauthorizer-userpoolarn"></a>
Pode se referir a um usuário a pool/specify um grupo de usuários (arn) ao qual você deseja adicionar este autorizador cognito.  
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-cognitoauthorizer--examples"></a>

### CognitoAuth
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth"></a>

Exemplo de Autenticação Cognito

#### YAML
<a name="sam-property-api-cognitoauthorizer--examples--cognitoauth--yaml"></a>

```
Auth:
  Authorizers:
    MyCognitoAuth:
      AuthorizationScopes:
        - scope1
        - scope2
      UserPoolArn:
        Fn::GetAtt:
          - MyCognitoUserPool
          - Arn
      Identity:
        Header: MyAuthorizationHeader
        ValidationExpression: myauthvalidationexpression
```

# CognitoAuthorizationIdentity
<a name="sam-property-api-cognitoauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-cognitoauthorizationidentity-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-api-cognitoauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-cognitoauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-cognitoauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-cognitoauthorizationidentity-validationexpression): String
```

## Propriedades
<a name="sam-property-api-cognitoauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-cognitoauthorizationidentity-header"></a>
Especifique o nome do cabeçalho para Autorização na OpenApi definição.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: Autorização  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-cognitoauthorizationidentity-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. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidationExpression`   <a name="sam-api-cognitoauthorizationidentity-validationexpression"></a>
Especifique uma expressão de validação para validar a identidade recebida  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-cognitoauthorizationidentity--examples"></a>

### CognitoAuthIdentity
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity"></a>

#### YAML
<a name="sam-property-api-cognitoauthorizationidentity--examples--cognitoauthidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# LambdaRequestAuthorizer
<a name="sam-property-api-lambdarequestauthorizer"></a>

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

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-lambdarequestauthorizer-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-api-lambdarequestauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdarequestauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdarequestauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdarequestauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdarequestauthorizer-identity): LambdaRequestAuthorizationIdentity
```

## Propriedades
<a name="sam-property-api-lambdarequestauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdarequestauthorizer-disablefunctiondefaultpermissions"></a>
Especifique `true` para evitar a criação automática AWS SAM de um `AWS::Lambda::Permissions` recurso para provisionar permissões entre seu `AWS::Serverless::Api` recurso e a função Lambda do autorizador.  
*Valor padrão*: `false`  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-api-lambdarequestauthorizer-functionarn"></a>
Especifique a função ARN da função do Lambda que fornece autorização para a API.  
AWS SAM criará automaticamente um `AWS::Lambda::Permissions` recurso quando `FunctionArn` for especificado para`AWS::Serverless::Api`. O recurso `AWS::Lambda::Permissions` fornece permissões entre sua API e a função do Lambda do autorizador.
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-api-lambdarequestauthorizer-functioninvokerole"></a>
Adiciona credenciais do autorizador à OpenApi definição do autorizador Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionPayloadType`   <a name="sam-api-lambdarequestauthorizer-functionpayloadtype"></a>
Esta propriedade pode ser usada para definir o tipo de autorizador do Lambda para uma API.  
*Valores válidos*: `TOKEN` ou `REQUEST`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `TOKEN`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-lambdarequestauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador. Essa propriedade só é necessária se a propriedade do `FunctionPayloadType` estiver definida como `REQUEST`.  
*Digite*: [LambdaRequestAuthorizationIdentity](sam-property-api-lambdarequestauthorizationidentity.md)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdarequestauthorizer--examples"></a>

### LambdaRequestAuth
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizer--examples--lambdarequestauth--yaml"></a>

```
Authorizers:
  MyLambdaRequestAuth:
    FunctionPayloadType: REQUEST
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    FunctionInvokeRole:
      Fn::GetAtt:
        - LambdaAuthInvokeRole
        - Arn
    Identity:
      Headers:
        - Authorization1
```

# LambdaRequestAuthorizationIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-lambdarequestauthorizationidentity-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-api-lambdarequestauthorizationidentity-syntax.yaml"></a>

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

## Propriedades
<a name="sam-property-api-lambdarequestauthorizationidentity-properties"></a>

 `Context`   <a name="sam-api-lambdarequestauthorizationidentity-context"></a>
Converte as cadeias de caracteres de contexto fornecidas nas expressões de mapeamento do 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-api-lambdarequestauthorizationidentity-headers"></a>
Converte os cabeçalhos em uma sequência separada por vírgula de expressões de mapeamento de formato `method.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-api-lambdarequestauthorizationidentity-querystrings"></a>
Converte as cadeias de caracteres de consulta fornecidas em uma sequência separada por vírgula de expressões de mapeamento de formato `method.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-api-lambdarequestauthorizationidentity-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. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `StageVariables`   <a name="sam-api-lambdarequestauthorizationidentity-stagevariables"></a>
Converte as variáveis de estágio fornecidas em uma string separada por vírgula de expressões de mapeamento de 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-api-lambdarequestauthorizationidentity--examples"></a>

### LambdaRequestIdentity
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity"></a>

#### YAML
<a name="sam-property-api-lambdarequestauthorizationidentity--examples--lambdarequestidentity--yaml"></a>

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

# LambdaTokenAuthorizer
<a name="sam-property-api-lambdatokenauthorizer"></a>

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

Para ter mais informações e exemplos, consulte [Controle o acesso à API com seu AWS SAM modelo](serverless-controlling-access-to-apis.md).

## Sintaxe
<a name="sam-property-api-lambdatokenauthorizer-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-api-lambdatokenauthorizer-syntax.yaml"></a>

```
DisableFunctionDefaultPermissions: Boolean
[FunctionArn](#sam-api-lambdatokenauthorizer-functionarn): String
[FunctionInvokeRole](#sam-api-lambdatokenauthorizer-functioninvokerole): String
[FunctionPayloadType](#sam-api-lambdatokenauthorizer-functionpayloadtype): String
[Identity](#sam-api-lambdatokenauthorizer-identity): LambdaTokenAuthorizationIdentity
```

## Propriedades
<a name="sam-property-api-lambdatokenauthorizer-properties"></a>

 `DisableFunctionDefaultPermissions`   <a name="sam-api-lambdatokenauthorizer-disablefunctiondefaultpermissions"></a>
Especifique `true` para evitar a criação automática AWS SAM de um `AWS::Lambda::Permissions` recurso para provisionar permissões entre seu `AWS::Serverless::Api` recurso e a função Lambda do autorizador.  
*Valor padrão*: `false`  
*Tipo*: booliano  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionArn`   <a name="sam-api-lambdatokenauthorizer-functionarn"></a>
Especifique a função ARN da função do Lambda que fornece autorização para a API.  
AWS SAM criará automaticamente um `AWS::Lambda::Permissions` recurso quando `FunctionArn` for especificado para`AWS::Serverless::Api`. O recurso `AWS::Lambda::Permissions` fornece permissões entre sua API e a função do Lambda do autorizador.
*Tipo:* string  
*Obrigatório*: Sim  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionInvokeRole`   <a name="sam-api-lambdatokenauthorizer-functioninvokerole"></a>
Adiciona credenciais do autorizador à OpenApi definição do autorizador Lambda.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `FunctionPayloadType`   <a name="sam-api-lambdatokenauthorizer-functionpayloadtype"></a>
Esta propriedade pode ser usada para definir o tipo de autorizador do Lambda para uma Api.  
*Valores válidos*: `TOKEN` ou `REQUEST`  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: `TOKEN`  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `Identity`   <a name="sam-api-lambdatokenauthorizer-identity"></a>
Esta propriedade pode ser usada para especificar um `IdentitySource` em uma solicitação recebida para um autorizador. Essa propriedade só é necessária se a propriedade do `FunctionPayloadType` estiver definida como `REQUEST`.  
*Digite*: [LambdaTokenAuthorizationIdentity](sam-property-api-lambdatokenauthorizationidentity.md)  
*Obrigatório*: Condicional  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdatokenauthorizer--examples"></a>

### LambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--lambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
    Identity:
      Header: MyCustomAuthHeader # OPTIONAL; Default: 'Authorization'
      ValidationExpression: mycustomauthexpression # OPTIONAL
      ReauthorizeEvery: 20 # OPTIONAL; Service Default: 300
```

### BasicLambdaTokenAuth
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizer--examples--basiclambdatokenauth--yaml"></a>

```
Authorizers:
  MyLambdaTokenAuth:
    FunctionArn:
      Fn::GetAtt:
        - MyAuthFunction
        - Arn
```

# LambdaTokenAuthorizationIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity"></a>

Essa propriedade pode ser usada para especificar um IdentitySource em uma solicitação recebida para um autorizador. Para obter mais informações, IdentitySource consulte a [ OpenApi extensão ApiGateway Authorizer](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions-authorizer.html).

## Sintaxe
<a name="sam-property-api-lambdatokenauthorizationidentity-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-api-lambdatokenauthorizationidentity-syntax.yaml"></a>

```
  [Header](#sam-api-lambdatokenauthorizationidentity-header): String
  [ReauthorizeEvery](#sam-api-lambdatokenauthorizationidentity-reauthorizeevery): Integer
  [ValidationExpression](#sam-api-lambdatokenauthorizationidentity-validationexpression): String
```

## Propriedades
<a name="sam-property-api-lambdatokenauthorizationidentity-properties"></a>

 `Header`   <a name="sam-api-lambdatokenauthorizationidentity-header"></a>
Especifique o nome do cabeçalho para Autorização na OpenApi definição.  
*Tipo:* string  
*Obrigatório*: não  
*Padrão*: Autorização  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ReauthorizeEvery`   <a name="sam-api-lambdatokenauthorizationidentity-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. Por padrão, o API Gateway define essa propriedade como 300. O valor máximo é 3600, ou uma hora.  
*Tipo*: inteiro  
*Obrigatório*: não  
*Padrão*: 300  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `ValidationExpression`   <a name="sam-api-lambdatokenauthorizationidentity-validationexpression"></a>
Especifique uma expressão de validação para validar a identidade recebida.  
*Tipo:* string  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-lambdatokenauthorizationidentity--examples"></a>

### LambdaTokenIdentity
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity"></a>

#### YAML
<a name="sam-property-api-lambdatokenauthorizationidentity--examples--lambdatokenidentity--yaml"></a>

```
Identity:
  Header: MyCustomAuthHeader
  ValidationExpression: Bearer.*
  ReauthorizeEvery: 30
```

# ResourcePolicyStatement
<a name="sam-property-api-resourcepolicystatement"></a>

Configura uma política de recursos para todos os métodos e caminhos de uma API. Para obter mais informações sobre políticas de recursos, consulte Como [controlar o acesso a uma API com as políticas de recursos do API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-resource-policies.html) no *Guia do desenvolvedor do API Gateway*.

## Sintaxe
<a name="sam-property-api-resourcepolicystatement-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-api-resourcepolicystatement-syntax.yaml"></a>

```
  [AwsAccountBlacklist](#sam-api-resourcepolicystatement-awsaccountblacklist): List
  [AwsAccountWhitelist](#sam-api-resourcepolicystatement-awsaccountwhitelist): List
  [CustomStatements](#sam-api-resourcepolicystatement-customstatements): List
  [IntrinsicVpcBlacklist](#sam-api-resourcepolicystatement-intrinsicvpcblacklist): List
  [IntrinsicVpcWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcwhitelist): List
  [IntrinsicVpceBlacklist](#sam-api-resourcepolicystatement-intrinsicvpceblacklist): List
  [IntrinsicVpceWhitelist](#sam-api-resourcepolicystatement-intrinsicvpcewhitelist): List
  [IpRangeBlacklist](#sam-api-resourcepolicystatement-iprangeblacklist): List
  [IpRangeWhitelist](#sam-api-resourcepolicystatement-iprangewhitelist): List
  [SourceVpcBlacklist](#sam-api-resourcepolicystatement-sourcevpcblacklist): List
  [SourceVpcWhitelist](#sam-api-resourcepolicystatement-sourcevpcwhitelist): List
```

## Propriedades
<a name="sam-property-api-resourcepolicystatement-properties"></a>

 `AwsAccountBlacklist`   <a name="sam-api-resourcepolicystatement-awsaccountblacklist"></a>
As AWS contas a serem bloqueadas.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `AwsAccountWhitelist`   <a name="sam-api-resourcepolicystatement-awsaccountwhitelist"></a>
As AWS contas a serem permitidas. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista de strings  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `CustomStatements`   <a name="sam-api-resourcepolicystatement-customstatements"></a>
Uma lista de declarações de política de recursos personalizadas a serem aplicadas a essa API. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcblacklist"></a>
A lista de nuvens privadas virtuais (VPCs) a serem bloqueadas, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpcWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcwhitelist"></a>
A lista de VPCs permissões, em que cada VPC é especificada como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a função `Ref` [intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceBlacklist`   <a name="sam-api-resourcepolicystatement-intrinsicvpceblacklist"></a>
A lista de endpoints da VPC a serem bloqueados, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html).  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IntrinsicVpceWhitelist`   <a name="sam-api-resourcepolicystatement-intrinsicvpcewhitelist"></a>
A lista de endpoints da VPC a serem permitidos, em que cada endpoint da VPC é especificado como uma referência, como uma [referência dinâmica](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html) ou a `Ref` [função intrínseca](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html). Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeBlacklist`   <a name="sam-api-resourcepolicystatement-iprangeblacklist"></a>
Os endereços IP ou intervalos de endereços a serem bloqueados. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `IpRangeWhitelist`   <a name="sam-api-resourcepolicystatement-iprangewhitelist"></a>
Os endereços IP ou intervalos de endereços a serem permitidos.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcBlacklist`   <a name="sam-api-resourcepolicystatement-sourcevpcblacklist"></a>
A VPC de origem ou os endpoints da VPC a serem bloqueados. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`. Para obter um exemplo de uso desta propriedade, consulte a seção Exemplos na parte inferior desta página.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

 `SourceVpcWhitelist`   <a name="sam-api-resourcepolicystatement-sourcevpcwhitelist"></a>
A VPC de origem ou os endpoints da VPC a serem permitidos. Os nomes da VPC de origem devem começar com `"vpc-"` e os nomes dos endpoints da VPC de origem devem começar com `"vpce-"`.  
*Tipo*: lista  
*Obrigatório*: não  
*CloudFormation compatibilidade*: essa propriedade é exclusiva AWS SAM e não tem CloudFormation equivalente.

## Exemplos
<a name="sam-property-api-resourcepolicystatement--examples"></a>

### Exemplo de política de recursos
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example"></a>

O exemplo a seguir bloqueia dois endereços IP e uma VPC de origem e permite uma AWS conta.

#### YAML
<a name="sam-property-api-resourcepolicystatement--examples--resource-policy-example--yaml"></a>

```
Auth:
  ResourcePolicy:
    CustomStatements: [{
                         "Effect": "Allow",
                         "Principal": "*",
                         "Action": "execute-api:Invoke",
                         "Resource": "execute-api:/Prod/GET/pets",
                         "Condition": {
                           "IpAddress": {
                             "aws:SourceIp": "1.2.3.4"
                           }
                         }
                       }]
    IpRangeBlacklist:
      - "10.20.30.40"
      - "1.2.3.4"
    SourceVpcBlacklist:
      - "vpce-1a2b3c4d"
    AwsAccountWhitelist:
      - "111122223333"
    IntrinsicVpcBlacklist:
      - "{{resolve:ssm:SomeVPCReference:1}}" 
      - !Ref MyVPC
    IntrinsicVpceWhitelist:
      - "{{resolve:ssm:SomeVPCEReference:1}}" 
      - !Ref MyVPCE
```