Google OpenID 身份验证

您还可以配置 Google OpenID 进行身份验证。要启用它,请在配置中设置以下选项

[api]
auth_backends = airflow.providers.google.common.auth_backend.google_openid

强烈建议配置 OAuth2 受众,以便生成的令牌仅限 Airflow 使用。

[api]
google_oauth2_audience = project-id-random-value.apps.googleusercontent.com

您还可以将 CLI 配置为向远程 API 发送请求,而不是向本地数据库发出查询。

[cli]
api_client = airflow.api.client.json_client
endpoint_url = http://remote-host.example.org/

您还可以设置服务帐户密钥。如果省略,将使用基于 应用程序默认凭据 的授权。

[cli]
google_key_path = <KEY_PATH>

您可以使用 gcloud auth print-identity-token 命令获取授权令牌。示例请求如下所示。

ENDPOINT_URL="https://127.0.0.1:8080/"

AUDIENCE="project-id-random-value.apps.googleusercontent.com"
ID_TOKEN="$(gcloud auth print-identity-token "--audiences=${AUDIENCE}")"

curl -X GET  \
    "${ENDPOINT_URL}/api/experimental/pools" \
    -H 'Content-Type: application/json' \
    -H 'Cache-Control: no-cache' \
    -H "Authorization: Bearer ${ID_TOKEN}"

此条目是否有帮助?