0

Я пытаюсь создать источник данных, используя AWS Machine learning SDK. Сначала я загружаю файл данных csv в хранилище S3 и обрабатываю SDK. Затем я обновляю политику ведра для этого файла. Только после того, как все, что я пытаюсь создать источник данных, но я получаю сообщение об ошибке:Cretae Datasourse machine learning AWS через SDK

отказах (1): У вас нет разрешения на доступ к «s3: //training-data/input/test-likes.csv» , Свяжитесь с владельцем 's3: //training-data/input/test-likes.csv', чтобы получить доступ на чтение.

Какие еще разрешения необходимы?

Это мое ведро политика:

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
     "Sid": "AmazonML_s3:ListBucket", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "arn:aws:iam::831986290820:user/pavel.emsow", 
      "Service": "machinelearning.amazonaws.com" 
     }, 
     "Action": "s3:ListBucket", 
     "Resource": "arn:aws:s3:::trainig-data", 
     "Condition": { 
      "StringLike": { 
       "s3:prefix": [ 
        "input/common-likes.csv*", 
        "input/test-likes.csv*" 
       ] 
      } 
     } 
    }, 
    { 
     "Sid": "AmazonML_s3:GetObject", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "arn:aws:iam::831986290820:user/pavel.emsow", 
      "Service": "machinelearning.amazonaws.com" 
     }, 
     "Action": "s3:GetObject", 
     "Resource": [ 
      "arn:aws:s3:::trainig-data/input/common-likes.csv*", 
      "arn:aws:s3:::trainig-data/input/test-likes.csv*" 
     ] 
    } 
] 
} 
+0

Я бы добавил действие «s3: ListBucket». Если вы используете веб-интерфейс для добавления входных данных, он может изменить политику для вас. Это, по крайней мере, позволяет вам понять, что он сделал, чтобы вы могли отследить и сделать это правильно! –

+0

"s3: ListBucket" уже существует. Это первый оператор в массиве. –

ответ

0

Я столкнулся с этой ошибкой при попытке создать модель ML из источника данных S3. В дополнение к моей (аналогичной) политике ведро мне пришлось изменить роль IAM, которая использовалась при вызове API машинного обучения. Я применил политику S3 с полным доступом к роли IAM, и вызов был успешным. Политика Full-Access может быть слишком широкой, и возможно, ее можно будет сократить до S3 только для чтения и все еще иметь успех.