Skip to content

ananjaykumar2/iudx-resource-server

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Build Status Jenkins Coverage Unit Tests Performance Tests Security Tests Integration Tests

DX Resource Server

The DX Resource Server serves as the data plane for datasets, enabling data discovery, publication, and subscription. It facilitates data providers in publishing their resources based on annotated metadata and allows consumers to access data in accordance with the provider's access policies. The server ensures secure data access by integrating with an authorization server, requiring consumers to present access tokens validated through token introspection APIs before serving protected data. Additionally, the resource server offers an interface with a data broker for streaming data ingestion and subscription via AMQPs. It also supports advanced search functionalities like temporal, geo-spatial and attribute queries through an HTTPs API interface. Data Providers can publish the data and Consumers can access/consume the data using both HTTPs and AMQPs protocols.

Features

  • Provides data ingestion and data access from available resources using standard HTTPs APIs, AMQPs streaming
  • Search and count APIs for searching through available data: Support for Spatial (Circle, Polygon, Bbox, Linestring), Temporal (Before, during, After) and Attribute searches
  • Adaptor registration endpoints and streaming endpoints for data ingestion
  • Integration with authorization server (token introspection) to serve protected data as per the access control policies set by the provider
  • End to End encryption for data access using certificate for HTTPs
  • Secure data ingestion and data access over TLS for HTTP and AMQP
  • Scalable, service mesh architecture based implementation using open source components: Vert.X API framework, Elasticsearch/Logstash for database and RabbitMQ for data broker.
  • Hazelcast and Zookeeper based cluster management and service discovery
  • Integration with auditing server for metering and accounting purpose

Explanation

Understanding Resource Server

  • The section available here explains the components/services used in implementing the Resource Server
  • To try out the APIs, import the API collection, postman environment files in postman
  • Reference : postman-collection, postman-environment

How To Guide

Setup and Installation

Setup and Installation guide is available here

Tutorial

Resource.Server.-Mp4.mp4

Reference

API Docs

API docs are available here

FAQ

FAQs are available here

About

IUDX Data publication and subscription portal

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 98.2%
  • Python 1.1%
  • Other 0.7%