Last updated: November 28, 2023
Currently, we support Basic Auth, Bearer Tokens, and JavaScript Injectors as means to display protected web content. Users can configure the above authentication methods after adding URL content to the Screenly content library.
To use Basic Auth or Bearer Tokens, navigate to your Screenly content library by clicking the Content tab on the left side of the Screenly dashboard. Next, click the title of the URL content you want to authenticate.
On the next page that loads, click the Advanced button to reveal authentication options.
For Bearer Tokens, click the + Add Header button. Next, type "Authorization" in the Header input field. Then type "Bearer [your token]" in the Value input field. Do not include the brackets. Press Save on the bottom right of the page.
For Basic Auth, you need to get the base64 hash of your username and password. You can do so using an online tool or using Python. See the Python code below:
>>> import base64
>>> auth = base64.b64encode(b"YourUsername:YourPassword")
>>> print("Basic {}".format(auth.decode()))
Basic WW91clVzZXJuYW1lOllvdXJQYXNzd29yZA==
You can also use Bash:
$ echo Basic $(echo -n "YourUsername:YourPassword" | base64)
Basic WW91clVzZXJuYW1lOllvdXJQYXNzd29yZA==
Once you have your hashed credentials, click the + Add Header button. Then, type "Authorization" in the Login input field. Type "Basic [your hashed credential]" in the Password input field. Do not include the brackets. To finish, press Save on the bottom right of the page.
After you save your authentication credentials to the URL content, your Screenly Player can then access the webpage and display your content on your screen(s). The preview image displayed in the Screenly dashboard for this URL will not refresh or change after your headers are added. To validate if your header works you will need to try it on a Screenly player.
Please note that Screenly is not able to log in to all websites at this time, especially if they use a method not described in this guide. In cases where Basic Auth or Bearer Token do not work, you can review our JavaScript Injectors to see if we have one already for the type of website you are using. If we do, you can use the login script via our API or CLI to test logging in this way. If not, you can enter a request on our GitHub page (click the green "New Issue" button, or our support team can also help you with this if needed).
In other cases where authentication does not seem to work, we suggest using a public, non-password-protected version of your webpage in order to bypass the login requirement. We do hope to support some additional options in the future. This task is on our long-term roadmap.
Lastly, while not quite an authentication method, we do have Edge Apps as well, which allow you to host and run an application directly from our Screenly player. You can read more about this on our page here.