Как разрешить анонимные загрузки в облачное хранилище

Мне нужно, чтобы мои пользователи загружали файлы в хранилище Google Cloud без проверки подлинности с помощью Google. Это, в первую очередь, пользователи настольных компьютеров / ноутбуков Windows, на которых работает мое приложение. После прочтения различных механизмов аутентификации я вижу, что возобновляемые загрузки могут быть теми, которые я ищу. На приведенной выше странице есть API-интерфейсы REST о том, как это сделать. У меня есть пара вопросов:

  1. Правильный ли метод для третьей стороны загружать данные в мою учетную запись без входа в учетную запись Google?

  2. Есть ли образец Python или Java, который содержит возобновляемый код, связанный с загрузкой?

Спасибо за вашу помощь.

One Solution collect form web for “Как разрешить анонимные загрузки в облачное хранилище”

У вас есть три основных варианта:

  1. Используйте подписанный URL. В принципе, вы бы предоставили сервер, который мог бы распространять «подписанные URL-адреса» на приложения, используя любую схему аутентификации, которая вам нравится. Затем приложение свяжется с облачным хранилищем Google с помощью XML API и загрузит контент с помощью подписанного URL. Это наиболее рекомендуемый способ. http://developers.google.com/storage/docs/accesscontrol#Signed-URLs

  2. Инициируйте возобновляемую загрузку на сервере и передайте URL-адрес приложения. Когда начнется возобновляемый сеанс, будет создан URL-адрес, с помощью которого загрузчик загрузит фактические данные. Этот URL-адрес содержит параметр upload_id, который работает как собственная проверка подлинности для этой одной загрузки, и поэтому URL-адрес является всем, что требуется клиенту (обратите внимание: именно поэтому важно, чтобы этот URL-адрес для загрузки был безопасным). https://developers.google.com/storage/docs/json_api/v1/how-tos/upload#resumable

  3. Создайте ведро с установленными разрешениями, чтобы анонимные пользователи могли записывать в него произвольные объекты. Это плохая идея . Разрешение записи на ведро означает, что анонимные пользователи могут удалять любой файл в этом ведре, загружать объекты любого размера (вы несете ответственность за результирующие расходы на хранение), устанавливать ACL на объекты, которые они загружают (например, они могут используйте свое ведро в качестве места, чтобы сбрасывать фильмы и делиться им со своими друзьями). Не используйте этот метод.

  • jython standalone jar с сокращенным списком пакетов?
  • Вызывать модули Python из Java
  • Как шифровать в Python и расшифровывать в Java?
  • Jython говорит: «Нет видимых конструкторов для класса»
  • Почему такие языки, как Java, используют иерархические имена пакетов, а Python - нет?
  • Сравнение производительности Thrift, протокольных буферов, JSON, EJB, других?
  • Python-подобные декораторы в Java?
  • Члены класса - Java vs. Python
  • Почему нам не нужны интерфейсы в динамических языках?
  • Как реализовать распределенную подобную очередь роль поверх хранилища данных RBDMS или NOSQL или другой системы обмена сообщениями (например, rabbitmq)?
  • Java и прокси-синтаксис (ala Python)?
  •  
    Interesting Posts for Van-Lav

    Добавление одной и той же строки в список строк в Python

    обеспечение декартового произведения ключей появляется в таблице Pandas

    Какую библиотеку я должен использовать для написания XLS из Linux / Python?

    PyGame в virtualenv на OS X с варкой?

    python pexpect & pxssh с sudo и EOF

    Проверьте, присутствует ли атрибут в теге в BeautifulSoup

    Google App Engine – импорт моих собственных исходных модулей (несколько файлов)

    Python реализует простое хранилище веб-данных

    Каков приоритет оператора при написании двойного неравенства в Python (явно в коде и как это можно переопределить для массивов?)

    «Матричное разложение» матрицы с голонической субструктурой

    Как получить многострочный ввод от пользователя

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

    Python – Sum не работает в синтаксисе понимания списка, если источником является файл

    библиотека python для создания видеофайла с изображений

    Изобразить изображение на поверхности с помощью Mayavi и Python

    Python - лучший язык программирования в мире.