I'm starting this thread so that Andy and I can discuss design
questions on the new Fuseki UI. Contributions and comments from
everyone welcome! We'll try to record actual design decisions on
Jena-420 [1].

OK, first issue: currently, we have the notion that the management
capability should be available as a separate endpoint, serving JSON.
This is so that both the new UI, and also command-line scripts and
build automation tools can drive the Fuseki management functions. At
present, the defaults are:

* normal access to Fuseki (queries, etc) on port 3030
* management access (updates, dataset revision, config) on port 3131

I just tripped over the fact that Javascript served in a page from
http://host:3030 can't access the API at http://host:3131 unless a
cross-domain policy is added to host:3131. And even then we will have
problems with Internet Explorer pre- version 10 and CORS, though there
are workarounds for this.

An alternative is to put the management API on a path on host:3030(*)
that is unlikely to be the name of an actual dataset, for example '$'
or '_mgmt'. One consideration is that we anticipate users wanting to
have different access control rules for the query and admin
interfaces, so that e.g. adding and deleting datasets requires
password access. I don't know enough about Java web containers, or
using Apache/nginx as a front-end proxy to a web container, to know
whether one or other of these choices would be easier to administer
from an access & authorisation point-of-view.

Ian


[1] https://issues.apache.org/jira/browse/JENA-420

(*) or whichever port Fuseki is running on

Reply via email to