小编Ryu*_*yuk的帖子

GCP-App Engine API 不可用,py 3

我正在尝试使用具有域范围委托的服务帐户从 App Engine 使用 Admin SDK API,允许它模拟管理员。

我找到了几个指南来这样做,但没有一个像我期望的那样工作。

以下代码部署到 App Engine 标准版中。

主文件

from flask import Flask
from google.auth import app_engine
import google.auth


try:
    import googleclouddebugger
    googleclouddebugger.enable()
except ImportError:
    pass

SCOPES = ['https://www.googleapis.com/auth/admin.directory.user']

app = Flask(__name__)

@app.route('/')
def hello():
    credentials, project = google.auth.default()

    appIdentity = app_engine.app_identity

    credentials = app_engine.Credentials(scopes=SCOPES)

    ret = "Expired:{}".format(credentials.expired)
    ret += "\nvalid:{}".format(credentials.valid)
    return 'Hello World!\n'+ret


if __name__ == '__main__':
    app.run(host='127.0.0.1', port=8080, debug=True)
Run Code Online (Sandbox Code Playgroud)

应用程序.yaml

runtime: python37
Run Code Online (Sandbox Code Playgroud)

该代码credentials = app_engine.Credentials(scopes=SCOPES)将导致应用程序出现 500 错误消息,因为app_engine.app_identity它始终是none

"Traceback …
Run Code Online (Sandbox Code Playgroud)

google-app-engine python-3.x google-admin-sdk google-cloud-platform

2
推荐指数
1
解决办法
1402
查看次数