2013-01-23 1 views
1

저는 Google Apps 관리자이며 xoauth.py 및 IMAP를 사용하여 사용자 비밀번호없이 사용자 메일을 다운로드합니다. 그러나이 과정은 1 시간 후에 중단됩니다. 나는 많은 블로그를 수색했고 나는이 토큰이 1 시간 후에 만료되었음을 알게되었다. 만료 시간을 Never로 연장하는 방법 또는이 토큰을 새로 고치는 방법을 알려줄 사람이 있습니까?xoauth.py 1 시간 후에 IMAP 토큰이 만료됩니다.

답변

1

서비스 계정, OAuth 2.0 및 가장을 사용한다고 가정합니다. 참조 :

https://developers.google.com/accounts/docs/OAuth2ServiceAccount#expiration

이 토큰을 새로 고치거나 만료 시간을 증가 할 수있는 방법이 없습니다. 응용 프로그램은 모든 IMAP 연결에서 1 시간 동안 사용하도록 주어진 토큰을 캐시해야합니다. 그런 다음 다른 JWT를 생성하고 서명 한 다음 다른 액세스 토큰을 요청해야합니다.

+0

제이, 토큰을 다시 생성하려고 시도했지만 실패합니다. 내 응용 프로그램이 단지 이것 때문에 붙어 있기 때문에 그것을 통해 나를 안내하십시오. –

+0

아래 코드 샘플을 기반으로 OAuth 2.0이 아닌 2-legged OAuth 1.0을 수행하는 것처럼 보입니다. 다시 연결할 때 xoauth 문자열을 생성하는 데 사용한 코드와 정확히 동일한 코드를 사용해야합니다. OAuth 1.0 xoauth 문자열은 1 시간이 아니라 10 분 후에 만료됩니다. –

+0

정확히 일치합니다. 나는 2 다리가있는 oauth를 사용하고 있지만 1.0 또는 2.0인지 확실하지 않습니다. 1 시간 후 10 분이 지나면 만료됩니다. 나는 5 명의 사용자의 이메일을 동시에 다운로드하려고하고 있으며 1 시간까지 잘 작동합니다. 이제 xoauth 문자열을 다시 생성하려고하면 다음과 같은 오류가 발생합니다. RuntimeError : Python 객체를 호출하는 동안 최대 재귀 심도를 초과했습니다. –

0

try : .. catch : .. 논리가 이러한 예외를 처리하는 데 사용될 수 있습니다.

Google은 OAuth1.0을 사용하지 않으므로 OAuth1 대신 OAuth2.0을 사용하는 것이 좋습니다.

관련 문제