OAuth 모듈

exception TIPCommon.oauth.AuthenticationError

기본: Exception

인증 오류에 대한 일반 예외입니다.

class TIPCommon.oauth.AuthorizedOauthClient

클래스 TIPCommon.oauth.AuthorizedOauthClient(oauth_manager: OauthManager, *args, **kwargs)

기본: Client

이 클래스는 API 호출을 위한 승인된 클라이언트를 나타냅니다.

메서드

  • close()→ None 토큰을 저장하고 클라이언트 세션을 닫습니다.

  • request(*args, **kwargs)→ Response 자동 사용자 인증 정보 새로고침을 지원하기 위해 재작성됩니다. 이 메서드는 요청을 실행하기 전에 사용자 인증 정보가 만료되었는지 확인하고 응답을 검증하여 만료된 사용자 인증 정보가 표시되는지 확인합니다. 이 경우 새로고침된 토큰으로 요청을 다시 실행합니다.

class TIPCommon.oauth.CredStorage

클래스 TIPCommon.oauth.CredStorage(encryption_password: str, chronicle_soar: SiemplifyAction | SiemplifyConnectorExecution | SiemplifyJob)

기본: object

사용자 인증 정보의 저장 및 검색을 관리합니다.

메서드

  • get_instance_identifier()→ str 커넥터 또는 통합의 Google SecOps 인스턴스 식별자를 가져옵니다.

  • get_token()→ OauthToken | None 컨텍스트 데이터베이스에서 토큰을 추출하고 복호화합니다.

  • set_token(token: OauthToken)→ None 토큰을 암호화하고 컨텍스트 데이터베이스에 저장합니다.

exception TIPCommon.oauth.EncryptionError

기본: Exception

암호화 오류의 일반 예외입니다.

class TIPCommon.oauth.OAuthAdapter

기본: ABC

OAuth 작업의 인터페이스를 정의하는 추상 기본 클래스입니다.

추상 메서드

  • abstractcheck_signer(token: OauthToken)→ bool 서명자가 유효한 경우 True를 반환하고 그 외의 경우에는 False를 반환합니다.

  • abstractprepare_authorized_client(token: OauthToken, auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient 인증된 클라이언트의 헤더 또는 기타 필요한 클라이언트 구성을 설정합니다.

  • 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 인증 흐름을 관리합니다.

메서드

  • prepare_authorized_client(auth_client: AuthorizedOauthClient)→ AuthorizedOauthClient 사용할 승인된 클라이언트를 준비합니다.

  • 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

갱신 토큰 문자열입니다.

기본값은 None입니다.

signer str

토큰의 서명자입니다.

기본값은 None입니다.

메서드

  • to_cache()→ JsonString OauthToken 객체를 캐싱에 적합한 형식으로 직렬화합니다.

classmethod from_cache

classmethod from_cache(raw_data: JsonString)→ OauthToken

캐시된 원시 데이터에서 OauthToken 객체를 만듭니다.

도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.