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 consulteControlar o acesso à API com o modelo do AWS SAM.
Sintaxe
Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.
YAML
AddApiKeyRequiredToCorsPreflight:
Boolean
AddDefaultAuthorizerToCorsPreflight:Boolean
ApiKeyRequired:Boolean
Authorizers:CognitoAuthorizer | LambdaTokenAuthorizer | LambdaRequestAuthorizer | AWS_IAM
DefaultAuthorizer:String
InvokeRole:String
ResourcePolicy:ResourcePolicyStatement
UsagePlan:ApiUsagePlan
nota
A Authorizers
propriedade incluiAWS_IAM
, mas não é necessária nenhuma configuração extraAWS_IAM
. Para ver um exemplo, consulte AWS IAM.
Propriedades
-
AddApiKeyRequiredToCorsPreflight
-
Se as
Cors
propriedadesApiKeyRequired
e estiverem definidas, a configuraçãoAddApiKeyRequiredToCorsPreflight
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.
-
Se as
Cors
propriedadesDefaultAuthorizer
e estiverem definidas, a configuraçãoAddDefaultAuthorizerToCorsPreflight
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.
-
O autorizador usado para controlar o acesso ao seu API GatewayAPI.
Para obter mais informações, consulte Controlar o acesso à API com o modelo do AWS SAM.
Tipo: CognitoAuthorizer| LambdaTokenAuthorizer| LambdaRequestAuthorizer| AWS_IAM
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.
-
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 como
AWS_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_CREDENTIALS
mapeia paraarn: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: um AWS::ApiGateway::UsagePlan, um AWS::ApiGateway::UsagePlanKey, e um AWS::ApiGateway::ApiKey. Para obter informações sobre esse cenário, consulteA propriedade usagePlan é especificada. Para obter informações gerais sobre AWS CloudFormation os recursos gerados, consulteRecursos gerados do AWS CloudFormation para o 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 Cognito Auth
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"
AWS IAM
AWS IAMexemplo
YAML
Auth: Authorizers: AWS_IAM