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) – 私鑰

此條目是否有用?