Играя с AWS приборной панелью CodeTrail и исследуя, например, кто отключил или удалил пользователя, я часто вижу, что важные поля в записи о событии запутываются, а содержимое заменяется звездочками. Например, здесь:
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::444455556666:user/Alice",
"accountId": "444455556666",
"accessKeyId": "AKIAI44QH8DHBEXAMPLE",
"userName": "Alice",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::444455556666:role/service-role/mylambda-role-agr9xeqt",
"accountId": "444455556666",
"userName": "mylambda-role-agr9xeqt"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2020-06-16T14:00:45Z"
}
}
},
"eventSource": "cognito-idp.amazonaws.com",
"eventName": "AdminDisableUser",
"awsRegion": "us-east-2",
"sourceIPAddress": "82.95.39.57",
"userAgent": "aws-sdk-nodejs/2.631.0 linux/v12.16.3 exec-env/AWS_Lambda_nodejs12.x promise",
"requestParameters": {
"userPoolId": "myPool",
"username": "******"
},
"responseElements": null,
"requestID": "17daa5e6-8646-8762-a619-1e61e70cc6d3",
"eventID": "9fd9b856-3467-4e67-8165-78cbe298792d",
"eventType": "AwsApiCall"
}
Как видите, "username"
внутри "requestParameters"
заменено "******"
в записи события вызова AdminDisableUser , а "userPoolId"
дает актуальные данные. Есть и другие вещи, которые могут быть автоматически запутаны таким образом в "requestParameters"
. Например, "userAttributes"
для записей событий AdminUpdateUserAttributes .
Я предполагаю, что это поведение связано с требованиями AWS Well-Architected-Framework, что определенные конфиденциальные данные по умолчанию запутан, потому что это может быть угрозой безопасности. Или, может быть, моя роль или учетная запись каким-то образом ограничены, так что у меня нет доступа к этой информации?
В любом случае, если у меня есть полные и неограниченные привилегии для учетной записи, как я могу включить что эти поля в записях событий не запутываются, как в CloudTrail, а вместо этого должны показывать мне фактические реальные данные для вызова API?