I recently started to work at Princeton University as Digital Repository 
Programmer where I am working with their DataSpace/DSPACE instance, version 
1.8.2 using jspui. A couple years ago I was at Georgia tech working with 
SMARTech. Lots has changed and I am trying to get up to speed again.

>From reading DSpace 1.8 documentation I understand that CC_LICENSEs are part 
>of a items. They are meant to describe what a user can do with bitstreams.  As 
>I understand the CC_LICENSE is defined when submitting an item. It is either 
>set to the default or  to the license of the containing collection. Setting
webui.licence_bundle.show = true
changes the ItemTag display a bit. It appears that only admin users can then 
download bistreams.

Stepping back:  Our DSPACE instances has a community with collections which 
contain senior theses documents. Access to these is supposed to be restricted 
to University members and site visitors should be made very aware of what they 
can and can not do with these files: aka read, print, but do not share with 
outsiders.

For access restriction I am envisioning using IPAuthentication. I understand 
that I need to enter our specific values in  
dspace/config/modules/authentication-ip.cfg file. I am envisioning a stack, 
where first our custom authentication code is tried, then IP Authentication, 
and then the Anonymous user is ‘authorized’.  How do I tie a pseudo user 
account to IP authentication ?

We would like to make site users explicitly agree to our custom license when 
they download a bitstream from a senior theses collection. Ideally  DSPACE 
should remember that agreement acceptance for a specified duration. Looking at 
the code I came up with the following plan:


  *   use collection’s CC_LICENSE to define the license agreement to be shown
  *   change BitstreamServlet:DSGet method such that
     *   if item’s collection is not listed in in webui.confirm-license. 
collections  setting do as before
     *   else:
        *   if session contains a time stamp for the given collection that is 
within webui.confirm-license-aftermin do as before
        *   else redirect to /agreement with bitstream parameter
  *   add AgreemntServlet (is that what it would be - I am not much of JSP 
developer)
     *   DSGet:  display a custom jsp page that shows the agreement and a 
‘Cancel’, ‘Accept’ button, ‘Cancel’ just navigates back and Accept triggers 
POST /agreement with bitstream param
     *   DSPost:  sets agreement time stamp for community and  redirects to 
/bistream/….

So now - in theory this seems not a huge project. In practice, as I said I am 
not much of JSP/Servlet developer. How are redirects done for example - I have 
no idea. Maybe instead, I should go ahead and try to hack something up based in 
Javascript and cookies - which would involve exposing the bitstream url in the 
html page. Since there would be no changes server side a skilled user could 
peel that bitstream out of the HTML and just go ahead and download. So not 
quite as good a solution.

I’d appreciate some feedback in terms whether my general approach is sound and 
the effort that might be involved. At the moment: I still do not actually have 
a satisfactory development environment setup.

Thanks

Monika

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
DSpace-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-tech
List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette

Reply via email to