| Authentication and Authorization |
297
2.
Assign a Node API username and password to the system user. This command requires admin permissions.
# /opt/aspera/bin/asnodeadmin -au
node_username
-p
node_password
-
x
system_user
For example, to assign the Node API username
nodeuser
to the system user
xfer
:
# /opt/aspera/bin/asnodeadmin -au nodeuser -p asperaissofast -x xfer
This command automatically reloads the node configuration.
3.
To create access keys, send a request to the Node API
/access_keys
endpoint by using
curl
command.
Curl is included in many Unix-based operating systems. To determine if it is installed, run
curl
on the command
line. If it is not installed, download it from the Curl website:
https://curl.haxx.se/download.html
To create an access key, run the following command on the server:
# curl -ki -u
node_username
:
node_password
-X POST https://localhost:9092/
access_keys -d @
access_key_config.json
where
access_key_config.json
is the access key configuration file.
For example,
# curl -ki -u nodeadmin:superP@55wOrD -X POST https://localhost:9092/
access_keys -d @/nodeadmin/ak_client1.json
Access Key Configuration
The access key configuration is specified in JSON. Only the "storage" object is required; the Node API creates an
access key ID and secret if they are not provided.
Note:
If your access key configuration is simple, you can specify it on the command line,
replacing
-d @ access_key_config.json
with an argument like
-d'{"storage":
{"type":"local","path":"/projects/project1"}}'
.
{
"id" : "
access_key_id
",
"secret" : "
access_key_secret
",
"token_verification_key" : "
token_key
",
"storage" : {
storage_configuration
},
"license" : {
"customer_id" : "
customer_id
",
"entitlement_id" : "
entitlement_id
"
},
"configuration" : {
"transfer" : {
"cipher" : "
cipher
",
"policy" : "
policy
",
"target_rate_kbps" :
target_rate
,
"target_rate_cap_kbps" :
target_rate_cap
,
"content_protection_secret" : "
secret
",
"preserve_timestamps" : true|false,
"aggressiveness" : "
aggressiveness
",
},
"server" : {
"activity_event_logging" : true|false,
"recursive_counts" : true|false,
"aej_logging" : true|false
}