Operations -> endpoints

Issue #1387 resolved
Roland Hedberg created an issue

The specification now defines a Federation API that supports several operations (fetch, resolve_metadata and listing).

Two more operations has been discussed (search and trust mark introspection).

Only fetch is mandatory to implement, the rest is optional to implement. Regarding the new trust mark introspection operation it would probably make sense to make it mandatory for a trust mark issuer to implement.

When it comes to the different operations it’s quite clear that they will have different needs when it comes to authentication of the operation requester. fetch anyone should be able to use, not so with for instance resolve_metadata. One could also imaging listing returning slightly different sets of data dependent on who’s asking. Which then means that the who must be authenticated.

This leads me to the conclusion that we should move from one endpoint supporting several operations to one endpoint per operation.

Using unique endpoints would also make it simple to signal which operations/endpoints an entity supports in the same way OIDC Discovery does it.

Comments (4)

  1. Torsten Lodderstedt

    I support this proposal since it allows to distinguish endpoints to offered for different purposes by different parties. For example. „fetch“ must be supported by all intermediate entities and trust anchors, whereas „trust negotiation“ in my opinion could be a good basis for (independent) federation data resolvers.

  2. Michael Jones
    • changed status to open

    There was agreement on the 10-Jan-22 to go with this approach. It is cleaner and enables discovery metadata to specify which of the operations are supported.

  3. Log in to comment