Open Source DCL

dcl.testpoint.io is a free service and a reference implementation of a Digital Capability Locator service (as per DCL 1.0 spec). At the moment it supports only Simplified Web UI. Support of the DCL 1.0 API will be added soon.

The reference implementation is Free Open-Source Software (FOSS) released under GPL3 License.

For support, please first ask the community and, if that doesn’t work then raise a ticket.

Query API

The reference implementation complies with the DCL 1.0 spec Discovery API.

The normative example in the DCL spec uses the dcl.testpoint.io free service to demonstrate the Query API in detail. Basically, this means a well formed NAPTR type DNS query to the *.dcl.testpoint.io domain will return a CNAME of a service metadata publisher.

Management API

The full DCL Management API is a work in progress. Please contribute to discussions about Management API design in the AusDigital community site, especially the GitHub issues to identify your Management API needs.

The dcl.testpoint.io reference implementation (and free service) provides a simplified management interface that is adequate for many testing and development purposes.

To use the simplified management interface, first you need a synthetic user credentials from the TestPoint IDP (if you haven’t already done so):

  1. Navigate to the IDP login page
  2. Login with Github
  3. Create synthetic user with any available ABN

Using the credentials you created above, you can manage the DCL entry for that ABN:

  1. Navigate to the DCL login page
  2. Log in with your synthetic credentials (this will take you past https://idp.testpoint.io using OIDC code-flow)
  3. Update the “New DCP Value” and click “Submit”.

ADBC DCL Interface implementation

In addition to AusDigital DCL 1.0 spec with a minimum required set of functions Testpoint.io provides an implementation of ADBC DCL Interface Specification 2.0.0(dbc-dcl/2) - dbc-dcl.testpoint.io.

The swagger document was developed based on ADBC DCL Implementation Guide (v2.0.0 available here) and available on swaggerhub.com

Host

https://dbc-dcl.testpoint.io/

Authentification

Host supports TLS and JWT auth. Auth is method-agnostic, so regardless of used method a user may be granted some access to system objects.

Resources

Server configuration for TLS auth

Source code

Feature files

Admin Panel

https://dbc-dcl.testpoint.io/admin/

Access to an admin panel is provided by request, as dbc-dcl.testpoint.io is a shared instance. But a private instance can be installed from a source code.

Admin panel may be used for party management, status change and audit records review.

Using the User-Party access interface dcl users can get permission to access specific parties.

A dcl user record is created, once a user authenticates in DCL for the first time. A demo-auth endpoint can be used to validate a current authentication status and trigger a dcl user creation process.

Only when a dcl user record was added, admin user can set permissions for this user.