在 Google 云授权重定向 URI 中应输入的 Snowflake 重定向 URL 应该是什么?

问题描述 投票:0回答:1

我不知道必须添加什么作为 Snowflake 的授权重定向 URI 我也尝试过这个 https://.snowflakecomputing.com/oauth/callback 但没有成功,有什么帮助吗?

我尝试使用 Snowflake 外部访问集成调用 google ads api,这是我遵循的流程:

已创建网络规则

CREATE OR REPLACE NETWORK RULE Googleadsallow
  MODE = EGRESS
  TYPE = HOST_PORT
  VALUE_LIST = ('googleads.googleapis.com');

创建安全集成

CREATE OR REPLACE SECURITY INTEGRATION Googleads_outh
  TYPE = api_authentication
  AUTH_TYPE = oauth2
  OAUTH_CLIENT_ID = 'my_client_id'
  OAUTH_CLIENT_SECRET = 'my_client_secret'
  OAUTH_TOKEN_ENDPOINT = 'https://accounts.google.com/o/oauth2/token'
  OAUTH_AUTHORIZATION_ENDPOINT='https://accounts.google.com/o/oauth2/auth'
  OAUTH_ALLOWED_SCOPES =('https://www.googleapis.com/auth/adwords')
  ENABLED = true;

使用刷新令牌创建秘密

CREATE OR REPLACE SECRET  Google_ads_secret
    TYPE = oauth2
    OAUTH_REFRESH_TOKEN = 'my_refresh_token'
    API_AUTHENTICATION=Googleads_outh;

我通过输入 Adwords api 的范围从 Outh2.0 游乐场生成了刷新令牌,并在此处使用了它。

创建外部访问集成

CREATE OR REPLACE EXTERNAL ACCESS INTEGRATION Google_ads_Integration
  ALLOWED_NETWORK_RULES = (Googleadsallow)
  ALLOWED_AUTHENTICATION_SECRETS = (Google_ads_secret)
  ENABLED = true;

然后我用这个定义创建了函数

CREATE OR REPLACE FUNCTION google_python()
RETURNS string
LANGUAGE PYTHON
RUNTIME_VERSION = 3.8
HANDLER = 'get_translation'
EXTERNAL_ACCESS_INTEGRATIONS = (Google_ads_Integration)
PACKAGES = ('snowflake-snowpark-python','requests')
SECRETS = ('cred' = Google_ads_secret )
AS
$$
import _snowflake
import requests
import json
session = requests.Session()
def get_translation():
  token = _snowflake.get_oauth_access_token('cred')
  url = "https://googleads.googleapis.com/v15/customers:listAccessibleCustomers"
  response = session.post(url, headers = {"Developer-token":"my_developer_token","Authorization": "Bearer " + token,"Login-customer-id":"my_id",})
  return str(response)
$$;

这给了我 Response 404 ,我尝试从函数中打印令牌并使用具有相同令牌的邮递员调用 api, 通过在 Google 云中添加邮递员回调 uri https://oauth.pstmn.io/v1/browser-callback 授权重定向 URI Google Cloud 它有效并给出了响应,但是我不知道必须添加什么作为 Snowflake 的授权重定向 URI 我也尝试过这个 https://.snowflakecomputing.com/oauth/callback 但没有成功,有什么帮助吗?

snowflake-cloud-data-platform user-defined-functions google-ads-api
1个回答
0
投票

你找到解决办法了吗,我也面临同样的问题?

© www.soinside.com 2019 - 2024. All rights reserved.