รับการแจ้งเตือนเมื่อผู้ใช้กำลังดำเนินการในคอนโซล AWS เพิ่มเติมที่นี่
มันไม่ได้เป็นข้อกำหนดอย่างเคร่งครัดที่คุณใช้สิ่งนี้กับ AWS Controltower โมดูลได้รับการทดสอบเฉพาะในบัญชีเก็บถาวรบันทึกที่จัดส่งด้วย AWS Controltower ตั้งค่า Credentails AWS ของคุณเช่นที่ aws sts get-caller-identity | grep Account ให้รหัสบัญชีเก็บบันทึกบันทึกการควบคุมของคุณ
หากบัญชีของคุณเป็นส่วนหนึ่งขององค์กร AWS ที่ไม่ได้ใช้การบันทึกคลาวด์ cloudtrail ส่วนกลางหรือไม่ต้องการตรวจสอบ clickops ในระดับองค์กรคุณสามารถปรับใช้ clickops ในโหมด standalone ในบัญชีเดียว สำหรับโหมดสแตนด์อโลนคุณต้องเปิดใช้งาน CloudTrail ในบัญชีของคุณให้กำหนดค่าให้เขียนบันทึกไปยังกลุ่มบันทึก CloudWatch และได้รับอนุญาตเพียงพอในการสร้างตัวกรองการสมัครสมาชิกในกลุ่มบันทึก
การกระทำต่อไปนี้จะไม่ได้รับการแจ้งเตือนเหล่านี้เป็น:
ฟังก์ชั่นนี้สามารถเอาชนะได้ด้วยตัวแปร excluded_scoped_actions และตัวแปร excluded_scoped_actions_effect รายการการกระทำที่ยกเว้นมีอยู่ในเอกสาร Terraform ด้านล่าง
รายงานปัญหา/คำถาม/คำขอคุณสมบัติในส่วนปัญหา
แนวทางการสนับสนุนเต็มรูปแบบได้รับการคุ้มครองที่นี่
| ชื่อ | คำอธิบาย | พิมพ์ | ค่าเริ่มต้น | ที่จำเป็น |
|---|---|---|---|---|
| เพิ่มเติม _iam_policy_statements | แผนที่คำสั่งนโยบายแบบไดนามิกเพื่อแนบบทบาทฟังก์ชันแลมบ์ดา | any | {} | เลขที่ |
| อนุญาตให้ _aws_principals_for_sns_subscribe | รายชื่อหลักของ AWS อนุญาตให้สมัครรับหัวข้อ SNS (ใช้ได้เฉพาะกับการปรับใช้ ORG) | list(string) | [] | เลขที่ |
| CloudTrail_bucket_name | ถังที่มีบันทึก CloudTrail ที่คุณต้องการประมวลผล ชื่อถังควบคุมตามมาตามอนุสัญญาการตั้งชื่อนี้ aws-controltower-logs-{{account_id}}-{{region}} | string | "" | เลขที่ |
| CloudTrail_Bucket_Notifications_SNS_ARN | หัวข้อ SNS ARN สำหรับการแจ้งเตือนถัง หากไม่ได้ให้ไว้หัวข้อ SNS ใหม่จะถูกสร้างขึ้นพร้อมกับการกำหนดค่าการแจ้งเตือนของถัง | string | null | เลขที่ |
| CloudTrail_log_group | กลุ่มบันทึก CloudWatch สำหรับกิจกรรม CloudTrail | string | "" | เลขที่ |
| create_iam_role | กำหนดว่าบทบาทของ IAM นั้นถูกสร้างขึ้นหรือใช้บทบาท IAM ที่มีอยู่เดิม | bool | true | เลขที่ |
| event_batch_size | เหตุการณ์แบทช์เป็น chunks of event_batch_size | number | 100 | เลขที่ |
| event_maximum_batching_window | หน้าต่างแบทช์สูงสุดในไม่กี่วินาที | number | 300 | เลขที่ |
| event_processing_timeout | จำนวนสูงสุดของวินาทีที่แลมบ์ดาได้รับอนุญาตให้ทำงานและจำนวนวินาทีควรซ่อนอยู่ใน SQS หลังจากถูกรับแลมบ์ดาของฉัน | number | 60 | เลขที่ |
| excluded_accounts | รายการบัญชีที่ไม่รวมอยู่ในการสแกนการกระทำด้วยตนเอง สิ่งเหล่านี้ใช้เวลานานกว่า included_accounts | list(string) | [] | เลขที่ |
| excluded_scoped_actions | รายการการกระทำที่กำหนดขอบเขตบริการที่จะไม่ได้รับการแจ้งเตือน รูปแบบ {{service}}. amazonaws.com: {{{asction}} | list(string) | [] | เลขที่ |
| excluded_scoped_actions_effect | หากการดำเนินการที่มีอยู่ในปัจจุบันจะถูกแทนที่หรือต่อท้าย โดยค่าเริ่มต้นจะผนวกเข้ากับรายการค่าที่ถูกต้อง: ผนวกแทนที่ | string | "APPEND" | เลขที่ |
| Excluded_users | รายการที่อยู่อีเมลจะไม่ถูกรายงานเมื่อฝึก clickops | list(string) | [] | เลขที่ |
| Firehose_delivery_stream_name | Kinesis Firehose Delivery Stream ชื่อไปยังเหตุการณ์ Clickops ที่ส่งออกไป | string | null | เลขที่ |
| iam_role_arn | บทบาท IAM ที่มีอยู่ ARN สำหรับแลมบ์ดา จำเป็นถ้า create_iam_role ถูกตั้งค่าเป็น false | string | null | เลขที่ |
| รวม _accounts | รายการบัญชีที่สแกนเพื่อการกระทำด้วยตนเอง หากว่างจะสแกนบัญชีทั้งหมด | list(string) | [] | เลขที่ |
| รวม _users | รายการอีเมลที่สแกนเพื่อการกระทำด้วยตนเอง หากว่างจะสแกนอีเมลทั้งหมด | list(string) | [] | เลขที่ |
| KMS_KEY_ID_FOR_SNS_TOPIC | รหัสคีย์ KMS สำหรับการเข้ารหัส SNS_TOPIC (ใช้ได้เฉพาะกับการปรับใช้ ORG) | string | null | เลขที่ |
| lambda_deployment_s3_bucket | S3 Bucket สำหรับแพ็คเกจการปรับใช้แลมบ์ดา | string | null | เลขที่ |
| lambda_deployment_s3_key | คีย์วัตถุ S3 สำหรับแพ็คเกจการปรับใช้แลมบ์ดา มิฉะนั้นค่าเริ่มต้นเป็น var.naming_prefix/local.deployment_filename | string | null | เลขที่ |
| lambda_deployment_upload_to_s3_enabled | หากเป็น true แพ็คเกจการปรับใช้ Lambda ภายในโมดูล repo นี้จะถูกคัดลอกไปยัง S3 หาก false วัตถุ S3 จะต้องอัปโหลดแยกกัน ละเว้นถ้า lambda_deployment_s3_bucket เป็นโมฆะ | bool | true | เลขที่ |
| lambda_log_level | ระดับการบันทึกแลมบ์ดา หนึ่งใน: ["DEBUG", "INFO", "WARN", "ERROR"] | string | "WARN" | เลขที่ |
| lambda_memory_size | จำนวนหน่วยความจำสำหรับแลมบ์ดาที่จะใช้ | number | "128" | เลขที่ |
| lambda_runtime | แลมบ์ดารันไทม์ที่จะใช้ หนึ่งใน: ["python3.9", "python3.8", "python3.7"] | string | "python3.8" | เลขที่ |
| log_retention_in_days | จำนวนวันในการเก็บบันทึก CloudWatch | number | 14 | เลขที่ |
| naming_prefix | ทรัพยากรจะถูกนำหน้าด้วยสิ่งนี้ | string | "clickops-notifier" | เลขที่ |
| แบบสแตนด์อโลน | ปรับใช้ clickops ในบัญชีสแตนด์อโลนแทนที่จะเข้าสู่องค์กร AWS ทั้งหมด เหมาะอย่างยิ่งสำหรับทีมที่ต้องการตรวจสอบ ClickOps ในบัญชีของพวกเขาเท่านั้นที่ไม่มีเครื่องมือในระดับองค์กร | bool | false | เลขที่ |
| subcription_filter_distribution | วิธีที่ใช้ในการแจกจ่ายข้อมูลบันทึกไปยังปลายทาง โดยข้อมูลบันทึกเริ่มต้นจะถูกจัดกลุ่มโดยสตรีมบันทึก แต่การจัดกลุ่มสามารถตั้งค่าเป็นแบบสุ่มสำหรับการแจกแจงได้มากขึ้น คุณสมบัตินี้ใช้ได้เฉพาะเมื่อปลายทางเป็นสตรีม Amazon Kinesis ค่าที่ถูกต้องคือ "สุ่ม" และ "bylogstream" | string | "Random" | เลขที่ |
| แท็ก | แท็กเพื่อเพิ่มทรัพยากรนอกเหนือจาก default_tags สำหรับผู้ให้บริการ | map(string) | {} | เลขที่ |
| webhooks_for_msteams_notifications | แผนที่ของ custom_name => webhook URL s สำหรับการแจ้งเตือนทีม MS https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-inoming-webhook?tabs=dotnet | map(string) | {} | เลขที่ |
| webhooks_for_slack_notifications | แผนที่ของ custom_name => webhook URL s สำหรับการแจ้งเตือนหย่อน https://api.slack.com/messaging/webhooks | map(string) | {} | เลขที่ |
| ชื่อ | แหล่งที่มา | รุ่น |
|---|---|---|
| clickops_notifier_lambda | Terraform-Aws-Modules/Lambda/AWS | 4.9.0 |
| ชื่อ | คำอธิบาย |
|---|---|
| clickops_notifier_lambda | เปิดเผยเอาต์พุตทั้งหมดจากโมดูลแลมบ์ดา |
| sns_topic | เปิดเผยรายละเอียดการแจ้งเตือนของถัง |
| sqs_queue | เปิดเผยรายละเอียดการแจ้งเตือนของถัง |
| ชื่อ | รุ่น |
|---|---|
| aws | > = 4.9 |
| ชื่อ | รุ่น |
|---|---|
| รูปปั้น | > = 0.15.0 |
| aws | > = 4.9 |
| ชื่อ | พิมพ์ |
|---|---|
| aws_cloudwatch_log_subscription_filter.his | ทรัพยากร |
| aws_s3_bucket_notification.bucket_notification | ทรัพยากร |
| aws_s3_object.deployment | ทรัพยากร |
| aws_sns_topic.bucket_notifications | ทรัพยากร |
| aws_sns_topic_policy.bucket_notifications | ทรัพยากร |
| aws_sns_topic_subscription.bucket_notifications | ทรัพยากร |
| aws_sqs_queue.bucket_notifications | ทรัพยากร |
| aws_sqs_queue_policy.bucket_notifications | ทรัพยากร |
| aws_ssm_parameter.webhooks_for_msteams | ทรัพยากร |
| aws_ssm_parameter.webhooks_for_slack | ทรัพยากร |
| aws_caller_identity.current | แหล่งข้อมูล |
| aws_cloudwatch_log_group นี่ | แหล่งข้อมูล |
| aws_iam_policy_document.bucket_notifications | แหล่งข้อมูล |
| aws_iam_policy_document.lambda_permissions | แหล่งข้อมูล |
| aws_iam_policy_document.sns_topic_policy_bucket_notifications | แหล่งข้อมูล |
| aws_region.current | แหล่งข้อมูล |
locals {
ignored_scoped_events_built_in = [
" cognito-idp.amazonaws.com:InitiateAuth " ,
" cognito-idp.amazonaws.com:RespondToAuthChallenge " ,
" sso.amazonaws.com:Federate " ,
" sso.amazonaws.com:Authenticate " ,
" sso.amazonaws.com:Logout " ,
" sso.amazonaws.com:SearchUsers " ,
" sso.amazonaws.com:SearchGroups " ,
" sso.amazonaws.com:CreateToken " ,
" signin.amazonaws.com:UserAuthentication " ,
" signin.amazonaws.com:SwitchRole " ,
" signin.amazonaws.com:RenewRole " ,
" signin.amazonaws.com:ExternalIdPDirectoryLogin " ,
" signin.amazonaws.com:CredentialVerification " ,
" signin.amazonaws.com:CredentialChallenge " ,
" signin.amazonaws.com:CheckMfa " ,
" logs.amazonaws.com:StartQuery " ,
" cloudtrail.amazonaws.com:StartQuery " ,
" iam.amazonaws.com:SimulatePrincipalPolicy " ,
" iam.amazonaws.com:GenerateServiceLastAccessedDetails " ,
" glue.amazonaws.com:BatchGetJobs " ,
" glue.amazonaws.com:BatchGetCrawlers " ,
" glue.amazonaws.com:StartJobRun " ,
" glue.amazonaws.com:StartCrawler " ,
" athena.amazonaws.com:StartQueryExecution " ,
" servicecatalog.amazonaws.com:SearchProductsAsAdmin " ,
" servicecatalog.amazonaws.com:SearchProducts " ,
" servicecatalog.amazonaws.com:SearchProvisionedProducts " ,
" servicecatalog.amazonaws.com:TerminateProvisionedProduct " ,
" cloudshell.amazonaws.com:CreateSession " ,
" cloudshell.amazonaws.com:PutCredentials " ,
" cloudshell.amazonaws.com:SendHeartBeat " ,
" cloudshell.amazonaws.com:CreateEnvironment " ,
" kms.amazonaws.com:Decrypt " ,
" kms.amazonaws.com:RetireGrant " ,
" trustedadvisor.amazonaws.com:RefreshCheck " ,
# Must CreateMultipartUpload before uploading any parts.
" s3.amazonaws.com:UploadPart " ,
" s3.amazonaws.com:UploadPartCopy " ,
" route53domains:TransferDomain " ,
" support.amazonaws.com:AddAttachmentsToSet " ,
" support.amazonaws.com:AddCommunicationToCase " ,
" support.amazonaws.com:CreateCase " ,
" support.amazonaws.com:InitiateCallForCase " ,
" support.amazonaws.com:InitiateChatForCase " ,
" support.amazonaws.com:PutCaseAttributes " ,
" support.amazonaws.com:RateCaseCommunication " ,
" support.amazonaws.com:RefreshTrustedAdvisorCheck " ,
" support.amazonaws.com:ResolveCase " ,
" grafana.amazonaws.com:login_auth_sso " ,
]
}