User Access Control#
The Stb-tester Portal uses GitHub OAuth for single-sign-on. It identifies users by their GitHub username. All users must have a GitHub account. Any user with read, write, or admin access to the test-pack repository on GitHub will have access to the Stb-tester Portal.
The Stb-tester Portal integrates with GitHub using the OAuth2 API. When first accessing the portal you will be redirected to GitHub’s login page. After logging in, you will be redirected back to the portal. The Stb-tester Portal itself does not have access to your GitHub password. See Sign in.
For REST API access, you must send an “access token” in your HTTP request. You can create and revoke access tokens in the Stb-tester Portal: See REST API Authentication. Access tokens identify a specific user and they can be revoked by the user at any time. Authenticating with an access token grants the same rights as authenticating with GitHub. If a user has their permissions changed or removed, the access token will also be affected immediately.
Granting access to the portal#
Users with Admin access can add, remove, and modify the access level of other users.
Stb-tester’s support team are not able to grant access to your Portal, as we are not able to verify your identity. If you need access, please contact someone in your organisation who has Admin access - if you don’t know who that is, contact support@stb-tester.com.
Read, Write, or Admin access#
To add a user with Read, Write, or Admin access, you must add the user to the test-pack repository on GitHub, with the corresponding level of access. See GitHub’s documentation: Managing teams and people with access to your repository.
Manual control#
To add a user with Manual control access, use the Admin page of the Stb-tester Portal:
Users with the “manual control” role still need a GitHub account for authentication, but they don’t need access to the git repository.
Roles#
Manual control |
Read |
Write |
Admin |
|
---|---|---|---|---|
See the status of any Stb-tester Node, including which tests are running |
✓ |
✓ |
✓ |
✓ |
See live video from any Node’s device-under-test |
✓ |
✓ |
✓ |
✓ |
Download screenshots from any Node’s device-under-test |
✓ |
✓ |
✓ |
✓ |
See the names of git branches |
✓ |
✓ |
✓ |
✓ |
See all available remote controls from any branch |
✓ |
✓ |
✓ |
✓ |
Use the manual remote control |
✓ |
✓ |
✓ |
✓ |
View and clone the git repository |
✗ |
✓ |
✓ |
✓ |
Run any test from any branch |
✗ |
✓ |
✓ |
✓ |
Stop any running test |
✗ |
✓ |
✓ |
✓ |
Reserve nodes |
✗ |
✓ |
✓ |
✓ |
Interrupt a reservation from any user on any node |
✗ |
✓ |
✓ |
✓ |
View all test results |
✗ |
✓ |
✓ |
✓ |
View the object repository |
✗ |
✓ |
✓ |
✓ |
Create and delete REST API access tokens |
✗ |
✓ |
✓ |
✓ |
Push to the git repository (modify test scripts, remote controls, or other configuration) |
✗ |
✗ |
✓ |
✓ |
Create page objects |
✗ |
✗ |
✓ |
✓ |
Save screenshots to the object repository |
✗ |
✗ |
✓ |
✓ |
Update configuration files using the admin page (node “friendly names” and secrets) |
✗ |
✗ |
✓ |
✓ |
List all users and their access levels |
✗ |
✗ |
✗ |
✓ |
Add, remove, or modify the access levels of other users |
✗ |
✗ |
✗ |
✓ |