Kanji
・雲端架構工程師 / 自由職業 ・1993年出生 ・愛媛縣出身 / 現居東京都澀谷區 ・5年 AWS 實戰經驗 個人檔案詳情
目錄
AWS CloudTrail(以下簡稱“CloudTrail”)是一項 記錄您在 AWS 賬戶中執行的操作 的服務。
它記錄三種型別的事件:管理事件、資料事件和洞察事件。
管理事件記錄使用 AWS 管理控制檯、AWS 開發工具包、AWS CLI、AWS API 等修改 AWS 資源的 API 呼叫。
資料事件記錄活動,例如訪問 S3 儲存桶中的物件和執行 Lambda 函式。
Insight 事件記錄與您的 AWS 賬戶的安全性和效能相關的發現結果。
預設情況下,建立 AWS 賬戶時會啟用 CloudTrail。
參考:【什麼是AWS CloudTrail?- AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)
但是,預設情況下不會建立“軌跡”。您可以在 AWS 管理控制檯中檢視最多 90 天的事件,但由於不輸出日誌檔案,因此您無法使用 Athena 或 CloudWatch Logs 分析它們。如果您想延長保留期,則需要配置輸出到 S3 儲存桶或 CloudWatch Logs。
參考: CloudTrail 的工作原理 - AWS CloudTrail
如果滿足以下任一條件,您需要建立 CloudTrail 跟蹤:
1:傳送到 S3 儲存桶的第一個管理事件是免費的。從傳送到 S3 儲存桶的第二個管理事件開始,將收取傳送費用。 2:對於管理和資料事件,在傳送到 S3 儲存桶時收費,而對於洞察事件,根據分析事件的數量收費。
- AWS::CloudTrail::Channel - AWS::CodeWhisperer::Customization - AWS::CodeWhisperer::Profile - AWS::Cognito::IdentityPool - AWS::DynamoDB::Stream - AWS::DynamoDB::Table - AWS::EC2::Snapshot - AWS::EMRWAL::Workspace - AWS::FinSpace::Environment - AWS::Glue::Table - AWS::GuardDuty::Detector - AWS::KendraRanking::ExecutionPlan - AWS::KinesisVideo::Stream - AWS::Lambda::Function - AWS::ManagedBlockchain::Network - AWS::ManagedBlockchain::Node - AWS::MedicalImaging::Datastore - AWS::PCAConnectorAD::Connector - AWS::S3::AccessPoint - AWS::S3::Object - AWS::S3ObjectLambda::AccessPoint - AWS::S3Outposts::Object - AWS::SageMaker::Endpoint - AWS::SageMaker::ExperimentTrialComponent - AWS::SageMaker::FeatureGroup - AWS::SNS::PlatformEndpoint - AWS::SNS::Topic - AWS::SSMMessages::ControlChannel - AWS::Timestream::Database - AWS::Timestream::Table - AWS::VerifiedPermissions::PolicyStore
錄製的目的因資源而異,因此請根據需要進行選擇。
例如,透過記錄S3儲存桶的資料事件,您可以獲取儲存桶中物件的更改歷史記錄。
請注意,雖然資料事件保證完整性,但 S3 伺服器訪問日誌卻不能。
參考:【如何處理S3伺服器訪問日誌中丟失的訪問日誌|DevelopersIO](https://dev.classmethod.jp/articles/tsnote-the-s3-server-access-log-Detected-an-unlogged-access/)
另一方面,伺服器訪問日誌有時用於輸出 Control Tower 建立的 Config 或 CloudTrail 日誌的儲存桶,AWS 基礎安全最佳實踐建議輸出伺服器訪問日誌。
參考: AWS 基礎安全最佳實踐 v1.0.0 (FSBP) 標準 - AWS Security Hub
缺乏保證的完整性可能是一個問題,但由於資料事件的成本可能很高,因此可以選擇接受缺乏完整性並使用伺服器訪問日誌。
洞察事件使用機器學習來分析管理事件並在行為偏離常態時檢測異常活動。
當有許多 API 呼叫時,寫入事件檢測異常活動。
當 API 錯誤率較高時,寫入/讀取事件檢測異常活動。
檢測到異常活動的主要原因包括:
惡意API訪問
應用程式錯誤
由於許可權配置錯誤(例如 IAM 角色或 SCP)而導致訪問被拒絕
由於洞察事件比其他事件更昂貴,因此您應該仔細考慮啟用它們。
如上所述,如果您在生產環境中經常對系統進行更改,則可能會生成洞察事件,因此請考慮根據需要啟用它們。