Champs d'application des autorisations

L'API Library de Google Photos contient plusieurs champs d'application permettant d'accéder aux éléments multimédias et aux albums. Les réponses renvoyées par différents appels diffèrent en fonction des champs d'application demandés par le développeur.

Chaque requête que votre application envoie à l'API Google Photos Library doit inclure un jeton d'autorisation. Celui-ci permet également d'identifier votre application auprès de Google.

À propos des protocoles d'autorisation

Votre application doit autoriser les requêtes via le protocole OAuth 2.0. Les autres protocoles d'autorisation ne sont pas acceptés. Si votre application utilise la fonctionnalité Se connecter avec Google, certains aspects de l'autorisation sont traités pour vous.

Autoriser des requêtes avec OAuth 2.0

Toutes les requêtes adressées à l'API Google Photos Library doivent être autorisées par un utilisateur authentifié.

Les détails de la procédure d'autorisation (ou "flux") concernant OAuth 2.0 varient légèrement selon le type d'application que vous développez. La procédure générale suivante s'applique à tous les types d'applications :

  1. Lorsque vous créez votre application, vous l'enregistrez dans la console d'API Google. Google fournit ensuite des informations dont vous aurez besoin ultérieurement, dont un ID client et un code secret du client.
  2. Activez l'API Library de Google Photos dans la console Google APIs. Si l'API ne figure pas dans la console, ignorez cette étape.
  3. Lorsque votre application doit accéder à des données utilisateur, elle demande à Google un champ d'application d'accès particulier.
  4. Google affiche alors un écran d'autorisation, dans lequel l'utilisateur est invité à autoriser votre application à demander certaines de ses données.
  5. Si l'utilisateur accepte, Google attribue à votre application un jeton d'accès temporaire.
  6. Votre application demande des données utilisateur en joignant le jeton d'accès à la requête.
  7. Dès lors que Google valide la requête et le jeton, les données demandées sont renvoyées.

Certains flux comportent d'autres étapes, comme l'utilisation de jetons d'actualisation afin d'obtenir de nouveaux jetons d'accès. Pour en savoir plus sur les flux concernant divers types d'applications, consultez la documentation OAuth 2.0 de Google.

Voici les informations concernant le champ d'application OAuth 2.0 pour l'API Library de Google Photos:

Champ d'application Signification
https://www.googleapis.com/auth/photoslibrary.readonly

Accès en lecture seule.

Répertorier les éléments de la bibliothèque et tous les albums, accéder à tous les éléments multimédias et répertorier les albums appartenant à l'utilisateur, y compris ceux qui ont été partagés avec lui.

Pour les albums partagés par l'utilisateur, les propriétés de partage ne sont renvoyées que si le champ d'application photoslibrary.sharing a également été accordé.

La propriété shareInfo pour les albums et la propriété contributorInfo pour mediaItems ne sont disponibles que si le champ d'application photoslibrary.sharing a également été accordé.

Pour en savoir plus, consultez Partager des contenus multimédias.

https://www.googleapis.com/auth/photoslibrary.appendonly

Accès en écriture uniquement :

Accès permettant d'importer des octets, et de créer des éléments multimédias et des albums, et d'enrichir les données. Autorise uniquement la création de contenus multimédias dans la bibliothèque de l'utilisateur et dans les albums créés par l'application.

https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata

Accès en lecture aux éléments multimédias et aux albums créés par le développeur. Pour en savoir plus, consultez Accéder aux éléments multimédias et Répertorier le contenu, les albums et les éléments multimédias des bibliothèques.

Destiné à être demandé avec le champ d'application photoslibrary.appendonly.

https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata

Accès en modification uniquement.

Accès permettant de modifier ces détails pour les albums et les éléments multimédias créés par le développeur:

https://www.googleapis.com/auth/photoslibrary.sharing

Accès au partage d'appels

Accès permettant de créer un album, de le partager, d'y importer des éléments multimédias et de rejoindre un album partagé.

https://www.googleapis.com/auth/photoslibrary

Utilisation déconseillée Ne demandez l'accès qu'aux niveaux d'accès dont vous avez besoin à l'aide d'une autorisation incrémentielle.

Accès aux champs d'application photoslibrary.appendonly et photoslibrary.readonly. N'inclut pas l'accès photoslibrary.sharing ni photoslibrary.edit.

Pour demander l'accès via OAuth 2.0, vous avez besoin du champ d'application ainsi que des informations fournies par Google lors de l'enregistrement de l'application (l'ID client et le code secret du client, par exemple).

Conseil : Les bibliothèques clientes des API Google peuvent gérer une partie de la procédure d'autorisation à votre place. Elles sont proposées pour une grande variété de langages de programmation. Pour en savoir plus, explorez les bibliothèques clientes et les exemples de code présentés sur la page Installer les bibliothèques clientes.

Sélectionner les niveaux d'accès

En règle générale, choisissez le champ d'application le plus restrictif possible et évitez de demander des champs d'application dont votre application n'a pas besoin. Les utilisateurs accordent plus facilement l'accès à des champs d'application limités et clairement décrits. Les utilisateurs peuvent hésiter à accorder un accès étendu à leurs contenus multimédias, sauf s'ils font confiance à votre application et qu'ils comprennent pourquoi elle a besoin de ces informations.

Demande incrémentielle de champs d'application

Conformément aux bonnes pratiques en matière d'autorisation, votre application ne doit demander que les champs d'application nécessaires. Évitez de demander tous les champs d'application de votre application au moment de la connexion. À la place, fournissez une justification et effectuez la demande en contexte. Expliquez clairement ce que vous ferez des données de vos utilisateurs et les avantages dont ils bénéficieront en accordant l'accès, conformément aux consignes et bonnes pratiques relatives à l'expérience utilisateur pour avertir les utilisateurs et demander leur consentement.

Comptes de service

L'API Library n'est pas compatible avec les comptes de service. Votre application doit utiliser les autres flux OAuth 2.0 disponibles, tels que OAuth 2.0 pour les applications de serveur Web ou OAuth 2.0 pour les applications mobiles et de bureau.