

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# CorsConfiguration
<a name="sam-property-api-corsconfiguration"></a>

API Gateway API의 교차 오리진 리소스 공유(CORS)를 관리합니다. 허용할 도메인을 문자열로 지정하거나 추가 Cors 구성을 사용하여 사전을 지정합니다.

**참고**  
CORS AWS SAM 를 사용하려면 OpenAPI 정의를 수정해야 합니다. `DefinitionBody`에서 인라인 OpenAPI 정의를 생성하여 CORS를 켭니다. `CorsConfiguration`가 OpenAPI 정의 및 속성 수준에서 설정된 경우는 이를 AWS SAM 병합합니다. 속성 수준이 OpenAPI 정의보다 우선합니다.

자세한 내용은 [API 게이트웨이 개발자 가이드](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-cors.html)의 *API 게이트웨이 REST API 리소스 활성화*를 참조하세요.

## 구문
<a name="sam-property-api-corsconfiguration-syntax"></a>

 AWS Serverless Application Model (AWS SAM) 템플릿에서이 개체를 선언하려면 다음 구문을 사용합니다.

### YAML
<a name="sam-property-api-corsconfiguration-syntax.yaml"></a>

```
  [AllowCredentials](#sam-api-corsconfiguration-allowcredentials): Boolean
  [AllowHeaders](#sam-api-corsconfiguration-allowheaders): String
  [AllowMethods](#sam-api-corsconfiguration-allowmethods): String
  [AllowOrigin](#sam-api-corsconfiguration-alloworigin): String
  [MaxAge](#sam-api-corsconfiguration-maxage): String
```

## 속성
<a name="sam-property-api-corsconfiguration-properties"></a>

 `AllowCredentials`   <a name="sam-api-corsconfiguration-allowcredentials"></a>
요청에 보안 인증 정보를 포함할 수 있는지 여부를 나타내는 부울.  
*유형*: 부울  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

 `AllowHeaders`   <a name="sam-api-corsconfiguration-allowheaders"></a>
허용할 헤더 문자열.  
*유형*: 문자열  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

 `AllowMethods`   <a name="sam-api-corsconfiguration-allowmethods"></a>
허용할 HTTP 메서드가 포함된 문자열입.  
*유형*: 문자열  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

 `AllowOrigin`   <a name="sam-api-corsconfiguration-alloworigin"></a>
허용할 오리진 문자열. 이것은 문자열 형식의 쉼표로 구분된 목록일 수 있습니다.  
*유형*: 문자열  
*필수 항목 여부:* 예  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

 `MaxAge`   <a name="sam-api-corsconfiguration-maxage"></a>
CORS Preflight 요청을 캐시하는 데 걸리는 시간(초)이 포함된 문자열.  
*유형*: 문자열  
*필수 항목 여부*: 아니요  
*CloudFormation 호환성*:이 속성은에 고유 AWS SAM 하며 CloudFormation 동등한 속성이 없습니다.

## 예제
<a name="sam-property-api-corsconfiguration--examples"></a>

### CorsConfiguration
<a name="sam-property-api-corsconfiguration--examples--corsconfiguration"></a>

CORS 구성의 예입니다. 이는 CORS가 구성된 [AWS::Serverless::Api](sam-resource-api.md) 정의와를 보여주는 AWS SAM 템플릿 파일의 일부일 뿐입니다[AWS::Serverless::Function](sam-resource-function.md). Lambda 프록시 통합 또는 HTTP 프록시 통합을 사용하는 경우 백엔드는 `Access-Control-Allow-Origin`, `Access-Control-Allow-Methods` 및 `Access-Control-Allow-Headers` 헤더를 반환해야 합니다.

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

```
Resources:
  ApiGatewayApi:
    Type: AWS::Serverless::Api
    Properties:
      StageName: Prod
      Cors:
        AllowMethods: "'POST, GET'"
        AllowHeaders: "'X-Forwarded-For'"
        AllowOrigin: "'https://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': 'https://example.com',
            'Access-Control-Allow-Methods': 'POST, GET'
            },
          'body': json.dumps('Hello from Lambda!')
          }
```