Справочное руководство по разрешениям IAM

В этом документе представлена ​​справочная информация о настройке разрешений и ролей IAM Test Lab . Если вы хотите настроить более детализированные роли, Test Lab предоставляет разрешения как для выполнения тестов, так и для потоковых устройств с использованием Android Studio. Выполнение теста имеет дополнительные требования для правильной настройки разрешений и ролей для IAM и потоковых устройств.

Выполнение теста

Чтобы правильно настроить Test Lab , чтобы вы могли выполнять и читать результаты тестов, вам нужно настроить доступ к контейнерам Cloud Storage . Для этого требуется определенная конфигурация разрешений, которые не все включены в стандартные предопределенные роли Firebase . Чтобы предоставить доступ к Test Lab , используйте один из следующих вариантов.

Тесты через консоль Firebase

Для тестов, запущенных из консоли Firebase или через матрицу устройств Firebase Test Lab в Android Studio :

  1. Протестируйте свое приложение в отдельном проекте Firebase.
  2. Добавьте пользователей, которым необходим доступ к Test Lab , и назначьте им роли устаревших проектов с помощью консоли Firebase .
  3. (Необязательно) Назначьте роль редактора проекта, чтобы разрешить пользователю запускать тесты с помощью Test Lab .
  4. (Необязательно) Назначьте роль проекта «Просмотрщик» , чтобы разрешить пользователю просматривать результаты тестирования с помощью Test Lab .

Тесты через gcloud CLI

Тесты, запущенные из gcloud CLI , API тестирования или Gradle Managed Devices, используют контейнер Cloud Storage созданный Firebase по умолчанию. Для этого требуется, чтобы принципал, выполняющий тест, имел роль "roles/editor" для вашего проекта Firebase.

Если вы не можете предоставить эту роль или хотите сохранить подробные результаты тестирования дольше 90 дней, вы можете отправить эти результаты тестирования в принадлежащий вам контейнер Cloud Storage с помощью параметра командной строки gcloud --results-bucket .

При использовании собственного Cloud Storage :

  1. Назначьте пару предопределенных ролей, которые вместе предоставляют требуемый набор разрешений, используя консоль Google Cloud .
  2. Чтобы разрешить пользователю запускать тесты с помощью Test Lab , назначьте ему обоих: администратора Firebase Test Lab ( roles/cloudtestservice.testAdmin ) и наблюдателя Firebase Analytics ( roles/firebase.analyticsViewer ).
  3. Чтобы разрешить пользователю просматривать результаты тестирования в Test Lab , назначьте обоих: Firebase Test Lab Viewer ( roles/cloudtestservice.testViewer ) и Firebase Analytics Viewer ( roles/firebase.analyticsViewer ).

Включить разрешения в Device Streaming

Device Streaming — это отдельная функция, встроенная в устройства Test Lab . Она обеспечивает прямой доступ к устройствам Test Lab . Редакторы и администраторы Firebase могут использовать Device Streaming без дополнительных ролей, однако при необходимости вы также можете предоставить более детализированные роли.

Чтобы разрешить пользователю использовать потоковую передачу с устройства, назначьте предопределенную роль, которая предоставляет требуемый набор разрешений вместе с помощью консоли Google Cloud . Назначаемая роль — Firebase Test Lab Direct Access Admin ( roles/cloudtestservice.directAccessAdmin ).

Дополнительную информацию о потоковой передаче данных с устройств в Android Studio см. в разделе Потоковая передача данных с устройств в Android Studio .