

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS Config カスタム Lambda ルールの削除済みリソースの管理
<a name="evaluate-config_develop-rules-delete"></a>

削除されたリソースをレポートするルールは、不必要なルール評価を避けるために、`NOT_APPLICABLE` の評価結果を返す必要があります。

リソースを削除すると、 は `ResourceDeleted`の `configurationItem`を使用して AWS Config を作成します`configurationItemStatus`。このメタデータを使用して、ルールによって削除されたリソースについてレポートされているかを確認できます。設定アイテムの詳細については、「[概念 \$1 設定項目](https://docs.aws.amazon.com/config/latest/developerguide/config-concepts.html#config-items.html)」を参照してください。

次のコードスニペットを含めて、削除されたリソースをチェックし、削除されたリソースについてレポート`NOT_APPLICABLE`する場合は、 AWS Config カスタム Lambda ルールの評価結果を に設定します。

------
#### [ Custom Lambda Rules (Node.js) ]

```
// Check whether the resource has been deleted. If the resource was deleted, then the evaluation returns not applicable.
function isApplicable(configurationItem, event) {
    checkDefined(configurationItem, 'configurationItem');
    checkDefined(event, 'event');
    const status = configurationItem.configurationItemStatus;
    const eventLeftScope = event.eventLeftScope;
    return (status === 'OK' || status === 'ResourceDiscovered') && eventLeftScope === false;
}
```

------
#### [ Custom Lambda Rules (Python) ]

```
# Check whether the resource has been deleted. If the resource was deleted, then the evaluation returns not applicable.
def is_applicable(configurationItem, event):
    try:
        check_defined(configurationItem, 'configurationItem')
        check_defined(event, 'event')
    except:
        return True
    status = configurationItem['configurationItemStatus']
    eventLeftScope = event['eventLeftScope']
    if status == 'ResourceDeleted':
        print("Resource Deleted, setting Compliance Status to NOT_APPLICABLE.")
    return (status == 'OK' or status == 'ResourceDiscovered') and not eventLeftScope
```

------

**注記**  
AWS Config マネージドルールと AWS Config カスタムポリシールールは、デフォルトでこの動作を処理します。  
Development Kit (RDK) と AWS Config Development AWS Config Kit Library (RDKlib) を使用して Python で AWS Config カスタム Lambd ルールを作成すると、インポートされた[評価者](https://github.com/awslabs/aws-config-rdklib/blob/master/rdklib/evaluator.py#L56)クラスがこの動作を確認します。RDK および RDKLib でルールを記述する方法については、「[RDK および RDKLib でルールを記述する](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_components.html#evaluate-config_components_logic)」を参照してください。