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:

_images/add-manual-control-user.png

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