Business Requirement
...
In order to enable different types of access, SB will support configurations that can make the datasets ‘PUBLIC’ or ‘PRIVATE’ - as the adopter may choose - this will determine whether a dataset can be accessed publicly using the API without any additional authorisation, or whether it needs additional approval from admins for access.
...
Current Implementation
Currently, Sunbird Observation supports Reports Service API to list and access all published reports. However, only metadata of a report is accessible through this API. There are associated data files that contain the detailed data of a given report. These are currently not accessible through API.
There is an internal endpoint at the portal backend layer which downloads the respective datasets from the azure reports container. This endpoint is accessible only by the logged in person(session based) having roles (REPORT_ADMIN , REPORT_VIEWER, ORG_ADMIN).
Moreover, there is a slug based validation so that they do not access other tenant’s data.
For parameterized reports, respective endpoints are injected based on the logged in user’s context.
As part of current implementation datasets cannot be accessed by non logged in person or any third party.
Supported parameters
$slug
$channel
$state
$board
Below Diagram explains the High Level Working flow on how the reports are rendered on the Portal Admin Dashboard.
...
Current Report Config Structure
Expand
title | Current Report Config |
---|
Roles which exists in Admin Dashboard workflow
Report_Admin
Report_viewer
Super_Admin - REPORT_ADMIN
Org_admin
Pages | REPORT_ADMIN <SUPER_ADMIN> | State REPORT_ADMIN | REPORT_VIEWER |
---|---|---|---|
List Page |
|
|
|
Report Detail Page |
|
|
|
...
Current Report Config Structure
Expand | ||
---|---|---|
| ||
|
...
visibility
type - varchar(10)
enum - [public, private, protected, parent]
Details - Link
accessPath
type - jsonb
Details - Link
showOnDashboard
type- boolean
Description - Whether to show/hide the report on admin dashboard.
...
Current Api Structure
...