Module OAuth

exception TIPCommon.oauth.AuthenticationError

Bases : Exception

Exception générique pour les erreurs d'authentification.

class TIPCommon.oauth.AuthorizedOauthClient

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

Bases : Client

Cette classe représente un client autorisé pour les appels d'API.

Méthodes

  • close()→ None Enregistre le jeton et ferme la session client.

  • request(*args, **kwargs)→ Response Remplacements pour prendre en charge l'actualisation automatique des identifiants. La méthode vérifie si les identifiants ont expiré avant d'exécuter la requête et valide la réponse pour vérifier si des identifiants expirés sont indiqués. Si c'est le cas, il exécute à nouveau la requête avec un jeton actualisé.

class TIPCommon.oauth.CredStorage

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

Bases : objet

Gère le stockage et la récupération des identifiants.

Méthodes

  • get_instance_identifier()→ str Récupère l'identifiant de l'instance Google SecOps du connecteur ou de l'intégration.

  • get_token()→ OauthToken | None Extrait et déchiffre un jeton de la base de données de contexte.

  • set_token(token: OauthToken)→ None Chiffre et enregistre un jeton dans la base de données du contexte.

exception TIPCommon.oauth.EncryptionError

Bases : Exception

Exception générique pour les erreurs de chiffrement.

class TIPCommon.oauth.OAuthAdapter

Bases : ABC

Classe de base abstraite qui définit l'interface pour les opérations OAuth.

Méthodes abstraites

  • abstractcheck_signer(token: OauthToken)→ bool Renvoie True si le signataire est valide ou False dans tout autre cas.

  • abstractprepare_authorized_client(token: OauthToken, auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient Définit les en-têtes ou d'autres configurations client nécessaires pour le client autorisé.

  • abstractrefresh_token()→ OauthToken Actualise le jeton et renvoie le modèle de données OauthToken.

  • abstract static validate_bad_credentials(response: Response)→ bool Vérifie si la réponse indique que les identifiants ont expiré.

Génère

AuthenticationError : lorsque la réponse indique que les identifiants ont expiré.

class TIPCommon.oauth.OauthManager

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

Bases : objet

Gère les flux d'authentification OAuth, y compris l'actualisation des jetons et la préparation des clients.

Méthodes

  • prepare_authorized_client(auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient Prépare un client autorisé à l'utilisation.

  • refresh_if_bad_credentials(auth_client: AuthorizedOauthClient, response: Response)→ bool Actualise le jeton si la réponse indique que les identifiants ne sont pas valides.

  • refresh_if_expired(auth_client: AuthorizedOauthClient)→ bool Actualise le jeton s'il a expiré.

  • save_token()→ None Enregistre le jeton actuel.

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>)

Bases : objet

Représente un jeton OAuth avec ses données associées.

Propriétés

Attribut Description
access_token str

Chaîne du jeton d'accès.

additional_data MutableMapping[str, Any]

Données supplémentaires associées au jeton.

expiration_time int

Délai d'expiration du jeton (code temporel UNIX).

refresh_token str

Chaîne du jeton d'actualisation.

La valeur par défaut est None.

signer str

Signataire du jeton.

La valeur par défaut est None.

Méthodes

  • to_cache()→ JsonString Sérialise l'objet OauthToken dans un format adapté à la mise en cache.

classmethod from_cache

classmethod from_cache(raw_data: JsonString)→ OauthToken

Crée un objet OauthToken à partir de données brutes mises en cache.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.