2013-10-25 4 views
6

새로 고침 토큰을 사용하여 새 액세스 토큰을 요청할시기를 결정하려면 다음 두 가지 방법을 알고 있습니다 (아래). passport-google-oauth 라이브러리를 수정하지 않고 이러한 접근법 중 하나를 사용할 수 있습니까?passportjs의 새로 고침 토큰에서 oauth 액세스 토큰 가져 오기

1) "선제 공격"방법

  • 저장의이 API에 액세스하는 액세스 토큰을 사용할 때마다
  • 현재 시간에 대한 만료 시간을 확인 부여 된 액세스 토큰의 만료 시간
  • 액세스 토큰이 만료되지 않은 경우
  • , 토큰 새 액세스를 얻기 위해 액세스 토큰이 만료 (또는 만료되는 가까운) 경우, API
  • 에 액세스하는 데 사용할 새로 고침 토큰을 공급
,

2) 액세스 토큰은 인증에 실패하면

  • 항상
  • 토큰 액세스를 공급하는 "실패를 처리하는"방법은

감사 토큰 새로운 접근 할 수, 새로 고침 토큰을 제공합니다. 또한 모든 대안을 환영합니다.

답변

4

Passport는 로그인 중에 사용자 프로필을 가져 오는 것 외에 액세스 토큰이나 새로 고침 토큰을 적극적으로 사용하지 않습니다. 애플리케이션은 필요한 API 요청을 할 때 이러한 토큰을 사용해야합니다. 따라서 설명하는 두 가지 방법을 구현할 수 있으며 Passport는 프로세스에 포함되지 않습니다.

은 참조 : https://github.com/jaredhanson/passport-google-oauth/issues/23

5

내가 처리 할 플러그인을 작성이 좀 더 쉽게 :

+0

아주 좋은, 감사입니다 - 여권 - 구글 - OAuth를 통합하고 google-api-nodejs-client는 Google 스프레드 시트를 매우 부드럽게 편집 할 수 있습니다. –

+0

Dynamic Token을 참조하십시오. 기본 사용법은 https://github.com/jpillora/node-edit-google-spreadsheet입니다. 여기서는'refresh.requestNewAccessToken()'을 호출합니다. –

관련 문제