DynamoDB - CloudTrail
DynamoDB bao gồm tích hợp CloudTrail. Nó nắm bắt các yêu cầu API cấp thấp từ hoặc cho DynamoDB trong tài khoản và gửi các tệp nhật ký đến một nhóm S3 cụ thể. Nó nhắm mục tiêu các cuộc gọi từ bảng điều khiển hoặc API. Bạn có thể sử dụng dữ liệu này để xác định các yêu cầu được thực hiện và nguồn, người dùng, dấu thời gian, v.v. của chúng.
Khi được bật, nó sẽ theo dõi các hành động trong các tệp nhật ký, bao gồm các bản ghi dịch vụ khác. Nó hỗ trợ tám hành động và hai luồng -
Tám hành động như sau:
- CreateTable
- DeleteTable
- DescribeTable
- ListTables
- UpdateTable
- DescribeReservedCapacity
- DescribeReservedCapacityOfferings
- PurchaseReservedCapacityOfferings
Trong khi, hai luồng là -
- DescribeStream
- ListStreams
Tất cả các nhật ký chứa thông tin về các tài khoản thực hiện yêu cầu. Bạn có thể xác định thông tin chi tiết như liệu người dùng gốc hay IAM đã đưa ra yêu cầu hay bằng thông tin xác thực tạm thời hay được liên kết.
Các tệp nhật ký vẫn được lưu trữ trong thời gian bạn chỉ định, với các cài đặt để lưu trữ và xóa. Mặc định tạo nhật ký được mã hóa. Bạn có thể đặt cảnh báo cho nhật ký mới. Bạn cũng có thể sắp xếp nhiều nhật ký, giữa các vùng và tài khoản vào một nhóm duy nhất.
Thông dịch tệp nhật ký
Mỗi tệp chứa một hoặc nhiều mục nhập. Mỗi mục nhập bao gồm nhiều sự kiện định dạng JSON. Mục nhập thể hiện một yêu cầu và bao gồm thông tin liên quan; không đảm bảo thứ tự.
Bạn có thể xem lại tệp nhật ký mẫu sau:
{"Records": [
{
"eventVersion": "5.05",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AKTTIOSZODNN8SAMPLE:jane",
"arn": "arn:aws:sts::155522255533:assumed-role/users/jane",
"accountId": "155522255533",
"accessKeyId": "AKTTIOSZODNN8SAMPLE",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2016-05-11T19:01:01Z"
},
"sessionIssuer": {
"type": "Role",
"principalId": "AKTTI44ZZ6DHBSAMPLE",
"arn": "arn:aws:iam::499955777666:role/admin-role",
"accountId": "499955777666",
"userName": "jill"
}
}
},
"eventTime": "2016-05-11T14:33:20Z",
"eventSource": "dynamodb.amazonaws.com",
"eventName": "DeleteTable",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "console.aws.amazon.com",
"requestParameters": {"tableName": "Tools"},
"responseElements": {"tableDescription": {
"tableName": "Tools",
"itemCount": 0,
"provisionedThroughput": {
"writeCapacityUnits": 25,
"numberOfDecreasesToday": 0,
"readCapacityUnits": 25
},
"tableStatus": "DELETING",
"tableSizeBytes": 0
}},
"requestID": "4D89G7D98GF7G8A7DF78FG89AS7GFSO5AEMVJF66Q9ASUAAJG",
"eventID": "a954451c-c2fc-4561-8aea-7a30ba1fdf52",
"eventType": "AwsApiCall",
"apiVersion": "2013-04-22",
"recipientAccountId": "155522255533"
}
]}