Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan PutConfigRule
dengan AWS SDK atau CLI
Contoh kode berikut menunjukkan cara menggunakanPutConfigRule
.
- CLI
-
- AWS CLI
-
Untuk menambahkan aturan Config AWS terkelola
Perintah berikut menyediakan JSON kode untuk menambahkan aturan Config AWS terkelola:
aws configservice put-config-rule --config-rule
file://RequiredTagsForEC2Instances.json
RequiredTagsForEC2Instances.json
adalah JSON file yang berisi konfigurasi aturan:{ "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\"}" }
Untuk
ComplianceResourceTypes
atribut, JSON kode ini membatasi cakupan ke sumber dayaAWS::EC2::Instance
tipe, jadi AWS Config hanya akan mengevaluasi EC2 instance terhadap aturan. Karena aturan adalah aturan terkelola,Owner
atribut diatur keAWS
, danSourceIdentifier
atribut diatur ke pengidentifikasi aturan,REQUIRED_TAGS
. UntukInputParameters
atribut, kunci tag yang dibutuhkan aturan,CostCenter
danOwner
, ditentukan.Jika perintah berhasil, AWS Config tidak mengembalikan output. Untuk memverifikasi konfigurasi aturan, jalankan describe-config-rules perintah, dan tentukan nama aturan.
Untuk menambahkan aturan Config terkelola pelanggan
Perintah berikut menyediakan JSON kode untuk menambahkan aturan Config terkelola pelanggan:
aws configservice put-config-rule --config-rule
file://InstanceTypesAreT2micro.json
InstanceTypesAreT2micro.json
adalah JSON file yang berisi konfigurasi aturan:{ "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\"}" }
Untuk
ComplianceResourceTypes
atribut, JSON kode ini membatasi cakupan ke sumber dayaAWS::EC2::Instance
tipe, jadi AWS Config hanya akan mengevaluasi EC2 instance terhadap aturan. Karena aturan ini adalah aturan yang dikelola pelanggan,Owner
atribut disetel keCUSTOM_LAMBDA
, danSourceIdentifier
atribut disetel ke ARN fungsi AWS Lambda.SourceDetails
Objek diperlukan. Parameter yang ditentukan untukInputParameters
atribut diteruskan ke fungsi AWS Lambda saat AWS Config memanggilnya untuk mengevaluasi sumber daya terhadap aturan.Jika perintah berhasil, AWS Config tidak mengembalikan output. Untuk memverifikasi konfigurasi aturan, jalankan describe-config-rules perintah, dan tentukan nama aturan.
-
Untuk API detailnya, lihat PutConfigRule
di Referensi AWS CLI Perintah.
-
- Python
-
- SDKuntuk Python (Boto3)
-
catatan
Ada lebih banyak tentang GitHub. Temukan contoh lengkapnya dan pelajari cara mengatur dan menjalankannya di AWS Repositori Contoh Kode
. 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
-
Untuk API detailnya, lihat PutConfigRule AWSSDKReferensi Python (Boto3). API
-