airflow.providers.snowflake.utils.sql_api_generate_jwt

模組內容

類別

JWTGenerator

使用指定的私鑰檔案、使用者名稱和帳戶識別碼建立並簽署 JWT。

屬性

logger

ISSUER

EXPIRE_TIME

ISSUE_TIME

SUBJECT

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

使用指定的私鑰檔案、使用者名稱和帳戶識別碼建立並簽署 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[原始碼]
RENEWAL_DELTA[原始碼]
ALGORITHM = 'RS256'[原始碼]
prepare_account_name_for_jwt(raw_account)[原始碼]

準備帳戶識別碼以用於 JWT。

對於 JWT,帳戶識別碼不得包含子網域或任何區域或雲端供應商資訊。

參數

raw_account (str) – 指定的帳戶識別碼。

get_token()[原始碼]

產生新的 JWT。

如果先前已產生 JWT,則傳回先前產生的權杖,除非指定的續約時間已過。

calculate_public_key_fingerprint(private_key)[原始碼]

給定 PEM 格式的私鑰,傳回公鑰指紋。

參數

private_key (Any) – 私鑰

此條目是否有幫助?