OAuth 模組
exception TIPCommon.oauth.AuthenticationError
基底:例外狀況
驗證錯誤的一般例外狀況。
class TIPCommon.oauth.AuthorizedOauthClient
類別 TIPCommon.oauth.AuthorizedOauthClient(oauth_manager: OauthManager, *args, **kwargs)
基礎:客戶
這個類別代表 API 呼叫的授權用戶端。
方法
儲存權杖並關閉用戶端工作階段。
覆寫,支援自動重新整理憑證。這個方法會在執行要求前檢查憑證是否過期,並驗證回應,確認是否指出憑證已過期。如果是,系統會使用更新後的權杖再次執行要求。
class TIPCommon.oauth.CredStorage
類別 TIPCommon.oauth.CredStorage(encryption_password: str, chronicle_soar: SiemplifyAction | SiemplifyConnectorExecution | SiemplifyJob)
基底:object
管理憑證的儲存和擷取作業。
方法
get_instance_identifier()→ str取得連接器或整合項目的 Google SecOps 執行個體 ID。get_token()→ OauthToken | None從內容資料庫擷取並解密權杖。set_token(token: OauthToken)→ None將權杖加密並儲存至內容資料庫。
exception TIPCommon.oauth.EncryptionError
基底:例外狀況
加密錯誤的一般例外狀況。
class TIPCommon.oauth.OAuthAdapter
基地:ABC
定義 OAuth 作業介面的抽象基本類別。
抽象方法
abstractcheck_signer(token: OauthToken)→ bool如果簽署者有效,則傳回True;否則傳回False。為授權用戶端設定標頭或其他必要用戶端設定。
abstractrefresh_token()→ OauthToken重新整理權杖,並傳回OauthToken資料模型。abstract static validate_bad_credentials(response: Response)→ bool檢查回應是否指出憑證已過期。
發出
AuthenticationError:回應指出憑證已過期。
class TIPCommon.oauth.OauthManager
類別 TIPCommon.oauth.OauthManager(oauth_adapter: OAuthAdapter, cred_storage: CredStorage)
基底:object
管理 OAuth 驗證流程,包括權杖更新和用戶端準備。
方法
準備要使用的授權用戶端。
refresh_if_bad_credentials(auth_client: AuthorizedOauthClient, response: Response)→ bool如果回應指出憑證無效,則會重新整理權杖。refresh_if_expired(auth_client: AuthorizedOauthClient)→ bool如果權杖已過期,請重新整理。save_token()→ None儲存目前的權杖。
class TIPCommon.oauth.OauthToken
類別 TIPCommon.oauth.OauthToken(access_token: 'str', expiration_time: 'int', refresh_token: 'str' = None, signer: 'str' = None, additional_data: 'SingleJson' = <factory>)
基底:object
代表 OAuth 權杖及其相關聯的資料。
屬性
| 屬性 | 說明 |
|---|---|
access_token |
str存取權杖字串。 |
additional_data |
MutableMapping[str, Any]與權杖相關的其他資料。 |
expiration_time |
int權杖到期時間 (Unix 時間戳記)。 |
refresh_token |
str更新權杖字串。 預設值為 |
signer |
str權杖的簽署者。 預設值為 |
方法
to_cache()→ JsonString將OauthToken物件序列化為適合快取的格式。
classmethod from_cache
classmethod from_cache(raw_data: JsonString)→ OauthToken
從原始快取資料建立 OauthToken 物件。
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。