Доступ к данным, хранящимся в общедоступной корзине AWS S3

Это моя первая работа с AWS, поэтому приведенный ниже вопрос может быть очень простым для многих, но мне нужна небольшая помощь.

Когда я перехожу к https://hello-world.s3-ca-central-1.amazonaws.com/, я получаю ответ ниже в своем браузере.

<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2007-01-01/">
    <Name>hello-world</Name>
    <Prefix></Prefix>
    <Marker></Marker>
    <MaxKeys>1000</MaxKeys>
    <IsTruncated>false</IsTruncated>
    <Contents>
        <Key>data-1.json</Key>
        <LastModified>2017-01-01T10:00:00.000Z</LastModified>
        <ETag>"1234567890qwertyui"</ETag>
        <Size>12345</Size>
        <StorageClass>STANDARD</StorageClass>
    </Contents>
</ListBucketResult>

Предположим, что это общедоступная корзина S3. Как я могу получить данные, хранящиеся в data-1.json, если у меня нет учетных данных (насколько я знаю, мне не нужны учетные данные для общедоступных корзин)? Я просмотрел документацию и сообщения в блогах, но не смог найти ни одного примера, в котором не используются учетные данные.

Я придумал код ниже после проверки https://github.com/awslabs/aws-php-sample, но в нем также упоминается, что мне нужны учетные данные https://github.com/awslabs/aws-php-sample#basic-configuration

$s3 = new Aws\S3\S3Client([
    'version' => '2007-01-01',
    'region'  => 'ca-central-1'
]);

$result = $s3->getObject([
    'Bucket' => 'hello-world',
    'Key'    => 'data-1.json'
]);

echo $result['Body'];

Примечание. Я буду использовать платформу Symfony.


person BentCoder    schedule 25.09.2017    source источник
comment
Попробуй это! stackoverflow.com/a/46400522/3471694   -  person Bui Anh Tuan    schedule 25.09.2017
comment
попробуйте: s3.amazonaws.com/hello-world/data-1.json или hello-world.s3.amazonaws.com/data-1. json   -  person Asdfg    schedule 25.09.2017
comment
@Asdfg Второй сработал. Большое спасибо за это! Очень признателен.   -  person BentCoder    schedule 25.09.2017
comment
Есть ли примеры создания новых сегментов, нового объекта с ключом и удаления сегмента/объекта и т. д.?   -  person BentCoder    schedule 25.09.2017
comment
вот: docs.aws.amazon.com/aws-sdk-php/v3/guide/examples/   -  person Asdfg    schedule 25.09.2017
comment
Я видел его, но он также требует учетных данных.   -  person BentCoder    schedule 25.09.2017
comment
Какова ваша цель? Нужно ли разрешить определенным пользователям доступ к объекту, не делая корзину общедоступной?   -  person Ashan    schedule 26.09.2017
comment
Моя цель - использовать общедоступную корзину без учетных данных. Ссылка, которую я разместил в своем посте выше, говорит, что мне нужны учетные данные. В каждом примере и официальном документе говорится, что мне нужны учетные данные для использования S3 Client.   -  person BentCoder    schedule 26.09.2017