"Есть ли способ раскрыть ведро S3 ...?"
Как оказалось, разоблачение ведра не является проблемой. Корзины всегда физически расположены в одном регионе, но доступны из всех регионов, а также из-за пределов AWS, если запрашивающая сторона обладает соответствующими и авторизованными учетными данными и никакая политика явно не запрещает доступ.
Но ничего вS3 о корзине можно изменить, чтобы исправить полученную ошибку, потому что проблема в другом месте, а не в S3.
Из типов данных API в Amazon Transcribe Guide для разработчиков :
MediaFileUri
Местоположение S3 входного медиафайла. URI должен находиться в том же регионе, что и конечная точка API [Amazon Transcribe], которую вы вызываете.
https://docs.aws.amazon.com/transcribe/latest/dg/API_Media.html
Транскрибирование было разработано так, чтобы не достигать региональных границ для доступамедиа в контейнере и останавливает вас, если вы пытаетесь, с сообщением, которое вы получаете.
Почему это так работает? Возможно производительность / эффективность. Возможно безопасность. Возможно, чтобы помочь невольным пользователям избежать непредвиденных платежей за межрегиональную передачу данных. Возможно, другие причины, возможно, в сочетании с вышеперечисленным.
Возможные решения:
- Используйте Connect, корзину S3 и Transcribe, все в одном регионе;или
- Используйте два сегмента и Межрегиональная репликация S3 для репликации файлов из области Connect в область Transcribe. Имейте в виду, что это может иметь значительные затраты в масштабе, поскольку S3 перемещает данные по региональным границам. Также следует помнить, что репликация выполняется быстро, но не мгновенно, поэтому при вызовах Transcribe может не быть найден носитель, который поступил в первом сегменте, но еще не во втором;или
- Используйте два сегмента и позвоните в своем коде в S3 API PUT + Copy, чтобы скопировать файл во второй сегмент в области транскрибирования, прежде чем вызывать транскрибирование.