Modul OAuth

exception TIPCommon.oauth.AuthenticationError

Dasar: Pengecualian

Pengecualian umum untuk error autentikasi.

class TIPCommon.oauth.AuthorizedOauthClient

class TIPCommon.oauth.AuthorizedOauthClient(oauth_manager: OauthManager, *args, **kwargs)

Dasar: Klien

Class ini merepresentasikan klien yang diotorisasi untuk panggilan API.

Metode

  • close()→ None Menyimpan token dan menutup sesi klien.

  • request(*args, **kwargs)→ Response Ditulis ulang untuk mendukung pembaruan kredensial otomatis. Metode ini memeriksa apakah kredensial telah habis masa berlakunya sebelum menjalankan permintaan dan memvalidasi respons untuk memeriksa apakah kredensial yang habis masa berlakunya ditunjukkan. Jika ya, permintaan akan dieksekusi lagi dengan token yang diperbarui.

class TIPCommon.oauth.CredStorage

class TIPCommon.oauth.CredStorage(encryption_password: str, chronicle_soar: SiemplifyAction | SiemplifyConnectorExecution | SiemplifyJob)

Dasar: object

Mengelola penyimpanan dan pengambilan kredensial.

Metode

  • get_instance_identifier()→ str Mendapatkan ID instance Google SecOps dari konektor atau integrasi.

  • get_token()→ OauthToken | None Mengekstrak dan mendekripsi token dari database konteks.

  • set_token(token: OauthToken)→ None Mengenkripsi dan menyimpan token ke dalam database konteks.

exception TIPCommon.oauth.EncryptionError

Dasar: Pengecualian

Pengecualian umum untuk error enkripsi.

class TIPCommon.oauth.OAuthAdapter

Dasar: ABC

Class dasar abstrak yang menentukan antarmuka untuk operasi OAuth.

Metode Abstrak

  • abstractcheck_signer(token: OauthToken)→ bool Menampilkan True jika penandatangan valid atau False dalam kasus lain.

  • abstractprepare_authorized_client(token: OauthToken, auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient Menetapkan header atau konfigurasi klien lain yang diperlukan untuk klien yang diotorisasi.

  • abstractrefresh_token()→ OauthToken Memperbarui token dan menampilkan model data OauthToken.

  • abstract static validate_bad_credentials(response: Response)→ bool Memeriksa apakah respons menunjukkan kredensial yang sudah tidak berlaku.

Meningkatkan

AuthenticationError – Jika respons menunjukkan kredensial telah habis masa berlakunya.

class TIPCommon.oauth.OauthManager

class TIPCommon.oauth.OauthManager(oauth_adapter: OAuthAdapter, cred_storage: CredStorage)

Dasar: object

Mengelola alur autentikasi OAuth, termasuk pemuatan ulang token dan penyiapan klien.

Metode

  • prepare_authorized_client(auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient Menyiapkan klien yang diotorisasi untuk digunakan.

  • refresh_if_bad_credentials(auth_client: AuthorizedOauthClient, response: Response)→ bool Memperbarui token jika respons menunjukkan kredensial yang buruk.

  • refresh_if_expired(auth_client: AuthorizedOauthClient)→ bool Memperbarui token jika masa berlakunya telah berakhir.

  • save_token()→ None Menyimpan token saat ini.

class TIPCommon.oauth.OauthToken

class TIPCommon.oauth.OauthToken(access_token: 'str', expiration_time: 'int', refresh_token: 'str' = None, signer: 'str' = None, additional_data: 'SingleJson' = <factory>)

Dasar: object

Mewakili token OAuth dengan data terkaitnya.

Properti

Atribut Deskripsi
access_token str

String token akses.

additional_data MutableMapping[str, Any]

Data tambahan yang terkait dengan token.

expiration_time int

Waktu masa berlaku token (stempel waktu Unix).

refresh_token str

String token refresh.

Nilai defaultnya adalah None.

signer str

Penanda tangan token.

Nilai defaultnya adalah None.

Metode

  • to_cache()→ JsonString Melakukan serialisasi objek OauthToken ke format yang sesuai untuk caching.

classmethod from_cache

classmethod from_cache(raw_data: JsonString)→ OauthToken

Membuat objek OauthToken dari data mentah yang di-cache.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.