Ruby Fog + облачное хранилище Google: подписанный URL-адрес из put_object_url создает InvalidPolicyDocument

В настоящее время я использую Google Cloud Storage с paperclip для загрузки изображений. Все работает отлично, и мои учетные данные действительны.

Теперь я хочу создать подписанный URL-адрес в облачном хранилище Google для пользователей.

Сначала я создаю объект хранения:

storage = Fog::Storage.new(
        provider: "Google",
        google_storage_access_key_id: "KNOWN_GOOD_ID",
        google_storage_secret_access_key: "KNOWN_GOOD_KEY")

Затем я создаю URL:

storage.put_object_url("MY_BUCKET",
        "RANDOM_NAME.jpg",
        1.hour,
        'Content-Type' => 'image/jpeg')

Какой возврат https://storage.googleapis.com/MY_BUCKET/RANDOM_NAME.jpg?GoogleAccessId=REDACTED&Signature=REDACTED&Expires=3600

В прошлом, если я временно включен AllUsers:W (только временно!), я смог ПОСТАВИТЬ бинарный образ (через клиент Postman API) в эту корзину.

Тем не менее, когда я пытаюсь отправить файл JPEG в корзину сейчас, я получаю эту ошибку:

<?xml version='1.0' encoding='UTF-8'?>
<Error>
    <Code>InvalidPolicyDocument</Code>
    <Message>The content of the form does not meet the conditions specified in the policy document.</Message>
    <Details>Missing policy</Details>
</Error>

Как мне решить это Missing policy ошибка?

0 ответов

Другие вопросы по тегам