Registering an API client
For developers building clients, this topic contains the procedure to register your client for use of the Aspera on Cloud API.
See also IBM Aspera Developer Center.
Registering a client that uses browser-based authentication
If your client uses browser-based (authorization code grant flow) authentication, you can configure whether or not the browser prompts users of your client explicitly to grant your client access Aspera on Cloud. If not, your users are not prompted and permission is assumed.
To register your API client for browser-based authentication, do the following:
Result: Aspera on Cloud completes registration of your client app, then generates and displays the client ID and secret you need to access the API.
Registering a client that uses JWT authentication
Aspera on Cloud supports the JSON Web Token-based OAuth 2.0 grant type (a grant type specifies how a client interacts with an identity server to authorize access to protected resources) to enable client applications to use the API without a user having to log in from a web browser.
A JSON web token includes, among other things, a user ID (the email of the user to authenticate), and is signed with a valid private key. In response to a valid JWT request submitted to the API, AoC returns an access token for the user identified in the JWT token request. Further requests to the API must include this access token to be valid. Requests as a specific user are permitted according to that user's permissions and access in the Aspera on Cloud application.
Retrieving admin tokens
You can enable users of this client who are organization administrators to retrieve admin-scoped node access tokens from the API. Such a token provides the user with admin privileges on the node itself. See the procedure below.
Users and keys
You must configure which users can access the API using your client, and which key – either a user-specific key or a global key – each user can submit to retrieve an access token.
There are two configuration parameters for users and keys.
- Users:
- All users: All users in the Aspera on Cloud organization are eligible to retrieve an access token.
- Only listed users: Only users you list are eligible to receive an access token.
- Keys:
- User-specific keys: The JWT must be signed with the specified user's own private key.
- User-specific keys and global key: The JWT can be signed with the specified user's own private key or with the global private key. (The global key is tied to the client just as the user-specific key is, but the global key can be applied to all users.)
The Users and Keys parameters interact with each other to enable various valid combinations, as the table below indicates:
User-Specific Key | User-Specific Key and Global Key | |
---|---|---|
All Users |
API clients can request access as any Aspera on Cloud user. A valid request for access token must:
|
API client can request access as any Aspera on Cloud user. A valid request for access token must:
|
Only Listed Users |
API client can request access as any eligible (listed) Aspera on Cloud user. A valid request for access token must:
|
API client can request access as any eligible (listed) Aspera on Cloud user. A valid request for access token must:
|
Procedure
To configure JWT authentication for your registered client application, do the following:
Managing registered clients
You can retrieve your client ID and secret, display and update details for any registered client, and delete a client.
- In the Admin application, select Integrations > API clients.
- To delete a client, right-click the row and select Delete; then confirm deletion.
- To open any client record and display the client ID and secret, click the row.
- Edit other fields as required, then click Save.
- To delete this client, click Delete, then confirm deletion.