데이터 액세스 및 승인

Google Health API는 사용자 데이터 액세스 및 보안을 관리하기 위한 강력하고 표준화된 프레임워크를 활용합니다. 이 현대화의 핵심 구성요소는 기존 Fitbit 승인 (FOT)에서 Google OAuth 2.0으로의 전환입니다. 이러한 변화를 통해 개발자는 표준 Google 인증 라이브러리를 활용하여 구현을 간소화하는 동시에 사용자에게 권한을 관리할 수 있는 친숙하고 중앙화된 인터페이스를 제공할 수 있습니다.

앱 등록

모든 Google Health API 앱은 모든 Google 앱을 관리하는 중앙 허브 역할을 하는 Google Cloud 콘솔을 사용하여 등록해야 합니다.

앱을 등록하는 방법은 시작하기의 단계를 따르세요. 앱을 등록할 때 확인할 수 있는 차이점은 다음과 같습니다.

Fitbit Web API Google Health API
공개 링크 https://dev.fitbit.com/apps https://console.cloud.google.com
새 앱 추가 새 앱 등록을 누릅니다.
  1. Google Cloud 프로젝트 만들기
  2. Google Health API 사용 설정
기본 정보 작성해야 할 입력란:
  • 애플리케이션 이름
  • 설명
  • 애플리케이션 웹사이트 URL
  • 조직
  • 조직 웹사이트 URL
  • 서비스 약관 URL
  • 개인정보처리방침 URL
작성해야 할 입력란:
  • 애플리케이션 이름
  • 지원 이메일
  • 대상 (내부 또는 외부)
  • 연락처 이메일
  • 로고 아이콘
  • 애플리케이션 웹사이트 URL
  • 개인정보처리방침 URL
  • 서비스 약관 URL
  • 승인된 도메인
애플리케이션 유형 개발자는 다음을 선택해야 합니다.
  • 서버
  • 클라이언트
  • 개인
  • 웹 애플리케이션
  • Android
  • Chrome 확장 프로그램
  • iOS
  • TV
  • 데스크톱 앱
  • 범용 Windows 플랫폼
클라이언트 ID 애플리케이션 설정이 저장될 때 등록됨 별도로 등록됨
액세스 유형 읽기 및 쓰기 액세스는 앱 수준에서 제어됩니다. 읽기 및 쓰기 액세스는 범위 수준에서 제어됩니다.
추가 URL
  • 리디렉션 URL: 사용자가 범위를 승인한 후 리디렉션되는 사이트
  • 승인된 JavaScript 출처: 웹 애플리케이션을 호스팅하는 HTTP 출처
  • 리디렉션 URL: 사용자가 범위를 승인한 후 리디렉션되는 사이트

OAuth 구현

Google Health API 앱은 Google OAuth2 클라이언트 라이브러리만 지원합니다. 널리 사용되는 프레임워크에 클라이언트 라이브러리를 사용할 수 있어 OAuth 2.0을 더 간단하게 구현할 수 있습니다. Google OAuth2 라이브러리와 오픈소스 OAuth2 라이브러리의 차이점은 다음과 같습니다.

Fitbit Web API Google Health API
OAuth2 라이브러리 지원 오픈소스 Google OAuth2 클라이언트 라이브러리
작동 방식 플랫폼 간에 일관되지 않음 여러 플랫폼에서 일관성 유지
승인 URL https://www.fitbit.com/oauth2/authorize https://accounts.google.com/o/oauth2/v2/auth
토큰 URL https://api.fitbit.com/oauth2/token https://oauth2.googleapis.com/token
Access Token Lifetime(액세스 토큰 수명) 8시간 1시간
액세스 토큰 크기 1,024바이트 2,048바이트
토큰 갱신 갱신 토큰은 승인 코드 부여 플로우를 사용할 때 생성됩니다. 사용자에 대해 갱신 토큰은 하나만 생성할 수 있습니다. 토큰은 만료되지 않으며 한 번만 사용할 수 있습니다. 갱신 토큰을 생성하려면 승인 문자열에 쿼리 매개변수 'access_type=offline'이 포함되어야 합니다. 단일 사용자에 대해 여러 개의 갱신 토큰을 만들 수 있습니다. 갱신 토큰은 시간 기반일 수 있습니다. 6개월 동안 사용되지 않았거나, 사용자가 시간 기반 액세스 권한을 부여했거나, 앱이 '테스트' 모드인 경우 만료됩니다. 자세한 내용은 갱신 토큰 만료를 참고하세요.
토큰 응답 JSON 응답에는 다음이 포함됩니다.
  • 액세스 토큰
  • 액세스 토큰 만료
  • 범위
  • 토큰 유형
  • 갱신 토큰
  • 사용자 ID
JSON 응답에는 다음이 포함됩니다.
  • 액세스 토큰
  • 액세스 토큰 만료
  • 범위
  • 토큰 유형
  • 갱신 토큰

사용자 ID를 가져오려면 users.getIdentity 엔드포인트를 사용하세요.

앱에서 다른 OAuth 라이브러리를 사용하므로 Fitbit 사용자는 새 통합에 다시 동의해야 합니다. 액세스 토큰과 갱신 토큰을 Google Health API로 전송하여 작동시킬 수는 없습니다.