9

Próbuję uzyskać dostęp do kolejki wyciągnąć z google obliczyć przy użyciu tokenu OAuth obliczeniowej Pythonaciągnąć kolejki upoważnienie od obliczeniowej

from oauth2client import gce 
from apiclient.discovery import build 
import httplib2 

credentials = gce.AppAssertionCredentials('') 
http = httplib2.Http() 
http=credentials.authorize(http) 
credentials.refresh(http) 
service = build('taskqueue', 'v1beta2', http=http) 
tq=service.taskqueues() 
tq.get(project=MY_APPENGINE_PROJECT, taskqueue=PULL_QUEUE_NAME, getStats=True).execute() 

ciśgle httpError 403 „nie są dozwolone, aby to wywołanie API”

proszę o pomoc, jakiej konfiguracji mi brakuje?

Dzięki, Shay

+0

Czy podczas uruchamiania instancji przekazałeś zakres usług zadań porządku publicznego? https://developers.google.com/compute/docs/authentication ma więcej informacji – shollyman

Odpowiedz

11

UPDATE: Dzięki @Shay za tym pytaniem, kwestia zetknął nie jest już problemem, ponieważ pozwoliły aliasy do pracy (jeśli dotyczy) w kolejce zadań API.

Dla potomności Oto odpowiedź oryginalny poniżej:


Dwa z najczęstszych błędów, które widziałem są:

  1. Zapominając obejmują s~ w App Engine Project. Na przykład, jeśli aplikacja jest my-awesome-app ID, potem dzwonisz

    tq.get(project='my-awesome-app', taskqueue=PULL_QUEUE_NAME... 
    

    kiedy należy dzwonić

    tq.get(project='s~my-awesome-app', taskqueue=PULL_QUEUE_NAME... 
    
  2. Zapominając dodać konto usługi Compute do task queue ACL w queue.yaml. Aby to zrobić, trzeba uzyskać konto usługi związane z projektem i dodać go do acl:

    queue: 
    - name: pull-queue 
        mode: pull 
        acl: 
        - writer_email: [email protected] # can do all 
    

    i oczywiście oznaczałoby to PULL_QUEUE_NAME = 'pull-queue' tutaj. Należy również pamiętać, że [email protected] należy zastąpić kontem usługi dla instancji Compute Engine.

+1

BTW konto usługi można znaleźć w konsoli api pod zespołem w dolnej części strony – Shay

+0

Ciągle mam "Niewystarczające uprawnienia", zobacz http://stackoverflow.com/questions/37479204/full-api-access-does-notwork-for-taskqueue Jakie role IAM należy ustawić dla konta instancji? – xmedeko

Powiązane problemy