Google 포토 API에는 미디어 항목 및 앨범에 액세스하는 데 사용되는 여러 범위가 포함되어 있습니다. 여러 호출에서 반환되는 응답은 개발자가 요청한 범위에 따라 다릅니다.
애플리케이션에서 Google 포토 API로 전송하는 모든 요청에는 승인 토큰이 포함되어야 합니다. Google은 이 토큰을 사용하여 애플리케이션을 식별합니다.
승인 프로토콜 정보
요청을 승인하려면 애플리케이션에서 OAuth 2.0을 사용해야 합니다. 다른 승인 프로토콜은 지원되지 않습니다. 애플리케이션에서 Google 계정으로 로그인을 사용하는 경우, 승인의 일부 절차는 자동으로 처리됩니다.
OAuth 2.0을 사용하여 요청 승인하기
Google 포토 API에 대한 모든 요청은 인증된 사용자의 승인을 받아야 합니다.
OAuth 2.0의 세부적인 승인 절차('흐름')는 제작 중인 애플리케이션 종류에 따라 약간씩 다릅니다. 다음의 일반적인 과정은 모든 애플리케이션 유형에 적용됩니다.
- 애플리케이션을 만들 때 Google API 콘솔을 사용하여 애플리케이션을 등록합니다. 이렇게 하면 Google에서 클라이언트 ID 및 클라이언트 보안 비밀과 같이 나중에 필요한 정보를 제공합니다.
- Google API 콘솔에서 Google 포토 API를 활성화합니다. API 콘솔의 목록에 이 API가 없다면 이 단계를 건너뜁니다.
- 애플리케이션에서 사용자 데이터에 액세스해야 하는 경우 Google에 특정 액세스 범위를 요청합니다.
- Google에서 사용자에게 애플리케이션이 일부 데이터를 요청하도록 승인할 것인지 물어보는 동의 화면을 표시합니다.
- 사용자가 승인하면 Google에서 애플리케이션에 제한 시간이 있는 액세스 토큰을 제공합니다.
- 애플리케이션에서 액세스 토큰을 첨부하여 사용자 데이터를 요청합니다.
- Google에서 요청과 토큰이 유효하다고 판단하면 요청된 데이터를 반환합니다.
일부 흐름에는 새로운 액세스 토큰을 얻기 위해 갱신 토큰을 사용하는 등의 추가 단계가 포함됩니다. 다양한 유형의 애플리케이션에 적용되는 흐름을 자세히 알아보려면 Google의 OAuth 2.0 문서를 참조하세요.
다음은 Google 포토 API에 대한 OAuth 2.0 범위 정보입니다.
Picker API 범위
범위 | 의미 |
---|---|
https://www.googleapis.com/auth/photospicker.mediaitems.readonly |
세션을 만들고, 가져오고, 삭제하고, 세션의 미디어 항목을 나열할 수 있는 액세스 권한입니다. |
라이브러리 API 범위
범위 | 의미 |
---|---|
https://www.googleapis.com/auth/photoslibrary.readonly https://www.googleapis.com/auth/photoslibrary.sharing https://www.googleapis.com/auth/photoslibrary
|
|
https://www.googleapis.com/auth/photoslibrary.appendonly |
쓰기 액세스 전용입니다. 바이트 업로드, 미디어 항목 만들기, 앨범 만들기, 보강 자료 추가 액세스 권한 사용자의 라이브러리 및 앱에서 만든 앨범에서만 새 미디어를 만들 수 있습니다. |
https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata |
개발자가 만든 미디어 항목 및 앨범에 대한 읽기 액세스 권한입니다. 자세한 내용은 미디어 항목 액세스 및 라이브러리 콘텐츠, 앨범, 미디어 항목 나열을 참고하세요.
|
https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata |
수정 액세스 권한만 있습니다. 개발자가 만든 앨범 및 미디어 항목의 다음 세부정보를 변경할 수 있는 액세스 권한:
|
OAuth 2.0을 사용하여 액세스를 요청하려면 애플리케이션에 범위 정보와 함께 애플리케이션 등록 시 Google에서 제공하는 정보(예: 클라이언트 ID, 클라이언트 보안 비밀)가 필요합니다.
팁: Google API 클라이언트 라이브러리가 사용자를 대신하여 일부 승인 과정을 처리할 수 있습니다. 이러한 라이브러리는 다양한 프로그래밍 언어로 제공됩니다. 자세한 내용은 라이브러리 및 샘플 페이지를 참조하세요.
범위 선택
일반적으로 최대한 제한적인 범위를 선택하고 앱에 필요하지 않은 범위를 요청하지 않는 것이 좋습니다. 사용자는 제한되고 명확하게 설명된 범위에 대한 액세스 권한을 보다 쉽게 부여할 수 있습니다. 사용자가 앱을 신뢰하고 앱에 정보가 필요한 이유를 이해하지 못하는 한 미디어에 광범위한 액세스 권한을 부여하는 것을 망설일 수 있습니다.
점진적 범위 요청
승인 권장사항에 따라 애플리케이션은 필요한 범위만 요청해야 합니다. 로그인 시 애플리케이션의 모든 범위를 미리 요청하지 마세요 대신 근거를 제공하고 맥락에 맞게 요청하세요. UX 가이드라인 및 권장사항에 따라 알림을 제공하고 동의를 요청할 때 사용자의 데이터로 무엇을 할 것인지, 액세스 권한을 부여하면 어떤 이점이 있는지 명확하게 설명합니다.
서비스 계정
Google 포토 API는 서비스 계정을 지원하지 않습니다. 애플리케이션은 웹 서버 애플리케이션용 OAuth 2.0 또는 모바일 및 데스크톱 앱용 OAuth 2.0과 같은 사용 가능한 다른 OAuth 2.0 흐름을 사용해야 합니다.