ApiAuth - AWS Serverless Application Model

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

Configure a autorização para controlar o acesso ao seu API GatewayAPI.

Para obter mais informações e exemplos para configurar o acesso usando, AWS SAM consulteControle API o acesso com seu AWS SAM modelo.

Sintaxe

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

Propriedades

AddApiKeyRequiredToCorsPreflight

Se as Cors propriedades ApiKeyRequired e estiverem definidas, a configuração AddApiKeyRequiredToCorsPreflight fará com que a API chave seja adicionada à Options propriedade.

Tipo: booliano

Obrigatório: não

Padrão: True

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

AddDefaultAuthorizerToCorsPreflight

Se as Cors propriedades DefaultAuthorizer e estiverem definidas, a configuração AddDefaultAuthorizerToCorsPreflight fará com que o autorizador padrão seja adicionado à Options propriedade na API seção Abrir.

Tipo: booliano

Obrigatório: não

Padrão: verdadeiro

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

ApiKeyRequired

Se definido como verdadeiro, uma API chave é necessária para todos os API eventos. Para obter mais informações sobre API chaves, consulte Criar e usar planos de uso com API chaves no Guia do desenvolvedor do API Gateway.

Tipo: booliano

Obrigatório: não

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

Authorizers

O autorizador usado para controlar o acesso ao seu API GatewayAPI.

Para obter mais informações, consulte Controle API o acesso com seu AWS SAM modelo.

Tipo: CognitoAuthorizer| LambdaTokenAuthorizer| LambdaRequestAuthorizer

Obrigatório: não

Padrão: nenhum

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

Notas adicionais: SAM adiciona os Autorizadores à OpenApi definição de uma Api.

DefaultAuthorizer

Especifique um autorizador padrão para um API GatewayAPI, que será usado para autorizar API chamadas por padrão.

nota

Se a Api EventSource da função associada a isso API estiver configurada para usar IAM Permissões, essa propriedade deverá ser definida comoAWS_IAM, caso contrário, ocorrerá um erro.

Type: string

Obrigatório: não

Padrão: nenhum

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

InvokeRole

Define as credenciais de integração para todos os recursos e métodos com esse valor.

CALLER_CREDENTIALSmapeia para arn:aws:iam::*:user/*, que usa as credenciais do chamador para invocar o endpoint.

Valores válidos: CALLER_CREDENTIALS, NONE, IAMRoleArn

Type: string

Obrigatório: não

Padrão: CALLER_CREDENTIALS

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

ResourcePolicy

Configure a política de recursos para todos os métodos e caminhos em umAPI.

Tipo: ResourcePolicyStatement

Obrigatório: não

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

Notas adicionais: Essa configuração também pode ser definida individualmente AWS::Serverless::Function usando ApiFunctionAuth. Isso é necessário para APIs comEndpointConfiguration: PRIVATE.

UsagePlan

Configura um plano de uso associado a issoAPI. Para obter mais informações sobre planos de uso, consulte Criar e usar planos de uso com API chaves no Guia do desenvolvedor do API Gateway.

Essa AWS SAM propriedade gera três AWS CloudFormation recursos adicionais quando essa propriedade é definida: an AWS::ApiGateway::UsagePlanAWS::ApiGateway::UsagePlanKey, an e an AWS::ApiGateway::ApiKey. Para obter informações sobre esse cenário, consulte UsagePlanpropriedade é especificada. Para obter informações gerais sobre AWS CloudFormation os recursos gerados, consulteAWS CloudFormation Recursos gerados para AWS SAM.

Tipo: ApiUsagePlan

Obrigatório: não

AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.

Exemplos

CognitoAuth

Exemplo de Autenticação Cognito

YAML

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"