

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

# 에 대한 보안 모범 사례 AWS AppSync
<a name="best-practices"></a>

보안 AWS AppSync 은 단순히 몇 가지 레버를 켜거나 로깅을 설정하는 것 이상입니다. 다음 섹션에서는 서비스 사용 방식에 따라 달라지는 보안 모범 사례에 대해 설명합니다.

## 인증 방법 이해
<a name="best-practices-authn"></a>

AWS AppSync 는 사용자를 GraphQL APIs. 각 방법에는 보안, 감사 가능성 및 사용성 측면에서 상충되는 부분이 있습니다.

다음과 같은 인증 방법을 공통으로 사용할 수 있습니다.
+ Amazon Cognito 사용자 풀을 사용하면 GraphQL API가 사용자 특성을 세밀한 액세스 제어 및 필터링에 사용할 수 있습니다.
+ API 토큰은 수명이 제한되어 있으며 지속적 통합 시스템 및 외부 API와의 통합과 같은 자동화 시스템에 적합합니다.
+ AWS Identity and Access Management (IAM)는에서 관리되는 내부 애플리케이션에 적합합니다 AWS 계정.
+ OpenID Connect를 사용하면 OpenID Connect 프로토콜을 통해 액세스를 제어하고 페더레이션할 수 있습니다.

의 인증 및 권한 부여에 대한 자세한 내용은 섹션을 AWS AppSync참조하세요[GraphQL API를 보호하기 위한 권한 부여 및 인증 구성](security-authz.md).

## API 구성 변경 사항이 전파되는 방식 이해
<a name="best-practices-configuration-updates"></a>

API 구성에 대한 변경 사항을 저장하면가 변경 사항을 전파하기 AWS AppSync 시작합니다. 구성 변경이 전파될 때까지는 AWS AppSync 계속해서 이전 구성의 콘텐츠를 제공합니다. 구성 변경이 전파되면 AWS AppSync 즉시가 새 구성을 기반으로 콘텐츠를 제공하기 시작합니다. AWS AppSync 가 API에 대한 변경 사항을 전파하는 동안 API가 이전 구성 또는 새 구성을 기반으로 콘텐츠를 제공하고 있는지 확인할 수 없습니다.

## HTTP 해석기에 TLS 사용
<a name="best-practices-https"></a>

HTTP 해석기를 사용할 경우 가능하면 TLS 보안(HTTPS) 연결을 사용해야 합니다. 가 AWS AppSync 신뢰하는 TLS 인증서의 전체 목록은 섹션을 참조하세요[HTTPS 엔드포인트에 대해 AWS AppSync가 인정하는 인증 기관(CA)](http-cert-authorities.md).

## 가능한 한 권한이 가장 적은 역할 사용
<a name="best-practices-roles"></a>

[DynamoDB 해석기](tutorial-dynamodb-resolvers.md)와 같은 해석기를 사용할 때는 Amazon DynamoDB 테이블 등의 리소스에 대한 가장 제한적인 보기를 제공하는 역할을 사용하세요.

## IAM 정책 모범 사례
<a name="security_iam_service-with-iam-policy-best-practices"></a>

자격 증명 기반 정책에 따라 계정에서 사용자가 AWS AppSync 리소스를 생성, 액세스 또는 삭제할 수 있는지 여부가 결정됩니다. 이 작업으로 인해 AWS 계정에 비용이 발생할 수 있습니다. ID 기반 정책을 생성하거나 편집할 때는 다음 지침과 권장 사항을 따르세요.
+ ** AWS 관리형 정책을 시작하고 최소 권한으로 전환 -** 사용자 및 워크로드에 권한 부여를 시작하려면 많은 일반적인 사용 사례에 대한 권한을 부여하는 *AWS 관리형 정책을* 사용합니다. 에서 사용할 수 있습니다 AWS 계정. 사용 사례에 맞는 AWS 고객 관리형 정책을 정의하여 권한을 추가로 줄이는 것이 좋습니다. 자세한 내용은 *IAM 사용 설명서*의 [AWS 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) 또는 [AWS 직무에 대한 관리형 정책](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html)을 참조하세요.
+ **최소 권한 적용** – IAM 정책을 사용하여 권한을 설정하는 경우, 작업을 수행하는 데 필요한 권한만 부여합니다. 이렇게 하려면 *최소 권한*으로 알려진 특정 조건에서 특정 리소스에 대해 수행할 수 있는 작업을 정의합니다. IAM을 사용하여 권한을 적용하는 방법에 대한 자세한 정보는 *IAM 사용 설명서*에 있는 [IAM의 정책 및 권한](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)을 참조하세요.
+ **IAM 정책의 조건을 사용하여 액세스 추가 제한** – 정책에 조건을 추가하여 작업 및 리소스에 대한 액세스를 제한할 수 있습니다. 예를 들어, SSL을 사용하여 모든 요청을 전송해야 한다고 지정하는 정책 조건을 작성할 수 있습니다. AWS 서비스와 같은 특정를 통해 사용되는 경우 조건을 사용하여 서비스 작업에 대한 액세스 권한을 부여할 수도 있습니다 CloudFormation. 자세한 내용은 *IAM 사용 설명서*의 [IAM JSON 정책 요소: 조건](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html)을 참조하세요.
+ **IAM Access Analyzer를 통해 IAM 정책을 확인하여 안전하고 기능적인 권한 보장** - IAM Access Analyzer에서는 IAM 정책 언어(JSON)와 모범 사례가 정책에서 준수되도록 새로운 및 기존 정책을 확인합니다. IAM Access Analyzer는 100개 이상의 정책 확인 항목과 실행 가능한 추천을 제공하여 안전하고 기능적인 정책을 작성하도록 돕습니다. 자세한 내용은 *IAM 사용 설명서*의 [IAM Access Analyzer에서 정책 검증](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html)을 참조하세요.
+ **다중 인증(MFA) 필요 -**에서 IAM 사용자 또는 루트 사용자가 필요한 시나리오가 있는 경우 추가 보안을 위해 MFA를 AWS 계정켭니다. API 작업을 직접적으로 호출할 때 MFA가 필요하면 정책에 MFA 조건을 추가합니다. 자세한 내용은 *IAM 사용 설명서*의 [MFA를 통한 보안 API 액세스](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)를 참조하세요.

IAM의 모범 사례에 대한 자세한 내용은 *IAM 사용 설명서*의 [IAM의 보안 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)를 참조하세요.