Облачное хранилище Google MediaLink HTTP/1.1 401 Не авторизовано

Я добавил файл в облачное хранилище Google с этим разрешением: allAuthenticatedUsers:OWNER.

и я даю своим пользователям MediaLink к этому файлу, но когда они пытаются получить через HTTP-запрос, они получают: HTTP/1.1 401 Unauthorized

что им нужно сделать перед http-запросом к MediaLink?

Спасибо, Снабель


person snabel    schedule 19.08.2014    source источник


Ответы (1)


Взгляните на https://stackoverflow.com/a/25334525/2263165.

Если ваши пользователи получают доступ к медиа-ссылке через простой HTTP GET, они не аутентифицируются. Вашим пользователям необходимо использовать один из подходов, описанных в этом ответе (авторизация файлов cookie или OAuth2 через консоль разработчиков или gsutil).

person Travis Hobrla    schedule 19.08.2014
comment
Спасибо, позвольте мне добавить больше информации, я даю своим пользователям MediaLink к некоторому аудиофайлу, который они могут скачать и воспроизвести. поэтому я не могу попросить их подтвердить подлинность. я подумал о том, чтобы сделать файлы видимыми для всех пользователей (разрешения на чтение), но использовать белый список по IP-адресу (серверные приложения), чтобы блокировать запросы от остального мира. но не работает, запросы принимаются с любого IP адреса. я выполнил шаги здесь: developers.google.com/console/help сгенерировал ключ сервера с IP-адресами, которые я хотел, но все еще не работал... - person snabel; 21.08.2014
comment
Могу ли я использовать белый список по IP-адресу для Google Cloud Storage JSON API? я выполнил шаги здесь: developers.google.com/console/help, но это не помогло т работать. Я дал объектам эти разрешения AllUsers - читай, я хочу разрешить доступ к запросам с определенных IP-адресов, поэтому я решил использовать белый список по IP-адресу, но это не сработало ... я взял объект MediaLink, скопировал его в браузер и я смог получить к нему доступ, хотя IP-адрес ПК не был определен в ключе сервера, который я сгенерировал. ссылка, которую я использовал: object-Media-Link?key=myKey - person snabel; 21.08.2014
comment
AllUsers: Разрешение на чтение не связано с белым списком IP-адресов, что сделает медиассылку доступной для всех. Если вы хотите предоставить ссылки определенным пользователям, не прошедшим проверку подлинности, вы можете использовать подписанные URL-адреса: developers. .google.com/storage/docs/accesscontrol#Signed-URLs Хотя любой пользователь, у которого есть подписанный URL, может получить к нему доступ, вы можете ограничить распространение только вашими пользователями и установить срок действия. - person Travis Hobrla; 22.08.2014
comment
Спасибо. Я думаю об использовании подписанных URL-адресов, но у меня возникли проблемы с параметром Expiration. я хочу дать своим пользователям ссылки, которые они могут использовать столько, сколько захотят, без ограничения срока действия. есть ли специальное значение для этого параметра, которое говорит, что эта ссылка никогда не истекает? - person snabel; 22.08.2014
comment
Параметр срока действия является обязательным, но вы можете установить его значение через сотни лет. - person Travis Hobrla; 22.08.2014