airflow.providers.snowflake.utils.sql_api_generate_jwt

属性

logger

ISSUER

EXPIRE_TIME

ISSUE_TIME

SUBJECT

JWTGenerator

使用指定的私钥文件、用户名和账户标识符创建并签署 JWT。

模块内容

airflow.providers.snowflake.utils.sql_api_generate_jwt.logger[source]
airflow.providers.snowflake.utils.sql_api_generate_jwt.ISSUER = 'iss'[source]
airflow.providers.snowflake.utils.sql_api_generate_jwt.EXPIRE_TIME = 'exp'[source]
airflow.providers.snowflake.utils.sql_api_generate_jwt.ISSUE_TIME = 'iat'[source]
airflow.providers.snowflake.utils.sql_api_generate_jwt.SUBJECT = 'sub'[source]
class airflow.providers.snowflake.utils.sql_api_generate_jwt.JWTGenerator(account, user, private_key, lifetime=LIFETIME, renewal_delay=RENEWAL_DELTA)[source]

使用指定的私钥文件、用户名和账户标识符创建并签署 JWT。

JWTGenerator 会保留生成的令牌,并且仅在经过指定时间段后才会重新生成令牌。

创建一个对象,该对象为指定的 用户、账户标识符和私钥生成 JWT

参数:
  • account (str) – 您的 Snowflake 账户标识符。请参阅 https://docs.snowflake.com/en/user-guide/admin-account-identifier.html。请注意,如果您使用的是账户定位器,请从账户定位器中排除任何区域信息。

  • user (str) – Snowflake 用户名。

  • private_key (Any) – 用于签署 JWT 的文件路径中的私钥。

  • lifetime (datetime.timedelta) – 密钥有效的分钟数(以 timedelta 表示)。

  • renewal_delay (datetime.timedelta) – 从当前时间起,JWT 生成器应续订 JWT 的分钟数(以 timedelta 表示)。

LIFETIME[source]
RENEWAL_DELTA[source]
ALGORITHM = 'RS256'[source]
account[source]
user[source]
qualified_username[source]
lifetime[source]
renewal_delay[source]
private_key[source]
renew_time[source]
token: str | None = None[source]
prepare_account_name_for_jwt(raw_account)[source]

准备用于 JWT 的账户标识符。

对于 JWT,账户标识符不得包含子域名或任何区域或云提供商信息。

参数:

raw_account (str) – 指定的账户标识符。

get_token()[source]

生成新的 JWT。

如果之前已生成过 JWT,则返回先前生成的令牌,除非指定的续订时间已过。

calculate_public_key_fingerprint(private_key)[source]

给定 PEM 格式的私钥,返回公钥指纹。

参数:

private_key (Any) – 私钥

此条目是否有用?