History | Log In     View a printable version of the current page. Get help!  
Issue Details [XML]

Key: SES-719
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Jeen Broekstra
Reporter: Johann Petrak
Votes: 0
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Sesame

Unable to use the workbench when the repository is password-protected on the server

Created: 10/Aug/10 06:07 PM   Updated: 18/Jan/12 07:33 AM
Component/s: Web interface
Affects Version/s: 2.3.2
Fix Version/s: 2.6.4


 Description   
I have deployed openrdf-workbench and openrdf-sesame both on a tomcat server using basic auth password protection. I get prompted for userid and password to show the workbench or the openrdf-sesame start page, that works fine.

However when I try to work with the openrdf-sesame component in the openrdf-workbench, the URL is not accepted and the error message "Invalid server URL" is always shown.

I tried these four versions of the URL (the workbench is on http://my.server.com:8080/openrdf-workbench)
* http://my.server.com:8080/openrdf-sesame
* http://user:pass@my.server.com:8080/openrdf-sesame
* http://localhost:8080/openrdf-sesame
* http://use:pass@localhost:8080/openrdf-sesame

The logs show the error message: "java.io.IOException: Server returned HTTP response code: 401 for URL: <theURL>" for all those.
If there is a way to do this correctly I could not find it in the documentation.



 All   Comments   Change History      Sort Order:
Comment by Luciano Blasetti [03/Jan/12 05:54 PM]
As workaround I succesfully did the following:

- Install somewhere (preferibly on your local pc for a better security) an apache http web server (e.g. installing it from Xampp)

- Configure the following Proxy rule replacing the encoded string with the user-id+password combination used for the basic authentication, and the http://myserver... with the URL of the actual installation
of the protected openrdf-sesame.war
(see http://en.wikipedia.org/wiki/Basic_access_authentication for a description of the encoding mechanism).
e.g.:
<Location /openrdf-sesame>
    RewriteEngine on
    RequestHeader append Authorization "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=="
    ProxyPass http://myserver:8080/openrdf-sesame
    ProxyPassReverse http://myserver:8080/openrdf-sesame
</Location>

- unpack openrdf-workbench and change the init-param "default-server" pointing to the proxied url above described (in the example we assume a default apache installation listening on the port 80)
  <init-param>
<param-name>default-server</param-name>
<param-value>http://localhost/openrdf-sesame&lt;/param-value>
</init-param>

- deploy the modified version of openrdf-workbench on a local app-server instance