

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

# AWS Config 규칙 업데이트
<a name="evaluate-config_update-rules"></a>

 AWS Config 콘솔 또는 AWS SDKs를 사용하여 규칙을 업데이트할 수 있습니다.

**Topics**
+ [콘솔 사용](#evaluate-config_update-rules-console)
+ [AWS SDKs 사용](#evaluate-config_update-rules-cli)

## 규칙 업데이트(콘솔)
<a name="evaluate-config_update-rules-console"></a>

**규칙** 페이지에 규칙과 각 규칙의 현재 준수 상태가 표로 표시됩니다. 가 규칙에 대한 리소스 평가를 AWS Config 완료할 때까지 각 규칙의 결과는 **평가 중...**입니다. 새로 고침 버튼으로 결과를 업데이트할 수 있습니다. 가 평가를 AWS Config 완료하면 규정 준수 또는 비준수 규칙과 리소스 유형을 볼 수 있습니다. 자세한 내용은 [를 사용하여 AWS 리소스에 대한 규정 준수 정보 및 평가 결과 보기 AWS Config](evaluate-config_view-compliance.md) 단원을 참조하십시오.

### 규칙 업데이트
<a name="update-rules-console"></a>

**규칙 업데이트**

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/config/home](https://console.aws.amazon.com/config/home) AWS Config 콘솔을 엽니다.

1.  AWS Management Console 메뉴에서 리전 선택기가 AWS Config 규칙을 지원하는 리전으로 설정되어 있는지 확인합니다. 지원되는 리전의 목록은 **Amazon Web Services 일반 참조의 [AWS Config 리전 및 엔드포인트](https://docs.aws.amazon.com/general/latest/gr/rande.html#awsconfig_region)를 참조하세요.

1. 왼쪽 탐색 창에서 **규칙**을 선택합니다.

1. 업데이트하려는 규칙을 선택하고 **규칙 편집**을 선택합니다.

1. **규칙 편집** 페이지에서 설정을 수정하여 규칙을 필요에 따라 변경합니다.

1. **저장**을 선택합니다.

## 규칙(AWS SDKs) 업데이트
<a name="evaluate-config_update-rules-cli"></a>

### 규칙 업데이트
<a name="update-rules-cli"></a>

이전에 추가한 규칙을 업데이트하려면 이 요청에 사용하는 `ConfigRule` 데이터 형식에 `ConfigRuleName`, `ConfigRuleId` 또는 `ConfigRuleArn`을 사용하여 규칙을 지정합니다. 규칙을 추가할 때 사용하는 것과 동일한 `PutConfigRule` 명령을 사용합니다.

다음 코드 예시는 `PutConfigRule`의 사용 방법을 보여 줍니다.

------
#### [ CLI ]

**AWS CLI**  
** AWS 관리형 Config 규칙을 추가하려면**  
다음 명령은 AWS 관리형 Config 규칙을 추가하는 JSON 코드를 제공합니다.  

```
aws configservice put-config-rule --config-rule file://RequiredTagsForEC2Instances.json
```
`RequiredTagsForEC2Instances.json`은 규칙 구성이 포함된 JSON 파일입니다.  

```
{
  "ConfigRuleName": "RequiredTagsForEC2Instances",
  "Description": "Checks whether the CostCenter and Owner tags are applied to EC2 instances.",
  "Scope": {
    "ComplianceResourceTypes": [
      "AWS::EC2::Instance"
    ]
  },
  "Source": {
    "Owner": "AWS",
    "SourceIdentifier": "REQUIRED_TAGS"
  },
  "InputParameters": "{\"tag1Key\":\"CostCenter\",\"tag2Key\":\"Owner\"}"
}
```
`ComplianceResourceTypes` 속성의 경우이 JSON 코드는 범위를 `AWS::EC2::Instance` 유형의 리소스로 제한하므로 AWS Config는 규칙에 대해 EC2 인스턴스만 평가합니다. 규칙은 관리형 규칙이므로 `Owner` 속성은 `AWS`로 설정되고 `SourceIdentifier` 속성은 규칙 식별자인 `REQUIRED_TAGS`로 설정됩니다. `InputParameters` 속성의 경우 규칙에 필요한 태그 키인 `CostCenter` 및 `Owner`가 지정됩니다.  
명령이 성공하면 AWS Config는 출력을 반환하지 않습니다. 규칙 구성을 확인하려면 describe-config-rules 명령을 실행하고 규칙 이름을 지정합니다.  
**고객 관리형 Config 규칙을 추가하는 방법**  
다음 명령은 고객 관리형 Config 규칙을 추가하기 위한 JSON 코드를 제공합니다.  

```
aws configservice put-config-rule --config-rule file://InstanceTypesAreT2micro.json
```
`InstanceTypesAreT2micro.json`은 규칙 구성이 포함된 JSON 파일입니다.  

```
{
  "ConfigRuleName": "InstanceTypesAreT2micro",
  "Description": "Evaluates whether EC2 instances are the t2.micro type.",
  "Scope": {
    "ComplianceResourceTypes": [
      "AWS::EC2::Instance"
    ]
  },
  "Source": {
    "Owner": "CUSTOM_LAMBDA",
    "SourceIdentifier": "arn:aws:lambda:us-east-1:123456789012:function:InstanceTypeCheck",
    "SourceDetails": [
      {
        "EventSource": "aws.config",
        "MessageType": "ConfigurationItemChangeNotification"
      }
    ]
  },
  "InputParameters": "{\"desiredInstanceType\":\"t2.micro\"}"
}
```
`ComplianceResourceTypes` 속성의 경우이 JSON 코드는 범위를 `AWS::EC2::Instance` 유형의 리소스로 제한하므로 AWS Config는 규칙에 대해 EC2 인스턴스만 평가합니다. 이 규칙은 고객 관리형 규칙이므로 `Owner` 속성은 로 설정`CUSTOM_LAMBDA`되고 `SourceIdentifier` 속성은 AWS Lambda 함수의 ARN으로 설정됩니다. `SourceDetails` 객체가 필요합니다. `InputParameters` 속성에 지정된 파라미터는 AWS Config가 규칙을 기준으로 리소스를 평가하기 위해 Lambda 함수를 호출할 때 AWS Lambda 함수로 전달됩니다.  
명령이 성공하면 AWS Config는 출력을 반환하지 않습니다. 규칙 구성을 확인하려면 describe-config-rules 명령을 실행하고 규칙 이름을 지정합니다.  
+  API 세부 정보는 **AWS CLI 명령 참조의 [PutConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/put-config-rule.html)을 참조하세요.

------
#### [ Python ]

**SDK for Python(Boto3)**  
 GitHub에 더 많은 내용이 있습니다. [AWS 코드 예 리포지토리](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python/example_code/config#code-examples)에서 전체 예를 찾고 설정 및 실행하는 방법을 배워보세요.

```
class ConfigWrapper:
    """
    Encapsulates AWS Config functions.
    """

    def __init__(self, config_client):
        """
        :param config_client: A Boto3 AWS Config client.
        """
        self.config_client = config_client


    def put_config_rule(self, rule_name):
        """
        Sets a configuration rule that prohibits making Amazon S3 buckets publicly
        readable.

        :param rule_name: The name to give the rule.
        """
        try:
            self.config_client.put_config_rule(
                ConfigRule={
                    "ConfigRuleName": rule_name,
                    "Description": "S3 Public Read Prohibited Bucket Rule",
                    "Scope": {
                        "ComplianceResourceTypes": [
                            "AWS::S3::Bucket",
                        ],
                    },
                    "Source": {
                        "Owner": "AWS",
                        "SourceIdentifier": "S3_BUCKET_PUBLIC_READ_PROHIBITED",
                    },
                    "InputParameters": "{}",
                    "ConfigRuleState": "ACTIVE",
                }
            )
            logger.info("Created configuration rule %s.", rule_name)
        except ClientError:
            logger.exception("Couldn't create configuration rule %s.", rule_name)
            raise
```
+  API 세부 정보는 *AWS SDK for Python (Boto3) API 참조*의 [PutConfigRule](https://docs.aws.amazon.com/goto/boto3/config-2014-11-12/PutConfigRule)을 참조하세요.

------
#### [ SAP ABAP ]

**SDK for SAP ABAP API**  
 GitHub에 더 많은 내용이 있습니다. [AWS 코드 예 리포지토리](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/sap-abap/services/cfs#code-examples)에서 전체 예를 찾고 설정 및 실행하는 방법을 배워보세요.

```
    " Create a config rule for S3 bucket public read prohibition
    lo_cfs->putconfigrule(
      io_configrule = NEW /aws1/cl_cfsconfigrule(
        iv_configrulename = iv_rule_name
        iv_description = |S3 Public Read Prohibited Bucket Rule|
        io_scope = NEW /aws1/cl_cfsscope(
          it_complianceresourcetypes = VALUE /aws1/cl_cfscplncresrctypes_w=>tt_complianceresourcetypes(
            ( NEW /aws1/cl_cfscplncresrctypes_w( |AWS::S3::Bucket| ) )
          )
        )
        io_source = NEW /aws1/cl_cfssource(
          iv_owner = |AWS|
          iv_sourceidentifier = |S3_BUCKET_PUBLIC_READ_PROHIBITED|
        )
        iv_inputparameters = '{}'
        iv_configrulestate = |ACTIVE|
      )
    ).
    MESSAGE 'Created AWS Config rule.' TYPE 'I'.
```
+  API 세부 정보는 *AWS SDK for SAP ABAP API 참조*의 [PutConfigRule](https://docs.aws.amazon.com/sdk-for-sap-abap/v1/api/latest/index.html)을 참조하세요.

------