Currently, we support Basic Auth and Bearer tokens 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.
In the next page that loads, and 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 these cases, 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, such as OAuth, in the future. This task is on our long-term roadmap.