Уже больше года мы запускаем одностраничное приложение (SPA с Angular), которое получает объекты Json с предварительно подписанными URL-адресами из .NET Core API. SPA отображает список и использует заранее заданный URL-адрес для отображения изображения/видео (непосредственно загруженного из
Внезапно некоторые из предварительно подписанных URL-адресов в списке все еще работают, другие вызывают ошибку SignatureDoesNotMatch
при встраивании изображения/видео. Остальные работают.
<Error><Code>SignatureDoesNotMatch</code><Message>The request signature we calculated does not match the signature you provided. Check your key and signing method.</Message>...
Может быть, у кого-то есть опыт работы с Minio/S3, и он мог бы помочь мне составить контрольный список для поиска источника этой ошибки.
Пока у меня есть:
Конфигурация (ключ доступа, секретный ключ, хост): поскольку большинство URL-адресов работают, некоторые не работают, это должно быть действительным.
Генерация URL-адресов: для рабочих и нерабочих URL-адресов я генерирую их с помощью Minio .NET SDK (3.02).
await _minio.PresignedGetObjectAsync(bucket, key, ttl);
await _minio.PresignedPutObjectAsync(bucket, key, ttl);
- Смешивание URL-адресов get и put: может ли это быть причиной? На скриншотах в отчете об ошибке показаны предварительно подписанные URL-адреса, но я не видел индикатора в URL-адресе, если он был сгенерирован как URL-адрес ввода или получения.