Service providers should generate a WebID profile for the pod server [Implementation Guidance]
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 563
- Forks
- 108
- Avg merge
- 4d 13h
- Merged PRs (30d)
- 3
Description
Proposal: Pod server implementors (and hosting providers) should be encouraged to have the server itself generate a WebID profile, with key material, during server setup.
Server key generation is already required by the WebID-OIDC authentication spec (identity providers use those keys to sign tokens and credentials). (Example: https://solid.community/jwks)
This issue proposes to specify what a WebID Profile would look like for a Solid pod server instance (such as solid.community). The profile can include things like:
- The server's WebID
- Server name, description, version and other metadata
- Links to Terms of Service
- Cryptographic key material (such as that currently contained in the
/jwksdocument), for signing and encryption - A list of WebIDs of persons or organizations acting as controllers/administrators of the server
This would enable:
- The use of cryptographic signatures to support Server-protected metadata. (Once the server has its own WebID and signing keys, it can digitally sign/integrity protect arbitrary RDF documents, such as server-side
.metaresources). - Server-to-server authentication (for when pods need to formally communicate with each other)
- Bringing of the OIDC-dictated public keys into the Linked Data realm (for the purposes of querying / reasoning etc).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the WebID-OIDC authentication spec and the current /jwks document first, then compare the linked server-protected metadata and cryptography issues. Define the server WebID profile’s metadata, key material, controller relationships, and relevant links; done means the profile structure and its intended uses are specified clearly.
Written by the indexing model from the issue text.
Assessment
- Domain
- authentication, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100