Why an open data portal for energy and utilities starts with what must stay restricted
A grid operator, utility or energy regulator that must publish network, consumption and generation data under public transparency duties can meet that need with a self-hosted CKAN portal, using the DataStore for queryable time series. The main design work sits before any installation: classifying every dataset as open, aggregated, or restricted, and keeping the portal itself outside the operational networks that run the grid. Energy differs from most open data sectors in three ways. The datasets are bulk time series, often at fine intervals across thousands of meters or substations, so the DataStore's Data API and SQL queries must be sized and tested against realistic loads rather than sample files. The publishers also run critical infrastructure. Entities registered under the NERC CIP Reliability Standards in the United States, and operators in scope of NIS2 Annex I in the EU, must protect information about BES Cyber Systems and their network layout, so a field that looks harmless in isolation, such as a substation identifier combined with capacity and location, can become a security finding. Finally, regulators may audit how data was selected and published, which means the classification decisions need a record. Start with a written data classification that names who approves each dataset class, which fields are removed or aggregated before upload, and which datasets never leave the internal network. Confirm with legal counsel and your NERC or national regulator how the CIP information protection requirements apply to your asset inventory, and check whether the upload path from the internal data store to the portal is a one-way, controlled transfer. The NERC CIP standards page lists the currently enforceable standards and their dates, which should be checked before the classification is signed off.
Which NERC CIP and NIS2 obligations shape the open data portal build
This table maps each NERC CIP and NIS2 obligation that touches a utility or grid operator's open data portal to what it means for the build. Read it alongside your own CIP scope, which you must confirm with your Regional Entity before deciding which datasets can be published.
| Obligation | What it asks for | What it means for the portal build |
|---|---|---|
| NERC CIP status and enforceable dates | Thirteen CIP standards from CIP-002-5.1a to CIP-014-3 are mandatory in the US, with CIP-003-9 enforceable 1 April 2026, CIP-012-2 enforceable 1 July 2026 and CIP-015-1 enforceable 1 October 2028 (NERC) | Plan portal releases against the dates that apply to your entity, and track CIP-015-1 as a later change that may affect network data flows |
| Bright-line impact categories (CIP-002-5.1a) | BES Cyber Systems are sorted into high, medium and low impact using bright-line criteria, such as generation of 1500 MW or more at one plant | Classify each network, grid or generation dataset by its source system. Datasets derived from BES Cyber System data should be excluded from publication until reviewed |
| Electronic Security Perimeter (CIP-005-7) | Routable-connected assets of high and medium impact BES Cyber Systems must sit inside an Electronic Security Perimeter, and all Interactive Remote Access must pass through an Intermediate System with encryption and multi-factor authentication | Confirm the portal and its DataStore are not connected to in-scope assets. Publish through a one-way export or staging area rather than a live link to operational networks |
| Supply chain risk management (CIP-013-2) | Plans must cover vendor incident notification, vulnerability disclosure, software integrity verification and vendor remote access, reviewed at least every 15 calendar months | Open-source CKAN, its extensions and its hosting providers become vendors in your plan. Record component versions, verify release integrity and document how patches are received |
| Information protection (CIP-011-3) | Entities must identify and protect BES Cyber System Information, which covers sensitive system details beyond the systems themselves | Add a review step that checks published files, metadata and resource descriptions for system diagrams, IP ranges, asset names or configuration details |
| NIS2 Annex I energy coverage | Energy is a high-criticality sector, covering electricity, district heating and cooling, oil, gas and hydrogen subsectors (Directive (EU) 2022/2555) | EU operators should map the portal to their NIS2 obligations and national transposition, and confirm whether the portal is in scope as part of the wider network |
| Cross-border electricity cybersecurity (Delegated Regulation (EU) 2024/1366) | Sets sector-specific cybersecurity rules for cross-border electricity flows, supplementing Regulation (EU) 2019/943 | If the portal publishes cross-border flow data, confirm which cybersecurity rules apply to that data before it is exposed through the DataStore API |
| CIP penalty ceiling | There is no CIP certificate. Balancing Authorities, Reliability Coordinators and Transmission Operators are audited at least once every three years, with a maximum civil penalty of $1,584,648 per violation per day (18 CFR 385.1602) | A single publication error on a regulated asset can create a compliance finding. Budget review time for each dataset release and keep an audit trail of approvals |
How CIP impact ratings decide whether the portal sits in scope
The first question is not whether the portal is public, but whether any system it touches is part of a BES Cyber System under CIP-002-5.1a. That standard sorts BES Cyber Systems into high, medium and low impact using bright-line criteria. High impact mainly covers qualifying control centers, and medium impact includes, for example, generation of 1500 MW or more at one plant or transmission facilities at 500 kV or higher. A publishing portal is normally a separate business system, not a BES Cyber System itself, which is why many teams assume it is out of scope. That assumption still needs testing. The portal sits downstream of operational data, and the impact rating of the source systems determines what the boundary around them must look like.
The routable connectivity question under CIP-005-7 is where most of the risk sits. High and medium impact BES Cyber Systems with routable connectivity to other assets must sit inside an Electronic Security Perimeter, and all Interactive Remote Access must pass through an Intermediate System with encryption and multi-factor authentication. For the portal, the practical test is whether any data flow leaves an operational network toward the portal: a historian export, a database replica, a file drop or an API pull. Each such flow needs a documented boundary that states what crosses it, in which direction, and who controls the sending side. Ask the engineering team to draw every path from operational systems to the portal, including scheduled jobs and vendor tools, before the design is frozen.
Confirm the classification with your Regional Entity and internal compliance team rather than assuming the portal is out of scope. Ask them to review the impact rating of each source system, the perimeter diagram, and the list of data flows that cross it. Record their answer and the date in your compliance file, and repeat the review when the portal design or the source systems change. If the classification is unclear, the lower-risk option is usually to publish from a copy of approved, restricted-free data held outside the operational network, so that the portal never receives a live link to a BES Cyber System.
How an open data portal separates network, consumption and generation data
Network data describes the grid itself: topology, substation and line layouts, outage records and transmission capacity. It is usually the most sensitive family because detailed topology can show how a system is built, where its weak points sit and which assets matter most. Publishers often keep precise geography and asset identifiers restricted, and release only regional outage summaries, capacity figures at corridor level or planned maintenance windows that have already been communicated to the public.
- Topology and asset location: Remove substation coordinates, asset identifiers and single-line detail. Publish at feeder or zone level if at all.
- Outage records: Aggregate by region and cause category, and delay or drop entries that reveal an active vulnerability.
- Transmission capacity: Publish published or regulator-approved limits only, not operating margins that could guide an attack.
- Time series: Outage and capacity logs grow with every event. Load them into the DataStore as separate resources by year, with a read-only user for the Data API.
- Update cadence: Automate refresh only after the aggregation step is tested, so a raw feed never reaches the public resource.
Before loading any network file, confirm with your compliance team which asset classes fall under your entity's CIP scope and whether the classification has been approved.
Consumption data covers aggregated or anonymized meter and load readings. Personal data protection law applies even when meter readings look harmless, because high-resolution readings can reveal occupancy and daily routines at household level. Publishing is generally limited to aggregates large enough that no individual customer or site can be inferred, and the threshold for that should be set by your privacy and legal teams rather than by the portal team.
- Customer-level records: Never publish. Remove meter identifiers, premises addresses and account references before any file leaves the source system.
- Small-area aggregates: Suppress or merge cells where the count of contributing meters is low, applying a minimum group size agreed with privacy counsel.
- Load profiles: Publish at system, zone or postcode-district level, with interval length chosen to avoid reconstructing single sites.
- DataStore pattern: Store hourly or half-hourly aggregates as partitioned resources, and let users filter by date and area through the Data API rather than downloading raw extracts.
- Documentation: Record the aggregation method, suppression rule and release date in the dataset metadata so reuse stays reproducible.
Check whether the consumption feed also falls within CIP-011-3 information protection requirements for BES Cyber System Information, and confirm the aggregation rule with your regulator before the first publication.
Generation data includes plant output, dispatch summaries and renewable forecasts. Historical output of large plants is often public through market operators, but forecasts, availability and outage notices can reveal operational plans or unit condition. The main decision is which generation series are already public under market or regulatory rules and which are published only by the portal owner, because a re-publication does not change the original sensitivity.
- Historical plant output: Publish at fleet or technology level where unit-level output is not already public. Check market rules before releasing unit names.
- Renewable forecasts: Publish forecast accuracy and aggregated forecast series only after the forecast horizon has passed, so the feed cannot guide trading or dispatch decisions in real time.
- Availability and maintenance notices: Hold back unit-level status for assets whose loss would affect reliability, and publish only category-level summaries.
- Time series volume: Five-minute or sub-hourly output produces large tables. Use the DataStore for filtering and paging, and keep the raw files as downloadable resources for bulk users.
- Versioning: Keep each published forecast vintage in its own resource so corrections are visible rather than silently overwritten.
Confirm with your market operator and regulator which generation series they already publish, since your portal should match or follow those release rules rather than set a stricter or looser standard on its own.
Which open data portal platform fits an energy publisher and why
For a grid operator, utility or regulator, the portal is less a single product than a set of components with different maturity levels. The four cards below cover the core platform, the DataStore for large time series, the metadata exchange layer and staff login, with the limits each one brings.
CKAN core as the catalog
CKAN is licensed under AGPL-3.0, which matters if you modify the code and offer it to users over a network. The install from source needs Python 3.10 or newer, PostgreSQL 12 or newer, Solr 9 (recommended) or Solr 8, and Redis, with uWSGI and Nginx recommended for production. For an energy publisher, the check is operational: CKAN minor releases can include backwards-incompatible changes, so plan upgrades as projects, and confirm which patch line your team will track, since outdated patch releases lose support once a newer patch is out.
DataStore and XLoader for time series
The DataStore keeps structured resource data in a separate PostgreSQL database with a write user and a read-only user, and its Data API supports filtering, full-text search, pagination and SQL queries. This suits published consumption or generation series that analysts query directly. Use XLoader, not DataPusher, because DataPusher is now legacy. Confirm with your team how large files will be loaded, how long a load takes at your volumes, and whether the read-only role is the only path external users can reach.
ckanext-dcat for regulator exchange
ckanext-dcat provides DCAT-AP v1, v2 and v3 schemas, DCAT RDF endpoints and an RDF harvester, so regulators and national catalogs can pull your metadata without manual copying. The limit is version fit: the extension is supported on CKAN 2.10 and 2.11, so confirm in writing that the version you choose, including CKAN 2.12.0, is compatible with the exact ckanext-dcat release and schema profile your regulator requires before you commit to a design.
ckanext-saml2auth for staff login
Publishing staff at a utility or regulator usually sign in through the organization's existing identity provider, and ckanext-saml2auth adds SAML-based login to CKAN so that accounts and roles can follow your directory rules. Check which SAML profile your identity provider uses, how group membership maps to CKAN organizations, and how accounts are removed when staff leave. Confirm compatibility with your CKAN version before you plan the rollout, because extension support does not follow the CKAN release calendar.
Integration points and deployment pattern for an energy open data portal
An energy open data portal sits between operational systems and the public, so each integration point is also a boundary the security team must approve. The cards below cover the data flows into and out of CKAN, the identity and monitoring around it, and the environment and network placement that the NERC CIP obligations will test.
One-way export from operational data
Publishing should run as a scheduled export from a historian or data warehouse that sits outside the operational technology network, never as a direct query from control systems. The export job should apply the open versus restricted classification before anything is written to staging. Confirm who owns the export job, how it is reviewed, and whether a failed run leaves the previously published files in place. Document the data flow so it can be shown in a CIP-005 or CIP-013 review.
XLoader loading into the DataStore
XLoader is the officially supported tool for loading uploaded or linked files into the CKAN DataStore, and DataPusher is now legacy, so new builds should start from XLoader. Large consumption and generation time series land in a separate PostgreSQL database that exposes a read-only user to the Data API. Confirm file size limits, load time for the largest expected files, and how reloads are handled when a historical file is corrected.
Scheduled metadata updates
Dataset metadata, such as coverage periods, update frequency and resource descriptions, should be changed through the same scheduled pipeline as the data rather than edited by hand in the interface. Automated updates keep the catalog accurate when a new monthly file arrives and create an audit trail of who or what changed a record. Confirm which fields the pipeline may write, which require human approval, and how a rollback is performed.
DCAT harvesting and publication
National and EU catalogs expect DCAT metadata, and ckanext-dcat provides DCAT-AP v1, v2 and v3 schemas, RDF endpoints and an RDF harvester. Confirm which DCAT-AP version and national profile your regulator or aggregator requires, because mapping differences cause rejected records. Also confirm the extension version against the CKAN release in use, since the supported CKAN versions are listed in its repository.
SAML single sign-on for staff
Staff who publish and approve datasets should sign in through the utility's identity provider, with local accounts reserved for break-glass use. The ckanext-saml2auth extension is one option to evaluate, and its maintenance status, supported CKAN versions and attribute mapping for roles must be confirmed before adoption. Confirm how deprovisioning works when an employee leaves, because a dormant publishing account is a standing risk on a public-facing system.
Logging and monitoring of the portal
Web server, application, DataStore and file upload logs should flow to the entity's central monitoring platform, so that publication events, failed loads and unusual access patterns are visible to the security operations team. Confirm log retention, who can read logs that contain user identifiers, and whether alerts map to the entity's incident response process. Keep the portal's own monitoring separate from control system monitoring to avoid widening the scope of the CIP program.
Production and staging separation
Run production and staging as separate CKAN instances, each with its own PostgreSQL, Solr and Redis services, so that test loads and schema changes never reach the public catalog. Minor CKAN releases may include backwards-incompatible changes, so staging should run the target minor version before production is upgraded. Confirm who may promote a build and how configuration differences between the two environments are recorded.
Placement and CIP-015-1 network monitoring
Place the portal in the entity's own cloud account or data center, outside the Electronic Security Perimeter that protects BES Cyber Systems, with a one-way data path into it. CIP-015-1 covers internal network security monitoring and becomes enforceable on 1 October 2028, so architects should confirm now whether portal flows and monitoring sensors fall within its scope. Ask the NERC Regional Entity and internal compliance team to confirm the classification in writing before the build is fixed.
How an open data portal rollout moves from classification to support
The sequence turns a utility's raw network, consumption and generation data into a governed, self-hosted CKAN portal where restricted data stays protected, time series stay current and the operator can run the portal after launch.
Classify datasets and confirm CIP scope
DeployOpen works with your data owners, compliance lead and OT security staff to inventory every candidate dataset and tag it as open, open with aggregation, or restricted. Each dataset is checked against your CIP scope, including whether any source system or network path touches BES Cyber Systems. The output is a classification register with a named owner, a publication decision and a reason for each dataset, signed off by your compliance lead before any build work starts.
Define the security boundary for the portal
Using the classification register, DeployOpen and your network team map which data flows leave the operational environment, where the publishing server sits and how data is moved across the boundary. Any path that could connect the portal to control networks is documented and reviewed against the CIP standards that apply to your registration. The output is an approved boundary design showing data flow direction, the staging area for publishable extracts and the controls that prevent inbound access from the portal.
Design metadata and the publishing workflow
Data stewards, publishing staff and reviewers agree on the metadata fields, licence terms, update frequency and approval steps for each dataset type, including who may publish, who may amend and how restricted datasets are withheld or reduced to aggregates. DeployOpen maps these fields to CKAN schemas and sets up roles and organizations to match your departments. The output is a metadata specification and a written publishing workflow that a reviewer can test against sample datasets.
Install CKAN and configure the DataStore
DeployOpen installs CKAN in your environment with the supporting services it requires, then configures the DataStore in its own PostgreSQL database with a write user for the loading process and a read-only user for the public Data API. Database permissions are set so the public role cannot modify tables. Loading of large time series files is configured through XLoader. The output is a working staging instance, a documented database role matrix and test loads that confirm filtering, pagination and SQL queries return the expected results.
Build automated update pipelines for time series
DeployOpen builds the jobs that extract approved data from source systems, transform it into the agreed formats, apply aggregation or suppression rules for restricted fields and push new records to the DataStore on your chosen schedule. Each run logs row counts, errors and the source timestamp so that gaps are visible to staff. Failed runs leave the previously published version in place. The output is a tested pipeline with run logs, a recovery procedure and a sample of published time series checked against the source by your data owner.
Harden the portal and test before go-live
DeployOpen applies a hardening baseline to the operating system, web server, CKAN, the database and the pipeline credentials, covering access control, patching, logging and encryption in transit. Security testing covers the public site, the Data API and the publishing interface, and results are reviewed with your security team and fixed before release. Identity for staff is integrated with your existing single sign-on where supported. The output is a hardening record, a test report with closed findings and a list of accepted residual risks signed by the system owner.
Launch and hand over to support
DeployOpen supports the production cutover, verifies publication and metadata on live datasets and runs the first update cycles with your operations staff watching. The handover covers runbooks for updates, backups, restores, CKAN upgrades and incident response, plus training for publishers and reviewers. Any ongoing support, upgrades or continuous testing are agreed separately as a retainer. The output is a signed handover pack, a live portal with an operating schedule and a named support contact for each system component.
Evidence regulators and auditors ask for from an energy open data portal
This table maps each piece of evidence a grid operator or utility might be asked to show to the requirement it supports and the component that produces it. Read it as a preparation list: DeployOpen prepares the records, while auditors and regulators make the assessment, and no CIP certificate exists.
| Evidence item | Requirement it supports | Component that produces it |
|---|---|---|
| Data classification register | CIP-002 impact categorization and CIP-011 information protection expectations for which datasets are public, restricted or excluded | Documented register maintained by the data owner, with the CKAN dataset metadata and access level as the link to each published record |
| Approval log for each publication | Evidence that a named reviewer cleared each dataset for release before it became public | CKAN activity stream and workflow records, retained with the reviewer's identity and the date of approval |
| Documented boundary between operational systems and the portal | CIP-005 electronic security perimeter scope, showing that the portal has no routable path into BES Cyber Systems | Network diagram, data flow diagram and firewall rule set maintained by the operator's security team and reviewed on a set cycle |
| DataStore role separation settings | Least-privilege access for data loading and public reads, supporting CIP-004 and CIP-007 access controls | CKAN DataStore configuration with a separate write user and a read-only user, plus the database grants applied at deployment |
| Update job logs | Evidence that scheduled publication and refresh jobs ran as designed and that failures were caught and handled | Scheduler and XLoader job logs, retained with timestamps, dataset identifiers and error records |
| CKAN version and patch history | Configuration and vulnerability management evidence showing the portal runs a supported release | Change records covering each CKAN patch and minor upgrade, checked against the CKAN release policy and the current release list |
| Access logs for staff accounts | CIP-007 and CIP-005 expectations for account monitoring, interactive remote access and multi-factor authentication where applicable | Web server, CKAN and identity provider logs, forwarded to the operator's log platform with retention set by the operator |
| Vendor and software integrity records | CIP-013-2 supply chain risk management, covering software integrity and authenticity verification and vendor-initiated remote access | Source checksums, signed package records, dependency inventory and vendor access logs, reviewed at least every 15 calendar months |
Questions to ask an open data portal implementation partner in energy
Ask the partner first how it decides which of your datasets fall under CIP scope and how it classifies them before anything is published. A utility or regulator should expect the partner to walk through a written data classification that marks each network, consumption or generation dataset as open, restricted or excluded, with the reason tied to CIP-011-3 on information protection and to your own asset registry. Ask who signs off each classification, how a dataset is reclassified after a grid change, and whether the partner will show a sample of a rejected dataset. A partner that cannot name the decision owner on your side is likely to leave the boundary to chance, and the cost of a wrong call is a published asset map that an adversary can use. Confirm with your compliance team which CIP standards apply to your registration, since the NERC CIP page lists the current enforceable set.
Ask how the partner will document the boundary between the portal and your operational systems. The answer should include a diagram of network zones, the direction of every data flow, and the controls at each crossing, including whether any routable connection sits inside an Electronic Security Perimeter as CIP-005-7 requires. Ask for the vendor supply chain plan that covers the portal's software, including how CIP-013-2 incident notification, vulnerability disclosure and software integrity checks will be handled for each component, and how often that plan is reviewed. Also ask how the partner verifies that the DataStore read-only user cannot write to the write-user schema, and how it tests the public Data API under large queries, such as multi-year interval data, with pagination and time limits set. Request the test scripts and results, not only a summary. Finally, ask which CKAN minor and patch release the partner will pin, how it applies patches within the support window described in the CKAN release policy, and how it verifies the source of each Python and Solr dependency. Ask for the fixed scope in writing, with named deliverables, acceptance tests and the support and upgrade terms that apply after go-live, including who patches the portal and how quickly a security fix is applied.
Open data portal questions energy teams ask before hiring help
What drives the cost and effort of an energy open data portal build?
The biggest drivers are how many datasets need classification, how many feeds must be automated, and how much of the work is new integration versus configuration. Each line item has a different payer: your staff time for data owners and legal review, the implementation partner for scoped build work, and your own infrastructure for hosting. Most of the effort is one-time (classification, metadata mapping, DataStore loading and automation design), while patching, monitoring and retainer support recur. Ask any partner for a quote that separates these lines and states which datasets, feeds and environments are in scope, because a fixed scope is the basis for a comparable price.
How long does an energy open data portal rollout take, and what sets that timing?
The timing is set mostly by how fast your organization can decide what is open and what is restricted, not by the software install. Dataset classification, legal review of network and critical infrastructure data, and sign-off on update schedules often take longer than the technical setup. Other factors include whether the portal must be hosted inside an existing security perimeter, how many source systems feed the DataStore, and how much history must be loaded. Ask a partner to tie the schedule to named milestones in the written scope, and confirm which of your reviews sit on the critical path.
What does the work need from our own staff?
Your staff must make decisions that no implementer can make for you. You need data owners who can say which fields in network, consumption and generation datasets are public, aggregated, or restricted, and a security owner who can approve hosting, access accounts and the network path to the portal. Operations staff must own the update feeds and the on-call contact for failures. Plan for these people to be available during classification, design review and acceptance testing, and ask the partner to list the exact roles, approvals and review cycles it expects from you before work starts.
Can an internal team build an energy open data portal without a partner?
An internal team can build a CKAN portal if it has Python, PostgreSQL, Solr, Redis and web server skills, and enough time to keep the system patched. The harder parts are usually the ones outside the software: classifying restricted data, designing DataStore access for large time series, automating updates safely, and producing evidence for a regulator or auditor. Consider whether your team will still have those skills after launch. A partner can take on a fixed-scope part of the work, such as installation, integration or hardening, while your staff keep ownership of data decisions and operations.
Does the open data portal itself have to meet NERC CIP requirements?
It depends on whether the portal is a BES Cyber System or is connected to one, and that determination belongs to your compliance team with NERC and your Regional Entity. The portal is often separate from operational technology, but a feed or connection to control-system data can bring it into scope. NERC lists 13 CIP standards as mandatory and enforceable in the United States as of October 17, 2026, and the maximum civil penalty is $1,584,648 per violation per day under 18 CFR 385.1602. Ask your compliance lead to document the scoping decision before design starts, and confirm the impact categorization under CIP-002-5.1a with your registered entity.
How do we keep a CKAN portal patched after launch?
Patching is a recurring obligation, so budget for it as a service rather than a one-off task. CKAN targets about two minor releases a year, and the project supports the latest patch of the current minor version and the previous minor version. Outdated patch releases lose support once a newer patch is out, and CKAN patch releases do not include schema changes or new features, while minor releases can include backwards-incompatible changes. Agree on a schedule for testing and applying patches in a non-production environment, and check the CKAN release policy and the current release notes before each cycle. Support and upgrades can be covered by a retainer.
Which parts of the energy portal need security review beyond the public website?
Review the data path, not only the public front end. The DataStore keeps a separate write user and a read-only user, so access roles, database credentials and the Data API endpoints should each be reviewed. Update automation that pulls from operational systems needs its own credentials, logging and failure alerts. Ask your security team to review how the portal is hosted, which networks can reach the update jobs, and how identity is integrated for staff accounts. Also confirm whether NERC CIP-013-2 supply chain requirements apply to any vendor who touches your systems, including an implementation partner.
How DeployOpen scopes and builds an energy open data portal
DeployOpen is a Chainscore Labs company that plans, implements, customizes, hardens, documents and supports self-hosted open-source platforms inside the client's own infrastructure. For an energy open data portal, that means a CKAN deployment in your cloud account, data center or air-gapped network, with a written scope that separates publishable datasets from restricted operational data before any publishing begins.
How we scope
- Inventory every network, consumption and generation dataset and classify each as open, restricted or withheld before choosing a publishing model.
- Map which datasets fall under NERC CIP obligations, so critical infrastructure data is reviewed with your compliance and security owners first.
- Agree in writing which DataStore resources, API endpoints, harvesters and update jobs are in scope, along with acceptance criteria.
How we build
- Install CKAN with its PostgreSQL, Solr, Redis and web tier in your environment, with the DataStore's separate read-only user configured from the start.
- Configure XLoader for large time-series loads and test the Data API with filtering, pagination and SQL queries against realistic file sizes.
- Set up scheduled update automation, access roles and, where needed, DCAT metadata output, then test each path before go-live.
How we hand over
- Document the architecture, network boundaries, data classification rules, publishing workflow and update jobs for your operations and compliance teams.
- Deliver runbooks for backups, restores, patching and CKAN release upgrades, so your staff can operate the portal without outside help.
- Provide evidence packs listing configuration, access controls and test results to support your own compliance assessments, which independent auditors perform.
How we support
- Offer ongoing support, upgrades and continuous testing as a retainer, scoped separately from the initial fixed-scope build.
- Track CKAN minor and patch releases against the project's support policy and plan upgrades within your change control windows.
- Run security testing of the portal's applications, APIs and infrastructure on a schedule agreed with your security team.

