В чем разница между предварительно подписанным адресом и подписанным адресом?

Я намерен использовать частный объект в публичном ведре, тем самым ограничивая доступ к объекту, а не другим объектам в ведре. И я хочу настроить CloudFront для обслуживания контента с помощью подписанных URL-адресов. Теперь в документации AWS S3 я вижу два разных термина: один - это предварительно подписанный URL-адрес для доступа к частному объекту, а другой - это подписанный URL-адрес, который требует загрузки закрытого ключа и т.д. И сделать что-то еще.

В чем разница между предварительно подписанным URL-адресом и подписанными URL-адресами? Могу ли я использовать URL PreSigned с CloudFront?

C# У библиотеки есть метод GetPreSignedURL, он автоматически загружает секретные ключи и т.д., а подписание или этот метод GetPreSignedURL отличается от того, что S3 URL Signing требует установки личных ключей и подписания URL?

Ответ 1

Из документов AWS

Предварительно подписанный URL-адрес предоставляет вам доступ к объекту, указанному в URL-адресе, при условии, что создатель предварительно подписанного URL-адреса имеет права на получить доступ к этому объекту. То есть, если вы получили предварительно подписанный URL для загрузки объект, вы можете загрузить объект, только если создатель Предварительно подписанный URL-адрес обладает необходимыми разрешениями для загрузки этого объекта.

Опять же, из документов AWS

Подписанный URL содержит дополнительную информацию, например, дата и время истечения срока действия, что дает вам больший контроль над доступом к ваш контент. Эта дополнительная информация появляется в политике выражение, основанное либо на постоянной политике, либо на политика. Различия между стандартными и пользовательскими политиками объяснено в следующих двух разделах.

Ответ 2

Извините, но на этот вопрос очень плохо ответили, так что я собираюсь вмешаться.

Во-первых, мы должны различить услуги, о которых мы говорим и которые также ссылаются здесь. И S3, и CloudFront имеют функции подписи URL, которые работают по-разному.

Однако только S3 ссылается на них как на Предварительно подписанные URL-адреса. CloudFront называет их как Подписанные URL-адреса и Подписанные файлы cookie.

Обратите внимание на названия сервисов в URL в документации ниже.

https://docs.aws.amazon.com/AmazonS3/latest/dev/PresignedUrlUploadObject.html

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html#private-content-how-signed-urls-work

Для более глубокого сравнения различных услуг проверьте ссылку ниже. Если бы мне пришлось угадывать, я бы предположил, что AWS решил по-разному называть свои службы подписи, чтобы избежать путаницы.

https://tutorialsdojo.com/aws-cheat-sheet-s3-pre-signed-urls-vs-cloudfront-signed-urls-vs-origin-access-identity-oai/

Ответ 3

Пока для моего исследования:

Предварительно подписанный URL-адрес (Документ AWS): предоставляет доступ к объекту, указанному в URL-адресе, при условии, что создатель предварительно подписанного URL-адреса имеет разрешения на доступ к этому объекту. То есть, если вы получили предварительно подписанный URL-адрес для загрузки объекта, вы можете загружать объект только в том случае, если создатель предварительно подписанного URL-адреса имеет необходимые разрешения для загрузки этого объекта.

Все объекты и корзины по умолчанию являются приватными. Предварительно подписанные URL-адреса полезны, если вы хотите, чтобы ваш пользователь/клиент мог загружать определенный объект в корзину, но вам не требуется, чтобы у них были учетные данные или разрешения безопасности AWS. При создании предварительно подписанного URL-адреса необходимо указать свои учетные данные безопасности, а затем указать имя сегмента, ключ объекта, метод HTTP (PUT для загрузки объектов), а также дату и время окончания срока действия. Предварительно подписанные URL-адреса действительны только в течение указанного периода времени.

URL-адрес со знаком (Документ AWS): Подписанный URL-адрес содержит дополнительную информацию, например, дату и время истечения срока действия, которые дают вам больше контроля над доступом к вашему контенту. Эта дополнительная информация появляется в заявлении о политике, которое основано либо на постоянной политике, либо на пользовательской политике. Различия между стандартными и настраиваемыми политиками описаны в следующих двух разделах.

Вывод, основанный на моем понимании:

Предварительно подписанный URL-адрес, используемый для создателя, означает загрузку новых объектов.

Подпись URL-адрес все о доступе к существующим объектам.