Guide de référence sur les autorisations IAM

Ce document fournit des informations de référence sur la configuration des autorisations et des rôles IAM pour Test Lab. Si vous souhaitez configurer des rôles plus précis, Test Lab fournit des autorisations pour exécuter des tests et diffuser des appareils en streaming à l'aide d'Android Studio. L'exécution des tests nécessite des exigences supplémentaires pour configurer correctement les autorisations et les rôles pour IAM et les appareils de streaming.

Exécution de test

Pour configurer correctement Test Lab afin de pouvoir exécuter et lire les résultats des tests, vous devez configurer l'accès aux buckets Cloud Storage. Cela nécessite une configuration spécifique des autorisations, qui ne sont pas toutes incluses dans les rôles prédéfinis Firebase standards. Pour accorder l'accès à Test Lab, utilisez l'une des options suivantes.

Tests via la console Firebase

Pour les tests lancés depuis la console Firebase ou via la matrice des appareils Firebase Test Lab dans Android Studio :

  1. Testez votre application dans un projet Firebase distinct.
  2. Ajoutez les utilisateurs qui ont besoin d'accéder à Test Lab et attribuez-leur des rôles de projet hérités à l'aide de la console Firebase.
  3. (Facultatif) Attribuez le rôle de projet Éditeur pour permettre à un utilisateur d'exécuter des tests avec Test Lab.
  4. (Facultatif) Attribuez le rôle de projet Lecteur pour permettre à un utilisateur d'afficher les résultats des tests avec Test Lab.

Tests via la CLI gcloud

Les tests lancés à partir de la gcloud CLI, de l'API Testing ou des appareils gérés par Gradle utilisent un bucket Cloud Storage créé par Firebase par défaut. Pour cela, le principal qui exécute le test doit disposer du rôle "roles/editor" pour votre projet Firebase.

Si vous ne pouvez pas attribuer ce rôle ou si vous souhaitez conserver les résultats de test détaillés pendant plus de 90 jours, vous pouvez les envoyer à un bucket Cloud Storage dont vous êtes propriétaire à l'aide de l'option de ligne de commande gcloud --results-bucket.

Lorsque vous utilisez votre propre bucket Cloud Storage :

  1. Attribuez une paire de rôles prédéfinis qui accordent ensemble l'ensemble d'autorisations requis à l'aide de la console Google Cloud.
  2. Pour autoriser un utilisateur à exécuter des tests avec Test Lab, attribuez-lui les rôles Administrateur Firebase Test Lab (roles/cloudtestservice.testAdmin) et Lecteur Firebase Analytics (roles/firebase.analyticsViewer).
  3. Pour permettre à un utilisateur de consulter les résultats des tests dans Test Lab, attribuez-lui les rôles Lecteur Firebase Test Lab (roles/cloudtestservice.testViewer) et Lecteur Firebase Analytics (roles/firebase.analyticsViewer).

Activer les autorisations dans le streaming d'appareils

La diffusion sur l'appareil est une fonctionnalité distincte basée sur les appareils Test Lab. Il vous permet d'accéder directement aux appareils Test Lab. Les administrateurs et les éditeurs Firebase peuvent utiliser le streaming d'appareils sans aucun rôle supplémentaire. Toutefois, vous pouvez également attribuer des rôles plus précis si nécessaire.

Pour autoriser un utilisateur à utiliser le streaming d'appareils, attribuez-lui un rôle prédéfini qui lui accorde l'ensemble des autorisations requises à l'aide de la console Google Cloud. Le rôle à attribuer est Administrateur de l'accès direct pour Firebase Test Lab (roles/cloudtestservice.directAccessAdmin).

Pour en savoir plus sur le streaming d'appareils dans Android Studio, consultez Streaming d'appareils dans Android Studio.