Suggestion: Support for Self-Hosted Handle.NET Server as PID Provider
Feature Request: Support for Self-Hosted Handle.NET Server as PID Provider
Overview of the Suggestion
Introduce full support for an institution-run ©Handle.NET server (self-hosted) as a configurable PID provider in Dataverse. This includes configuring base URL, authentication key/privileges, index/authority mapping, and monitoring/logging of PID-creation operations.
What kind of user is the suggestion intended for?
System Administrator / DevOps engineer of a self-hosted Dataverse installation who requires full control of the PID infrastructure and must meet institutional, compliance or network/ security requirements.
What inspired this idea?
- Earlier versions of Dataverse documented support for independent Handle.NET services.
- Institutions may wish to run their own PID service (e.g., for data sovereignty, auditability, custom workflows) rather than relying on third-party or shared providers.
- The current documentation/configuration may not clearly support this scenario in all deployment models (especially containerised/Kubernetes setups).
What existing behavior do you want changed?
- Provide clear and comprehensive configuration to enable a self-hosted Handle.NET service (including base URL override, full key/auth file configuration, handle prefix/authority settings, and disable fallback to external/global handle registry if desired).
- Ensure the deployment path (Docker image, Helm values, environment variables) supports injecting these values and verifying usage of the custom service.
- Improve logging/monitoring so that it is evident which PID provider is used and whether registrations went to the custom service or external.
- Possibly remove implicit dependencies on external services or “global registry” for Handle where not required.
Any brand new behavior do you want to add to Dataverse?
- A new config section (for example in
dataverse.inior via ENV/Helm values) such as:handle.provider = own handle.baseUrl = https://handle.my-university.edu/ handle.keyFile = /etc/dataverse/handle/admpriv.bin handle.keyPassphraseEnv = HANDLE_PRIV_PASSPHRASE handle.index = 300 handle.independentService = true handle.authorityPrefix = 12345 - On application startup: perform a self-check connecting to the custom Handle server, verify authentication and index access, log result (INFO or WARN).
- Add an Admin UI page (or CLI query) displaying “Active PID Provider: Handle.NET (custom)” and recent registration/resolution stats.
- Backwards-compatible fallback: if no custom Handle service configured, continue to use existing default provider model.
Any open or closed issues related to this suggestion?
None found that exactly match “self-hosted Handle.NET server support” as a feature request. PID-provider documentation exists, but this specific scenario is not clearly addressed.
Are you thinking about creating a pull request for this issue?
Not at this time, but I would be willing at a later point.
Related:
- #4106
- #10234
- dataverse.spi.pidproviders.directory - https://guides.dataverse.org/en/6.8/installation/config.html#dataverse-spi-pidproviders-directory