0

我正在构建一个要在 App Engine 上托管的烧瓶应用程序。

用户将安排一个任务每周运行一次。

因此,我一直在探索如何使用 Python 连接到 Cloud schedule API 并创建计划任务。

文档中,执行此操作似乎需要凭据:

credentials = GoogleCredentials.get_application_default()
service = discovery.build('cloudscheduler', 'v1beta1', credentials=credentials)
# Required.
# The location name. For example:
# `projects/PROJECT_ID/locations/LOCATION_ID`.
parent = 'projects/my-project/locations/my-location'  # TODO: Update placeholder value.

job_body = {
    # TODO: Add desired entries to the request body.
}
request = service.projects().locations().jobs().create(parent=parent, body=job_body)

但是我想知道是否在与烧瓶/应用引擎应用程序所在的相同 GCP 项目中设置了云计划,您甚至需要凭据来连接吗?

只要开启了云调度API,还不够吗?

或者,在连接到您控制的同一项目中的服务时是否需要其他特定凭据?

4

1 回答 1

1

当您调用 下的任何 Google API 时,googleapis.com需要对该调用进行身份验证,即使它是否来自 GCP 产品内部。正如您在文档中看到的,API 调用可以进行 OAuth 2.0 身份验证,也可以使用 API 密钥进行身份验证。

启用 Cloud Scheduler API 可让您获得与 Cloud Scheduler 交互的授权,但即使在此之后,您仍需要对服务进行身份验证。长话短说,授权身份验证都需要。

于 2020-06-22T07:42:00.443 回答