有没有办法使用 OAuth 将 Snowflake 与 R 连接起来?
Is there a way to connect Snowflake with R using OAuth?
我们有一个 Snowflake 数据库,我们可以通过 OAuth 访问它(我们也有 ID 和密码以防万一),我有许多 R 脚本(使用 ODBC 和 DBI 库)可以查询和在那里更新表格。有没有办法使用 OAuth 来建立连接,而不是我的 ID 和密码?不确定代码示例有多大用处,但这里有一个非常简单的代码示例可以运行,但每次都需要手动输入密码:
library(DBI)
library(odbc)
sfConn <- DBI::dbConnect(odbc::odbc(), "Snowflake", uid = "USERNAME",
warehouse = "WH",
database = "DB",
schema = "SCHEMA",
pwd = rstudioapi::askForPassword()
)
q1 <- DBI::dbGetQuery(sfConn, '
select Top 100 *
from SOME_TABLE
')
DBI::dbDisconnect(sfConn)
感谢任何输入!
您可以使用以下参数通过OAuth连接SF:
sfConn <- DBI::dbConnect(odbc::odbc(), "Snowflake",
uid = "USERNAME"
authenticator="OAUTH",
token = "access_token",
warehouse = "WH",
database = "DB",
schema = "SCHEMA"
)
我们有一个 Snowflake 数据库,我们可以通过 OAuth 访问它(我们也有 ID 和密码以防万一),我有许多 R 脚本(使用 ODBC 和 DBI 库)可以查询和在那里更新表格。有没有办法使用 OAuth 来建立连接,而不是我的 ID 和密码?不确定代码示例有多大用处,但这里有一个非常简单的代码示例可以运行,但每次都需要手动输入密码:
library(DBI)
library(odbc)
sfConn <- DBI::dbConnect(odbc::odbc(), "Snowflake", uid = "USERNAME",
warehouse = "WH",
database = "DB",
schema = "SCHEMA",
pwd = rstudioapi::askForPassword()
)
q1 <- DBI::dbGetQuery(sfConn, '
select Top 100 *
from SOME_TABLE
')
DBI::dbDisconnect(sfConn)
感谢任何输入!
您可以使用以下参数通过OAuth连接SF:
sfConn <- DBI::dbConnect(odbc::odbc(), "Snowflake",
uid = "USERNAME"
authenticator="OAUTH",
token = "access_token",
warehouse = "WH",
database = "DB",
schema = "SCHEMA"
)