Guide 5. Configure resource server
Last updated
Last updated
As a data service provider you need to implement an and a resource server. This guide explains how you configure a resource server.
The resource server is being used by the Data service provider to communicate with Clients from data service consumers. On the resource server the data services are implemented. The resource server is responsible for Policy Based Access to the data services and the data within these services. The functions and interfaces of the resource server are defined within the .
Developing a Resource Server involves creating a backend that protects resources (APIs) and only allows access to clients with valid and authorized tokens. Here's a high-level process:
Set Up API Endpoints: Define your protected APIs for your data services, according to the
Validate Access Tokens:
Use JWT validation for tokens with embedded claims (validate signature and claims like aud
, exp
, etc.).
Use token introspection for opaque tokens by calling the Authorization Server's introspection endpoint.
Implement Access Control:
Check scopes or roles from the token to enforce permissions.
Apply middleware, filters, or decorators to secure endpoints.
Use Secure Protocols: Always use HTTPS to protect data in transit.
Test with Tokens: Test your Resource Server by generating tokens using an Authorization Server and calling protected endpoints.
/capabilities
endpointEvery data service producer needs to implement the as described in the DSGO rulebook. This endpoint allows for discovery of data services within the DSGO.
DSGO generic API requirements
digiGO
English
DSGO specification of the /capabilities
endpoint.
digiGO
English
iSHARE specification of a generic /service endpoint.
iSHARE
English
Github repository with code snippets for implementing iSHARE functionality.
iSHARE
English
A set of Postman collections to test your implementation.
iSHARE
English
Reference implementation of a data service producer.
iSHARE
English
PDF document specifying a decision tree for validation a token request.
iSHARE
English
Every server needs to adhere to the TLS requirements and QWAC requirements of the DSGO. More information can be found in the .