Я пытаюсь настроить облачный фронт для моей корзины s3, который позволит пользователям только читать или писать с подписанными URL-адресами (читать файл, загружать и загружать)
S3 не 'не имеет публичных разрешений на чтение / запись.
CloudFront - это: Http и HTTPS.У этого есть Доверенный Подписчик как я.Имеет доступ с ограниченным доступом.У него есть имя домена происхождения как origin-domain-name / public.Наконец, у него есть идентификатор доступа к источнику как origin-access-identity / cloudfront / XXXXXXX.
У меня есть файл pem cloudfront и идентификатор закрытого ключа aws.
Мой код c # для генерации подписанного URLis:
StreamReader sr = new StreamReader("../../keys/CloudFront-PrivateKey.pem");
var url = AmazonCloudFrontUrlSigner.GetCannedSignedURL(
AmazonCloudFrontUrlSigner.Protocol.http,
"http://xxxxxxxxxx.cloudfront.net",
sr,
"public/AddinJudgeIssue.png",
"<AWS Private Key ID>",
DateTime.Now.AddDays(2));
Каждый раз, когда я выполняю код, он генерирует URL.Однако, когда я копирую и вставляю его в URL-адрес, он говорит: «Доступ запрещен».
Прежде всего, кто-нибудь имеет представление о том, почему это происходит?
Во-вторых, это работает как-то,Могу ли я использовать эту же технику для загрузки ресурсов в корзину?
Спасибо и прошу прощения за мое невежество.Я покопался в документах aws, но не нашел простого руководства.