У меня есть GSheet, опубликованный как веб-приложение, и я пытаюсь разрешить доступ к нему из служебной учетной записи
- Он настроен для разрешения доступа любому.
- Я могу получить к нему доступ, когда напрямую нажму URL развернутого приложения.
- Я преобразовал проект в стандартный проект GCP.
- Я создал учетную запись службы, прикрепленную к проекту.
- Учетная запись службы имеет доступ к редактору.
- Затем я также предоставил доступ к листу учетной записи службы.
Попытка доступа к нему с помощью следующей python код и получение 401. Следующие примеры здесь
from __future__ import print_function
from google.oauth2 import service_account
from google.auth.transport.urllib3 import AuthorizedHttp
SCOPES = ['https://www.googleapis.com/auth/spreadsheets']
credentials = service_account.Credentials.from_service_account_file(
'service_account.json', scopes=SCOPES)
def main():
try:
authed_http = AuthorizedHttp(credentials)
response = authed_http.request(
'GET', 'https://script.google.com/a/<DOMAIN_NAME_REDACTED>/macros/s/AKfycbwv53GaXRCvjQMYizjqI4PsLeNMAcmCtHjRhZE9AlheIp0qE_s/exec')
print(response)
except BaseException as err_base2:
print(err_base2)
if __name__ == '__main__':
main()
Я думаю, что мне не хватает чего-то очевидного. Есть идеи?