Purpose of this document
Provide the Farmstack goals and vision of what it eventually would turn out. This is not a one time document but a living doc which will change over time as we gain more understanding.
What is FarmStack?
FarmStack is a digital infrastructure that enables data collaboration between different entities. It does this by providing a means to:
Share data directly to the relevant organization without the need of third party through p2p connector (peer to peer connector)
Empower the data provider to specify how data can or cannot be used by the receiver through data owner defined usage policies
Enable organizations to make their data discoverable by publishing metadata (description of data) and data transformation services in data catalog
Why is FarmStack required?
FarmStack is required because:
Complete farmer profile (including farmer activity) not available including govt
Lack of trust on misuse or under utilization of data for centralized data repository
Need to comply with evolving data policy and privacy safeguarding measures
Value generated by FarmStack
By combining specific datasets, better services or products can be created
Organizations can discover what data resides with whom to foster collaboration
Potential to unlock value of data that was previously considered not shareable
More the feedback from farmers is combined, more enriching the solution can be - giving rise to virtuous cycle
How will someone use FarmStack?
There are two ways to use p2p connectors: a) data providers can set up the entire p2p connector or b) service based model where FS team can deploy the connector
No difference between the two in terms of functionality of data exchange except that for first they need to get certificates issued and manage the deployment
Available resources:
Central place to download a p2p connector (github repo)
Help guide to set up a p2p connector
Documents
Tutorials
Videos
UI to manage data sharing
UI to configure p2p connector
Container network
Services (endpoints, auth mechanism etc)
Routes
UI to configure usage policy for consumers
UI to manage activity log
UI to manage certificates
UI to manage which catalog service to be used
Examples of policy based usage control (not comprehensive list)
This is just to give examples of usage policies for the purpose of documentation. This is not the immediate usage policy.
Below are the categories of use cases and examples for that. The categorization is a) usage oly, b) view only, c) share, d) download and e) stored.
Not visible - available for operations alone
Usage of data fields restricted to specific operations like joining
Usage of data fields restricted to specific operations requiring logging
Usage of data fields restricted to specific operation limiting number of times operations can be made
Revoke usage
Delete data
Usage of data fields restricted to specific operations for a certain time period
Revoke usage
Delete data
Visible with constraints
Data available for viewing for specific time period
Revoke access
Delete data
Specific data fields can be viewed by specific persons in specific organizations
Shareable with constraints
Can be shared to specific organizations (IP list) with them only able to view
Can be shared with logging and notifications
Can be shared with limited number of times
Revoke permission to share
Delete data
Can be shared for a limited amount of time
Revoke permission to share
Delete data
Can share only specific data fields
Downloadable with constraints
Can download specific data fields
Stored with constraints
Can be stored but in encrypted form at specific instance
Can be stored for usage only for specific operations
Can be stored for usage only for specific time and operations
Add Comment