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

CorsConfiguration

Gerencie o compartilhamento de recursos de origem cruzada (CORS) para suas APIs do API Gateway. Especifique o domínio a ser permitido como uma string ou especifique um dicionário com configuração adicional do Cors.

nota

O CORS exige que AWS SAM você modifique sua definição de OpenAPI. Crie uma definição de OpenAPI embutida no para ativar DefinitionBody o CORS. Se CorsConfiguration for definido na definição da OpenAPI e também no nível da propriedade, AWS SAM mescla-os. O nível da propriedade tem precedência sobre a definição da OpenAPI.

Para obter mais informações sobre o CORS, consulte Habilitar o CORS para um recurso API REST para a API Gateway no Guia do desenvolvedor do API Gateway.

Sintaxe

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

YAML

AllowCredentials: Boolean AllowHeaders: String AllowMethods: String AllowOrigin: String MaxAge: String

Propriedades

AllowCredentials

Booleano indicando se a solicitação pode conter credenciais.

Tipo: booliano

Obrigatório: não

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

AllowHeaders

Cadeia de cabeçalhos a serem permitidos.

Tipo: string

Obrigatório: não

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

AllowMethods

Cadeia de caracteres contendo os métodos HTTP a serem permitidos.

Tipo: string

Obrigatório: não

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

AllowOrigin

Cadeia de origem a ser permitida. Isso pode ser uma lista separada por vírgulas em formato de string.

Tipo: string

Obrigatório: Sim

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

MaxAge

Cadeia de caracteres contendo o número de segundos para armazenar em cache a solicitação CORS Preflight.

Tipo: string

Obrigatório: não

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

Exemplos

CorsConfiguration

Exemplo de configuração CORS. Essa é apenas uma parte de um arquivo de AWS SAM modelo que mostra uma AWS::Serverless::Api definição com o CORS configurado e umAWS::Serverless::Function. Se você usa uma integração de proxy Lambda ou uma integração de proxy HTTP, seu back-end deve retornar os cabeçalhos Access-Control-Allow-OriginAccess-Control-Allow-Methods, e. Access-Control-Allow-Headers

YAML

Resources: ApiGatewayApi: Type: AWS::Serverless::Api Properties: StageName: Prod Cors: AllowMethods: "'POST, GET'" AllowHeaders: "'X-Forwarded-For'" AllowOrigin: "'www.example.com'" MaxAge: "'600'" AllowCredentials: true ApiFunction: # Adds a GET method at the root resource via an Api event Type: AWS::Serverless::Function Properties: Events: ApiEvent: Type: Api Properties: Path: / Method: get RestApiId: Ref: ApiGatewayApi Runtime: python3.10 Handler: index.handler InlineCode: | import json def handler(event, context): return { 'statusCode': 200, 'headers': { 'Access-Control-Allow-Headers': 'Content-Type', 'Access-Control-Allow-Origin': 'www.example.com', 'Access-Control-Allow-Methods': 'POST, GET' }, 'body': json.dumps('Hello from Lambda!') }