

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

# core
<a name="core"></a>

![](http://docs.aws.amazon.com/ko_kr/solutions/latest/constructs/images/experimental.png)


 모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다[의미 체계 버전](https://semver.org/)모델. 즉, 이 패키지를 사용할 수도 있지만 이 패키지의 최신 버전으로 업그레이드할 때 소스 코드를 업데이트해야 할 수도 있습니다.

 핵심 라이브러리에는 AWS 솔루션 구성의 기본 구성 요소가 포함되어 있습니다. 나머지 AWS 솔루션 구조에서 사용되는 핵심 클래스를 정의합니다.

## AWS CDK 구조의 기본 속성
<a name="default-properties-for-aws-cdk-constructs"></a>

 코어 라이브러리는 AWS 솔루션 구조에서 사용하는 AWS CDK 구조의 기본 속성을 설정합니다.

 예를 들어, 다음은 AWS 솔루션 구조 구조에 의해 생성된 S3 버킷 구조의 기본 속성 조각입니다. 기본적으로 서버 측 암호화, 버킷 버전 관리를 설정하고 모든 공용 액세스를 차단하며 S3 액세스 로깅을 설정합니다.

```
{
  encryption: s3.BucketEncryption.S3_MANAGED,
  versioned: true,
  blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
  removalPolicy: RemovalPolicy.RETAIN,
  serverAccessLogsBucket: loggingBucket
}
```

## 기본 속성 재정의
<a name="override-the-default-properties"></a>

 코어 라이브러리에 의해 설정된 기본 속성은 사용자 제공 속성에 의해 재정의 될 수 있습니다. 예를 들어 사용자는 특정 요구 사항을 충족하기 위해 Amazon S3 퍼블릭 액세스 차단 속성을 재정의할 수 있습니다.

```
  const stack = new cdk.Stack();

  const props: CloudFrontToS3Props = {
    bucketProps: {
      blockPublicAccess: {
        blockPublicAcls: false,
        blockPublicPolicy: true,
        ignorePublicAcls: false,
        restrictPublicBuckets: true
      }
    }
  };

  new CloudFrontToS3(stack, 'test-cloudfront-s3', props);

  expect(stack).toHaveResource("AWS::S3::Bucket", {
    PublicAccessBlockConfiguration: {
      BlockPublicAcls: false,
      BlockPublicPolicy: true,
      IgnorePublicAcls: false,
      RestrictPublicBuckets: true
    },
  });
```

## 특성 재지정 경고
<a name="property-override-warnings"></a>

 코어 라이브러리의 기본 속성이 사용자가 제공 한 속성에 의해 재정의되면 구문은 변경 사항을 강조 표시하는 하나 이상의 경고 메시지를 콘솔에 내 보냅니다. 이러한 메시지는 사용자에게 상황 인식을 제공하고 보안 위험을 초래할 수 있는 의도하지 않은 재정의를 방지하기 위한 것입니다. 이러한 메시지는 배포/빌드 관련 명령이 실행될 때마다 나타납니다.`cdk deploy`,`cdk synth`,`npm test`등.

 예제 메시지`AWS_CONSTRUCTS_WARNING: An override has been provided for the property: BillingMode. Default value: 'PAY_PER_REQUEST'. You provided: 'PROVISIONED'.` 

### 재지정 경고 전환
<a name="toggling-override-warnings"></a>

 무시 경고 메시지는 기본적으로 활성화되어 있지만`overrideWarningsEnabled`shell 변수를 지정합니다.
+  명시적으로*끄기*경고 무시, 실행`export overrideWarningsEnabled=false`.
+  명시적으로*켜기*경고 무시, 실행`export overrideWarningsEnabled=true`.
+  기본 값으로 되돌리려면`unset overrideWarningsEnabled`.