

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

# AWS CLI를 사용하여 CORS 구성
<a name="cors-configuration-cli"></a>

`--cors` 파라미터와 함께 AWS CLI를 사용하여 Lightsail 버킷에 대한 CORS를 구성할 수 있습니다. 이 파라미터는 CORS 구성이 포함된 JSON 파일을 수락합니다. CORS 구성의 요소에 대한 자세한 내용은 [CORS 구성의 요소](cors-how-evaluation-works.md#cors-configuration-elements) 섹션을 참조하세요.

**Topics**
+ [CORS 구성 적용](#cors-configuration-apply)
+ [예제 CORS 구성](#cors-configuration-examples)
+ [CORS 구성 제거](#cors-remove-configuration)

## CORS 구성 적용
<a name="cors-configuration-apply"></a>

다음 절차는 JSON 파일을 지정하여 버킷에 CORS 구성을 적용할 수 있는 방법을 보여줍니다. 더 많은 예제 구성은 [예제 CORS 구성](#cors-configuration-examples) 섹션을 참조하세요.

**AWS CLI를 사용하여 버킷에 대한 CORS를 구성하려면**

1. CORS 구성이 포함된 JSON 파일을 생성합니다. 예를 들어, 다음 콘텐츠가 포함된 `cors-config.json`이라는 파일을 생성합니다.

   ```
   {
     "CORSRules": [
       {
         "AllowedOrigins": ["https://example.com"],
         "AllowedMethods": ["GET", "PUT", "POST"],
         "AllowedHeaders": ["*"],
         "MaxAgeSeconds": 3000
       }
     ]
   }
   ```

1. AWS CLI를 사용하여 버킷에 CORS 구성을 적용합니다.

   ```
   aws lightsail update-bucket --bucket-name {{amzn-s3-demo-bucket}} --cors file://{{cors-config.json}}
   ```

1. CORS 구성이 성공적으로 적용되었는지 확인합니다.

   ```
   aws lightsail get-buckets --bucket-name {{amzn-s3-demo-bucket}} --include-cors
   ```

**참고**  
{{amzn-s3-demo-bucket}}을 Lightsail 버킷 이름으로 바꿉니다.

## 예제 CORS 구성
<a name="cors-configuration-examples"></a>

다음 예제는 다양한 사용 사례에 대한 일반적인 CORS 구성을 보여줍니다.

**예제 1: 모든 오리진 및 메서드 허용**  
이 구성을 사용하면 모든 오리진이 HTTP 메서드를 사용하여 버킷에 액세스할 수 있습니다.

```
{
    "CORSRules": [
      {
        "AllowedOrigins": ["*"],
        "AllowedMethods": ["GET", "PUT", "POST", "DELETE", "HEAD"],
        "AllowedHeaders": ["*"],
        "MaxAgeSeconds": 3000
      }
    ]
  }
```

**예제 2: 특정 도메인으로 제한**  
이 구성은 `https://mywebsite.com`의 요청만 허용합니다.

```
{
    "CORSRules": [
      {
        "AllowedOrigins": ["https://mywebsite.com"],
        "AllowedMethods": ["GET", "PUT"],
        "AllowedHeaders": ["Authorization", "Content-Type"],
        "ExposeHeaders": ["ETag"],
        "MaxAgeSeconds": 3600
      }
    ]
  }
```

**예제 3: 서로 다른 오리진에 대한 다중 규칙**  
이 구성은 서로 다른 오리진에 대해 서로 다른 규칙을 정의합니다.

```
{
    "CORSRules": [
      {
        "AllowedOrigins": ["https://mywebsite.com"],
        "AllowedMethods": ["GET", "PUT", "POST"],
        "AllowedHeaders": ["*"],
        "MaxAgeSeconds": 3600
      },
      {
        "AllowedOrigins": ["https://cdn.mywebsite.com"],
        "AllowedMethods": ["GET"],
        "AllowedHeaders": ["Authorization"],
        "MaxAgeSeconds": 86400
      }
    ]
  }
```

## CORS 구성 제거
<a name="cors-remove-configuration"></a>

버킷에서 CORS 구성을 제거하려면 다음 AWS CLI 명령을 사용합니다.

```
aws lightsail update-bucket --bucket-name {{amzn-s3-demo-bucket}} --cors '{"rules":[]}'
```

**참고**  
{{amzn-s3-demo-bucket}}을 Lightsail 버킷의 이름으로 바꿉니다.

CORS 구성을 제거한 후에는 브라우저에서 버킷에 대한 교차 오리진 요청을 차단합니다.