In this recipe, you will learn how to enable HTTP basic authentication to limit a user who can access the Marathon API.
Before you start, ensure Marathon is up and running. Before applying any authentication, ensure you enabled SSL to protect secrets from eavesdropping.
Update the configuration with credentials:
echo MARATHON_HTTP_CREDENTIALS=username:password >> /etc/default/marathon
Check the API requires authentication:
curl -k https://localhost:8443/ping
The preceding command should return a 401 Unauthorized
code, while the following command should work. From now, all interactions with Marathon require passing credentials:
curl -k -u username:password https://localhost:8443/ping