Authentication
Flux supports both authenticated and public services.
Authenticated
All compute service endpoints support HTTP Basic Auth with username and password.
The Arraylake compute service uses your organization name as the username
and an Arraylake API key as the password
.
To generate an API token navigate to https://app.earthmover.io/{org}/settings/api-clients
Authenticated queries can be made by embedding the credential username
(org) and password
(api token) into the base URl as follows
https://{username}:{password}@compute.earthmover.io/v1/services/{protocol}/{org}/{repo}/{branch|commit|tag}/{path/to/group}/{protocol}/
Alternatively, the Authorization
header can be used to pass the credentials:
- python
- curl
import requests
response = requests.get(
"https://compute.earthmover.io/v1/services/{protocol}/{org}/{repo}/{branch|commit|tag}/{path/to/group}/{protocol}/",
auth=("{username}", "{password}")
)
curl -u {username}:{password} "https://compute.earthmover.io/v1/services/{protocol}/{org}/{repo}/{branch|commit|tag}/{path/to/group}/{protocol}/"
Public Services - Disabling Authentication
When desired, services can also be made public for any user to access.
This will allow any http traffic to access your service endpoints and ANY repositories within your Arraylake organization. More fine grained control over authentication is on our roadmap.
al compute enable {org} {protocol} --is-public