

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

# AWS Config カスタムルール
<a name="evaluate-config_develop-rules"></a>

AWS Config カスタムルールは、ゼロから作成するルールです。 AWS Config カスタムルールを作成するには、Lambda 関数 ([AWS Lambda デベロッパーガイド](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-concepts.html#gettingstarted-concepts-function)) とpolicy-as-code 言語である Guard ([Guard GitHub リポジトリ](https://github.com/aws-cloudformation/cloudformation-guard)) の 2 つの方法があります。

AWS Config Lambda で作成されたカスタムルールは*AWS Config カスタム Lambda ルール*と呼ばれ、Guard で作成された AWS Config カスタムルールは*AWS Config カスタムポリシールール*と呼ばれます。

カスタムルールを使用する前に、「[考慮事項](evaluate-config.md#evaluate-config-considerations)」を参照してください。

## AWS Config カスタムポリシールール
<a name="evaluate-config_develop-rules-policy"></a>

Guard を使用して記述されたルールは、 AWS Config コンソールまたは AWS Config ルール APIs を使用して作成できます。 AWS Config カスタムポリシールールを使用すると、Java または Python を使用して Lambda 関数を開発し、カスタム AWS Config ルールを管理することなく、カスタムルールを作成できます。 AWS Config カスタムポリシールールは、設定の変更によって開始されます。詳細については、「[Guard GitHub Repository](https://github.com/aws-cloudformation/cloudformation-guard)」を参照してください。

## AWS Config カスタム Lambda ルール
<a name="evaluate-config_develop-rules-lambda"></a>

カスタム Lambda ルールには、Java または Python を使用して AWS Config カスタムルールの Lambda 関数を作成するオプションが用意されています。* Lambda 関数*は、アップロード先のカスタムコードであり AWS Lambda、イベントソースによって発行されるイベントによって呼び出されます。Lambda 関数が AWS Config ルールに関連付けられている場合、 AWS Config はルールの開始時にその関数を呼び出します。次に、Lambda 関数は から送信された設定情報を評価し AWS Config、評価結果を返します。Lambda 関数の詳細については、「*AWS Lambda デベロッパーガイド*」の「[関数とイベントソース](https://docs.aws.amazon.com/lambda/latest/dg/intro-core-components.html)」を参照してください。

## AWS Config カスタムルールの形式の違い
<a name="evaluate-config_develop-schema"></a>

次の表は、[ConfigurationItem](https://docs.aws.amazon.com/config/latest/APIReference/API_ConfigurationItem.html) データ型のフィールドと AWS Config カスタムルールのフィールドの形式の違いを示しています。


| ConfigurationItem | AWS Config カスタムルール | 
| --- | --- | 
| version | configurationItemVersion | 
| accountId | awsAccountId | 
| arn | ARN | 
| configurationItemMD5Hash | configurationStateMd5Hash | 

**Topics**
+ [カスタムポリシールール](#evaluate-config_develop-rules-policy)
+ [カスタム Lambda ルール](#evaluate-config_develop-rules-lambda)
+ [AWS Config カスタムルールの形式の違い](#evaluate-config_develop-schema)
+ [カスタムポリシールールの作成](evaluate-config_develop-rules_cfn-guard.md)
+ [カスタム Lambda ルールの作成](evaluate-config_develop-rules_lambda-functions.md)
+ [カスタム Lambda ルールにより削除されたリソースを管理する](evaluate-config_develop-rules-delete.md)