Я пытаюсь вызвать значение «Effect»: «Allow» из моего кода Python для моей лямбды. В настоящее время я могу абстрагироваться от общей политики; Однако я не могу с «Заявлением». Я получаю сообщение об ошибке, указывающее, что это список, однако список «[» пуст, и сразу после списка есть «{» для словаря, но это в формате JSON.
Я могу абстрагировать данные от события до.
Цель - получить значение для «Эффекта» во вложенном списке «Заявление», которое, по-видимому, находится внутри словаря, связанного со списком, а затем внутри словаря!
event["requestParameters"]["bucketPolicy"]
Это работает, однако, это не так.
event["requestParameters"]["bucketPolicy"]["Statement"]
Событие JSON ниже
{
"Records":[
{
"eventVersion":"2.1",
"eventSource":"aws:s3",
"awsRegion":"us-west-2",
"eventTime":"1970-01-01T00:00:00.000Z",
"eventName":"ObjectCreated:Put",
"userIdentity":{
"principalId":"AIDAJDPLRKLG7UEXAMPLE"
},
"requestParameters":{
"bucketPolicy": {
"Statement": [
{
"Effect": "Allow"
"sourceIPAddress":"127.0.0.1"
},
"responseElements":{
"x-amz-request-id":"C3D13FE58DE4C810",
"x-amz-id-2":"FMyUVURIY8/IgAtTv8xRjskZQpcIZ9KG4V5Wp6S7S /JRWeUWerMUE5JgHvANOjpD"
},
"s3":{
"s3SchemaVersion":"1.0",
"configurationId":"testConfigRule",
"bucket":{
"name":"mybucket",
"ownerIdentity":{
"principalId":"A3NL1KOZZKExample"
},
"arn":"arn:aws:s3:::mybucket"
},
"object":{
"key":"HappyFace.jpg",
"size":1024,
"eTag":"d41d8cd98f00b204e9800998ecf8427e",
"versionId":"096fKKXTRTtl3on89fVO.nfljtsv6qko",
"sequencer":"0055AED6DCD90281E5"
}
}
}