README.txt
September 29, 2010 · View on GitHub
This application allows one to run the foaf+ssl protocol in XWiki. For more on foaf+ssl see: http://esw.w3.org/topic/foaf+ssl For more on XWiki see: http://www.xwiki.org/
Currently the code only allows users to create X509 certificates with their WebId, and adds the information to their profile in rdfa. A later module will also enable foaf+ssl authentication in XWiki.
To add the functionality to XWiki do the following. XWIKI_HOME refers to the location of your xwiki installation
-
compile the source with
#If you wish to deploy to jdk1.6 you may change the org.bouncycastle library in the foafssl-component/pom.xml
THIS mvn dependency:copy-dependencies
-
to install the foafssl components
XWIKI_HOME/webapps/xwiki/WEB-INF/lib XWIKI_LIB/ XWIKI_LIB/
- Install the xar
-
start xwiki
XWIKI_HOME $ ./start_xwiki.sh
call ${yourhost} the name of the host on which you are running this instance of xwiki
-
In your web browser go to
http://${yourhost}/xwiki/bin/import/XWiki/XWikiPreferences
-
press Install
-
select the file on your file system
$THIS/foafssl-application/target/foafssl-application.xar
-
click on the available package that was just imported. It is a hyperlink. When clicked the package contents appear to the right. Click the IMPORT button
The documents installed are the following:
+ WebId.RSAPubKeyClass
This is a class that keeps information locally about
user's installed certificates
+ WebId.CreateCert :
You can use this to create a certificate and test the
installed components, as well as the form results between
the browser and this cgi
+ WebId.XWikiUserProfileSheet:
This is an rdfa marked up copy of the normal Xwiki Profile Sheet
that published the user's public key at his WebId in rdf, and
also that allows a user to create a new certificate
4. Change the User's Profile template so that they display RDFa
Until this is integrated more closely into XWiki it is easiest to do this
by using the WebId version of XWikiUserProfileSheet
- Edit XWiki.XWikiUserSheet so that the call to XWiki.XWikiUserProfileSheet is replaced by WebId.XWikiUserProfileSheet
This way, it is easy to switch back in case of a problem.
-
Now every user profile page should allow its user to create a WebId.
-
To enable OpenId (which is now in the html) you also need to add the following lines to the Presentation section of the Preferences Panel http://${yourhost}/xwiki/bin/admin/XWiki/XWikiPreferences
#if($doc.getObject("XWiki.XWikiUsers"))
#end- TODO: Tie in WebId.XWikiUserSheet into the page rendering process. (this just adds the icon as a foaf:logo to the page )
8 to get the RDFa DOCTYPE edit /xwiki/bin/view/XWiki/DefaultSkin and add to the htmlheader.vm
TODO this should be more specific
#if("!request.noDoctype" != "true") #if(doc.getObject("XWiki.XWikiUsers")) ##RDFa doctype
#else
#end #end