<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.eprints.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=J.beaman%40leeds.ac.uk</id>
	<title>EPrints Documentation - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.eprints.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=J.beaman%40leeds.ac.uk"/>
	<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/Special:Contributions/J.beaman@leeds.ac.uk"/>
	<updated>2026-05-27T09:13:13Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.8</generator>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=Community_Contributions_Day_November_2015&amp;diff=11885</id>
		<title>Community Contributions Day November 2015</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=Community_Contributions_Day_November_2015&amp;diff=11885"/>
		<updated>2015-11-19T15:24:24Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Group 2: Technical */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page has been created in the run-up to the EPrints Community Contributions day on November 18th, 2015&lt;br /&gt;
&lt;br /&gt;
== Objectives ==&lt;br /&gt;
&lt;br /&gt;
This event is intended to bring the all parts of the EPrints community together to improve the software and documentation.  We hope to achieve:&lt;br /&gt;
&lt;br /&gt;
* code improvements&lt;br /&gt;
* wiki curation&lt;br /&gt;
* training and demonstration videos&lt;br /&gt;
* community members interacting and training each other&lt;br /&gt;
&lt;br /&gt;
== Event Run Up ==&lt;br /&gt;
&lt;br /&gt;
Things for participants to do before the event:&lt;br /&gt;
&lt;br /&gt;
* Register for the Wiki via the EPrints LDAP server at [http://trac.eprints.org/ldap/ http://trac.eprints.org/ldap/]&lt;br /&gt;
* If you have an a suggestion for an interest group, add it below&lt;br /&gt;
* Please add your name to an interest group that looks interesting (see [[Training_Video:EPrints_Wiki_Basics]] for how to edit the wiki)&lt;br /&gt;
&lt;br /&gt;
== On the Day ==&lt;br /&gt;
&lt;br /&gt;
=== Jumping In ===&lt;br /&gt;
&lt;br /&gt;
So, you have time to contribute and need to know how to get started.  Here are your options:&lt;br /&gt;
&lt;br /&gt;
* Pick an interest group below, and join it&lt;br /&gt;
* If you don't know how to join, contact one of the event organisers&lt;br /&gt;
** Adam Field&lt;br /&gt;
*** @gobfrey on twitter&lt;br /&gt;
*** af05v@ecs.soton.ac.uk&lt;br /&gt;
** Valerie McCutcheon&lt;br /&gt;
***valerie.mccutcheon@glasgow.ac.uk&lt;br /&gt;
*** 0141-330-2674&lt;br /&gt;
** Rachel Proudfoot&lt;br /&gt;
*** 0113 343 4554&lt;br /&gt;
&lt;br /&gt;
=== Interest Groups ===&lt;br /&gt;
&lt;br /&gt;
Any contribution that can be made is welcome, whether it's a minor edit to a wiki page or a bugfix.  However, it may be profitable to run a number of discussion groups in the morning around areas of interest.  These discussion groups can then set up work to be accomplished in the afternoon.&lt;br /&gt;
&lt;br /&gt;
* 10:00 - 11:00 Interest groups meet (skype, google hangout?), make decisions and assign tasks&lt;br /&gt;
** What problem are we solving?&lt;br /&gt;
** How will we work?&lt;br /&gt;
** What communication platform will we use? Skype, Google Hangouts, Google Docs, EMail?&lt;br /&gt;
** Who will do what?&lt;br /&gt;
* 11:00 - 13:00 Morning Contributions&lt;br /&gt;
* 14:00 - 16:00 Afternoon Contributions&lt;br /&gt;
* 16:00 - 16:30 Interest groups wrap-up and reporting.&lt;br /&gt;
&lt;br /&gt;
Each interest group should have a leader who is responsible for chairing the initial meeting, making sure the logistics run smoothly and creating some kind of record of the day (blog post, wiki page, etc).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Group 1: Community Training Course ====&lt;br /&gt;
&lt;br /&gt;
We're coordinating via a [https://docs.google.com/document/d/1CPegvGl9BO45E4ye5_Bpk7e3kurc_spEL3OcmGcUZyA/edit?usp=sharing Google Doc]&lt;br /&gt;
&lt;br /&gt;
This interest group is concerned with the wiki page at http://wiki.eprints.org/w/EPrints_Training_Course.&lt;br /&gt;
&lt;br /&gt;
Areas of Discussion&lt;br /&gt;
* Standard layout and content for training video pages&lt;br /&gt;
* Content of the training course&lt;br /&gt;
* Production of new content&lt;br /&gt;
* Linking to other wiki pages&lt;br /&gt;
&lt;br /&gt;
Members:&lt;br /&gt;
* Adam Field (willing to lead the group)&lt;br /&gt;
* Alan Stiles (alternatively contributing to Group 2)&lt;br /&gt;
* Lizz Jennings (likely to switch between this and Group 2)&lt;br /&gt;
* Mick Eadie&lt;br /&gt;
* George Mamalakis (may also help in some bug reports in Group 2 and also help in creating some Bazaar packages we've already started)&lt;br /&gt;
&lt;br /&gt;
==== Group 2: Technical ====&lt;br /&gt;
&lt;br /&gt;
This interest group will be looking at Github, folding in pull requests and evaluating bugs.&lt;br /&gt;
&lt;br /&gt;
Get on the google hangout now [https://hangouts.google.com/call/md4isxlevojprl6n3vpp2c3dtua https://hangouts.google.com/call/md4isxlevojprl6n3vpp2c3dtua]&lt;br /&gt;
&lt;br /&gt;
Topics of Discussion&lt;br /&gt;
* Vagrant build - see: https://github.com/eprintsug/eprints-vagrant (Good work! EP-Kudos and a cream bun to Robert Doiel!)&lt;br /&gt;
* Categorisation of issues: https://github.com/eprints/eprints/issues&lt;br /&gt;
* Building a [[How to build a development environment from source control]]&lt;br /&gt;
* Having built an EPrints from source the Unit tests do not all pass...&lt;br /&gt;
&lt;br /&gt;
Members&lt;br /&gt;
* Jiadi Yao&lt;br /&gt;
* Alan Stiles (alternative contributing to Group 1)&lt;br /&gt;
* Lizz Jennings (likely to switch between this and Group 1)&lt;br /&gt;
* Mick Eadie&lt;br /&gt;
* Patrick McSweeney (will lead the session ;o)&lt;br /&gt;
* John Salter (will assist with the leading of the session)&lt;br /&gt;
* John Beaman&lt;br /&gt;
&lt;br /&gt;
==== Group 3: Community Contributions, Best Practices and Processes ====&lt;br /&gt;
&lt;br /&gt;
This group will look at how barriers to community contributions (at all levels) can be lowered and community engagement can be promoted. We'll also look at community best practices and processes in EPrints. '''If you don't make the 10 o'clock meeting, don't worry, just come and join us at the Google Doc below.'''&lt;br /&gt;
&lt;br /&gt;
Members&lt;br /&gt;
&lt;br /&gt;
* Rachel Proudfoot - skype 'rachel_proudfoot'&lt;br /&gt;
* Valerie McCutcheon -skype 'mccutchv'&lt;br /&gt;
* Les Carr&lt;br /&gt;
* Adam Field (in and out, mainly in group 1)&lt;br /&gt;
&lt;br /&gt;
'''Working Document (Google doc)'''&lt;br /&gt;
* [https://docs.google.com/document/d/1YYqeB0r5S8A9rYO9UZN-SoQLBLb2B7WQuP_WW3EKXEU/edit?usp=sharing Group 3 Capture document] - if you can't edit it, contact Rachel or Valerie&lt;br /&gt;
&lt;br /&gt;
Possible subtopics - what do users want? &lt;br /&gt;
&lt;br /&gt;
* User friendly topic guide on wiki&lt;br /&gt;
* reliable version information (cf. [[Required_software]]) incl. wiki update&lt;br /&gt;
* Impact&lt;br /&gt;
* Open Access - drafting community requirements for a standard functionality in EPrints.&lt;br /&gt;
&lt;br /&gt;
=== Independent Contribution ===&lt;br /&gt;
&lt;br /&gt;
Participants are encouraged to join an interest group, but have the option of working independently on their own pet project or objective.  Please put your name in the members list below, with a brief description of what you will be progressing.&lt;br /&gt;
&lt;br /&gt;
Members:&lt;br /&gt;
&lt;br /&gt;
* Luke Skywalker (I'll be researching the Force)&lt;br /&gt;
&lt;br /&gt;
=== Logistics ===&lt;br /&gt;
&lt;br /&gt;
Each interest group should decide on the appropriate platform to use for communications and coordination.&lt;br /&gt;
&lt;br /&gt;
== Post Event ==&lt;br /&gt;
&lt;br /&gt;
It would be appreciated if each team could produce a write-up of the days activities for the benefit of future events and to show the value of the day.  It should be no more than 400 words and a bulleted list of outcomes.  Feel free to post these on any blog or platform you wish, but Adam Field would quite like to gather them all together in a blog post about the day.&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11101</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11101"/>
		<updated>2015-01-12T17:48:53Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AccessControl}}&lt;br /&gt;
John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed together&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11093</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11093"/>
		<updated>2015-01-09T14:59:12Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* ACL Objects */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed together&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11092</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11092"/>
		<updated>2015-01-09T14:07:57Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11091</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11091"/>
		<updated>2015-01-09T14:07:27Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11087</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11087"/>
		<updated>2015-01-09T10:26:18Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Modular Design */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11086</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11086"/>
		<updated>2015-01-09T10:25:27Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* ACL Objects */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authentication (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=ACL_Role,_ACL_Group_and_ACL_Authority_technical_details&amp;diff=11085</id>
		<title>ACL Role, ACL Group and ACL Authority technical details</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=ACL_Role,_ACL_Group_and_ACL_Authority_technical_details&amp;diff=11085"/>
		<updated>2015-01-09T10:12:29Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* ACL_Roles */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{AccessControl}}&lt;br /&gt;
&lt;br /&gt;
==ACL_Roles==&lt;br /&gt;
* Fields&lt;br /&gt;
** ID&lt;br /&gt;
** ACL_Authority (e.g. LDAP; IP address; EPrintsUser)&lt;br /&gt;
** Role title&lt;br /&gt;
** Role description&lt;br /&gt;
** Filter (e.g. member of a specific LDAP group; EPrintsUser type = editor)&lt;br /&gt;
&lt;br /&gt;
==ACL_Groups==&lt;br /&gt;
* Fields&lt;br /&gt;
** ID&lt;br /&gt;
** Group name&lt;br /&gt;
** Group description&lt;br /&gt;
** ACL_Roles&lt;br /&gt;
** Role combination (AND / OR)&lt;br /&gt;
&lt;br /&gt;
==ACL_Authority==&lt;br /&gt;
A perl class that provides a framework to interface with authentication methods.&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11084</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11084"/>
		<updated>2015-01-08T17:40:08Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11083</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11083"/>
		<updated>2015-01-08T17:39:37Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Document-level landing pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Partly born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11082</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11082"/>
		<updated>2015-01-08T17:36:00Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11081</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11081"/>
		<updated>2015-01-08T17:35:03Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11080</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11080"/>
		<updated>2015-01-08T17:34:34Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11079</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11079"/>
		<updated>2015-01-08T17:31:57Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Modular Design */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately&lt;br /&gt;
*These modules can simply be 'dropped in' to the existing framework as required&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11078</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11078"/>
		<updated>2015-01-08T17:29:19Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* The horrors (and the solutions) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
===The horrors (and the solutions)===&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11077</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11077"/>
		<updated>2015-01-08T17:29:12Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Request vs User */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
===Request vs User===&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11076</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11076"/>
		<updated>2015-01-08T17:29:05Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Document-level landing pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
===Document-level landing pages===&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11075</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11075"/>
		<updated>2015-01-08T17:28:57Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Summary Page citation style */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
===Summary Page citation style===&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11074</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11074"/>
		<updated>2015-01-08T17:28:49Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* ACL Objects */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
===ACL Objects===&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11073</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11073"/>
		<updated>2015-01-08T17:28:04Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Dealing with rejection */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
===Dealing with rejection===&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
==ACL Objects==&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11072</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11072"/>
		<updated>2015-01-08T17:27:11Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* EPACL: EPrints Access Control Layer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
===Modular Design===&lt;br /&gt;
*Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
*Will be available as a standard EPrints Plugin (EPM package) via the EPrints Bazaar&lt;br /&gt;
*ACL Authority modules governing different methods of Authorisation and Authentication (see later) can be developed separately and simply 'dropped in' to the existing framework&lt;br /&gt;
&lt;br /&gt;
==Dealing with rejection==&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
==ACL Objects==&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11071</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11071"/>
		<updated>2015-01-08T17:18:19Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes (e.g. signed-in via Shibboleth)&lt;br /&gt;
** Location / IP address (e.g. on-campus)&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
* Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Dealing with rejection==&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
==ACL Objects==&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11070</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11070"/>
		<updated>2015-01-08T17:17:42Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Requirements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes e.g. signed-in via Shibboleth&lt;br /&gt;
** Location / IP address e.g. on-campus&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
* Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Dealing with rejection==&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
==ACL Objects==&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==The horrors (and the solutions)==&lt;br /&gt;
&lt;br /&gt;
*The out-of-the-box document security is deep within EPrints (we learnt about doing some really cranky Perl-fu)&lt;br /&gt;
*Documents don't use the SummaryPage - again this is deep in the code (we learnt lots about Eprints Triggers)&lt;br /&gt;
*Apache 2.2 and 2.4 differ in the way they handle IP addresses (Seb did some patching of EPrints code - but this hasn't been released - may be in 3.3.13?)&lt;br /&gt;
*All sorts of crazy inheritance complexities&lt;br /&gt;
*EPrints doesn't use 'sessions' in the same way as most other web software. Sessions are only created when a user logs in (we think user accounts need to be automatically created - is this right? It would be useful for tracking re-use)&lt;br /&gt;
*EPrints documentation is *ahem* offering room for improvement */ahem*...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources: login screen with multiple routes (tabs) / LDAP as additional route rather than default route&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;br /&gt;
*Objects and SubObjects&lt;br /&gt;
*Viewing (downloading for a document)&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11061</id>
		<title>EPrints User Group 2015-01-13</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=EPrints_User_Group_2015-01-13&amp;diff=11061"/>
		<updated>2015-01-08T16:14:40Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: /* Homeless thoughts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;John Salter and John Beaman, University of Leeds&lt;br /&gt;
&lt;br /&gt;
==Intro==&lt;br /&gt;
* Hello: we're John Salter and John Beaman from the University of Leeds.&lt;br /&gt;
* We've spent some time trying to write an Access Control system for EPrints. ''It's been a horror.''&lt;br /&gt;
* One of our use-cases is for Research Data, but it could be used on other repository types.&lt;br /&gt;
&lt;br /&gt;
==Out of the box User Access Control==&lt;br /&gt;
* EPrints ''(you all know what this is, right..?)'' has basic control at the document level - the 'security' field:&lt;br /&gt;
** public (Open Access)&lt;br /&gt;
** validuser (anyone who's got an account on that EPrints instance)&lt;br /&gt;
** staffonly (Repository editors/admins)&lt;br /&gt;
* This doesn't cover the requirements for some repositories...&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* Control access to EPrints, Documents&lt;br /&gt;
* Control access based on:&lt;br /&gt;
** User attributes e.g. signed-in via Shibboleth&lt;br /&gt;
** Location e.g. on-campus&lt;br /&gt;
* Simple interface to assign restrictions&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==EPACL: EPrints Access Control Layer==&lt;br /&gt;
* Doesn't overwrite any existing 'security' specified on documents.&lt;br /&gt;
&lt;br /&gt;
===ACL_Roles===&lt;br /&gt;
* Fields&lt;br /&gt;
** ID&lt;br /&gt;
** ACL_Authority e.g. LDAP; IP address; EPrintsUser&lt;br /&gt;
** Role title&lt;br /&gt;
** Role description&lt;br /&gt;
** Filter e.g. member of a specific LDAP group; EPrintsUser type = editor;&lt;br /&gt;
&lt;br /&gt;
===ACL_Groups===&lt;br /&gt;
* Fields&lt;br /&gt;
** ID&lt;br /&gt;
** Group name&lt;br /&gt;
** Group description&lt;br /&gt;
** ACL_Roles&lt;br /&gt;
** Role combination (AND / OR)&lt;br /&gt;
&lt;br /&gt;
===ACL_Authority===&lt;br /&gt;
???&lt;br /&gt;
&lt;br /&gt;
==Dealing with rejection==&lt;br /&gt;
* What happens when someone is denied access?&lt;br /&gt;
** Document landing pages&lt;br /&gt;
** Restricted summary pages&lt;br /&gt;
** Contact details to request access?&lt;br /&gt;
&lt;br /&gt;
==ACL Objects==&lt;br /&gt;
*ACL Authority&lt;br /&gt;
**Corresponds to a method of authorisation (e.g. Shibboleth, LDAP etc.)&lt;br /&gt;
&lt;br /&gt;
*ACL Role&lt;br /&gt;
**Authorised by an ACL Authority with zero or more 'filters' applied&lt;br /&gt;
**Filters act as additional requirements (e.g. ACL_Authority='LDAP', Filter='dc=leeds.ac.uk')&lt;br /&gt;
&lt;br /&gt;
*ACL Group&lt;br /&gt;
**Each ACL Group consists of one or more ACL Roles&lt;br /&gt;
**The ACL Roles are combined within an ACL Group by being 'OR'ed or 'AND'ed together&lt;br /&gt;
**One or more ACL Groups are applied to EPrints data objects (e.g. eprints, documents)&lt;br /&gt;
**The ACL Groups applied to EPrints data objects are 'OR'ed or 'AND'ed togther&lt;br /&gt;
&lt;br /&gt;
==Summary Page citation style==&lt;br /&gt;
*How do we deal with rejected requests (i.e. what do we show)?&lt;br /&gt;
*We can define different citation styles depending on whether the request is allowed or denied&lt;br /&gt;
*'Restricted' citations may be required (e.g. to satisfy the minimum metadata requirements of a DOI)&lt;br /&gt;
&lt;br /&gt;
==Document-level landing pages==&lt;br /&gt;
*Born out of DOI requirements&lt;br /&gt;
*Individual documents may have their own DOI, so ideally need their own 'landing page'&lt;br /&gt;
*Document landing pages should contain at least the mandatory metadata fields if linked from a DOI&lt;br /&gt;
&lt;br /&gt;
==Request vs User==&lt;br /&gt;
*Two basic steps to authorise access - request and user&lt;br /&gt;
*First EPrints checks if the request has appropriate access rights&lt;br /&gt;
*If so, any additional user requirements are also checked&lt;br /&gt;
*If not, the request is denied (since the user's credentials are irrelevant at that point)&lt;br /&gt;
&lt;br /&gt;
==Homeless thoughts==&lt;br /&gt;
*Summary Page citation style&lt;br /&gt;
*Access logging&lt;br /&gt;
*Login sources&lt;br /&gt;
*Modular design&lt;br /&gt;
*Request vs User&lt;br /&gt;
*Describe ACL_Group, ACL_Role, ACL_Authority&lt;br /&gt;
*DOIs at Doc level = landing page citation style&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.eprints.org/w/index.php?title=API:bin/import&amp;diff=10942</id>
		<title>API:bin/import</title>
		<link rel="alternate" type="text/html" href="https://wiki.eprints.org/w/index.php?title=API:bin/import&amp;diff=10942"/>
		<updated>2014-04-28T11:37:31Z</updated>

		<summary type="html">&lt;p&gt;J.beaman@leeds.ac.uk: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!-- Pod2Wiki=_preamble_ &lt;br /&gt;
This page has been automatically generated from the EPrints 3.2 source. Any wiki changes made between the 'Pod2Wiki=*' and 'Edit below this comment' comments will be lost.&lt;br /&gt;
 --&amp;gt;{{API}}{{Pod2Wiki}}{{API:Source|file=bin/import|package_name=bin/import}}[[Category:API|BIN/IMPORT]][[Category:API:bin/import|BIN/IMPORT]][[Category:API:bin/import|BIN/IMPORT]]&amp;lt;div&amp;gt;&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=_private_ --&amp;gt;&amp;lt;!-- Pod2Wiki=head_name --&amp;gt;&lt;br /&gt;
==NAME==&lt;br /&gt;
'''import''' - Import a file using an import plugin.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=head_synopsis --&amp;gt;&lt;br /&gt;
==SYNOPSIS==&lt;br /&gt;
'''import''' &amp;lt;em&amp;gt;repository_id&amp;lt;/em&amp;gt; ['''options'''] &amp;lt;em&amp;gt;dataset&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''import''' &amp;lt;em&amp;gt;repository_id&amp;lt;/em&amp;gt; ['''options'''] &amp;lt;em&amp;gt;dataset&amp;lt;/em&amp;gt; &amp;lt;em&amp;gt;plugin&amp;lt;/em&amp;gt; &amp;lt;em&amp;gt;filename&amp;lt;/em&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=head_description --&amp;gt;&lt;br /&gt;
==DESCRIPTION==&lt;br /&gt;
This command imports a set of EPrints from a file into the given dataset.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=head_arguments --&amp;gt;&lt;br /&gt;
==ARGUMENTS==&lt;br /&gt;
* &amp;lt;em&amp;gt;repository_id&amp;lt;/em&amp;gt; &lt;br /&gt;
: The ID of the EPrint repository to import to.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;em&amp;gt;dataset&amp;lt;/em&amp;gt;&lt;br /&gt;
: The name of the dataset to import into, such as &amp;quot;eprint&amp;quot;,&amp;quot;archive&amp;quot;, &amp;quot;subject&amp;quot; or &amp;quot;user&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: Please note that for the &amp;quot;subject&amp;quot; dataset, you are probably better off using the import_subjects tool which will empty the dataset before importing.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;em&amp;gt;plugin&amp;lt;/em&amp;gt;&lt;br /&gt;
: The id of the input plugin to use. This should not include the leading &amp;quot;Import::&amp;quot;. Examples: BibTeX, XML.&lt;br /&gt;
&lt;br /&gt;
: If this is ommited or an invalid plugin is requested, then 'import' will list all plugins compatible with the dataset and exit.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;em&amp;gt;filename&amp;lt;/em&amp;gt;&lt;br /&gt;
: Filename to read from. To read from STDIN specify '-'.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=head_options --&amp;gt;&lt;br /&gt;
==OPTIONS==&lt;br /&gt;
* '''--user USERID/USERNAME''' &lt;br /&gt;
: For eprint datasets only. (not user or subject). &lt;br /&gt;
&lt;br /&gt;
: Sets the userid/username of the user in the system who will own the imported records.&lt;br /&gt;
&lt;br /&gt;
: Usually required for importing EPrint records. This may not be required if the import format contains the userid value, eg. an import in the EPrints 3 XML format.&lt;br /&gt;
&lt;br /&gt;
: If this is an integer then it is assumed to be the userid of the user, otherwise it is assumed to be the username.&lt;br /&gt;
&lt;br /&gt;
: You may wish to create one or more &amp;quot;bulk import&amp;quot; users and make imported eprint records belong to them.&lt;br /&gt;
&lt;br /&gt;
* '''--argument key=value'''&lt;br /&gt;
: Add an argument to the import plugin. May be repeated. Effects depend on the import plugin.&lt;br /&gt;
&lt;br /&gt;
* '''--parse-only'''&lt;br /&gt;
: Don't import, just check the file.&lt;br /&gt;
&lt;br /&gt;
* '''--migration'''&lt;br /&gt;
: Turn on all the options needed to correctly import an XML data file exported from version 2, using the migration toolkit. Implies --enable-web-imports --enable-file-imports --force&lt;br /&gt;
&lt;br /&gt;
* '''--enable-import-fields'''&lt;br /&gt;
: Allow the import to set fields that are set as not to be imported. This is typically used to specify the imported object id.&lt;br /&gt;
&lt;br /&gt;
* '''--enable-file-imports'''&lt;br /&gt;
: Allow the imported data to import files from the local filesystem. This can obviously be seen as a security hole if you don't trust the data you are importing. This sets the &amp;quot;enable_file_imports&amp;quot; configuration option for this session only.&lt;br /&gt;
&lt;br /&gt;
* '''--enable-web-imports'''&lt;br /&gt;
: Allow the imported data to import files from the Web. This can obviously be seen as a security hole if you don't trust the data you are importing. This sets the &amp;quot;enable_web_imports&amp;quot; configuration option for this session only.&lt;br /&gt;
&lt;br /&gt;
* '''--xml'''&lt;br /&gt;
: Output to STDOUT the parsed objects in EPrints XML (does not import anything).&lt;br /&gt;
&lt;br /&gt;
* '''--update'''&lt;br /&gt;
: Normally you can not import a new item with the same id as an existing item. With this option enabled existing items will be updated with the new item. Combine with --enable-import-fields to update all field values.&lt;br /&gt;
&lt;br /&gt;
* '''--force'''&lt;br /&gt;
: Don't ask any questions, just do it!&lt;br /&gt;
&lt;br /&gt;
* '''--help'''&lt;br /&gt;
: Print a brief help message and exit.&lt;br /&gt;
&lt;br /&gt;
* '''--man'''&lt;br /&gt;
: Print the full manual page and then exit.&lt;br /&gt;
&lt;br /&gt;
* '''--quiet'''&lt;br /&gt;
: Be vewwy vewwy quiet. This option will supress all output unless an error occurs.&lt;br /&gt;
&lt;br /&gt;
* '''--verbose'''&lt;br /&gt;
: Explain in detail what is going on. May be repeated for greater effect.&lt;br /&gt;
&lt;br /&gt;
: Shows why a plugin is disabled.&lt;br /&gt;
&lt;br /&gt;
* '''--version'''&lt;br /&gt;
: Output version information and exit.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
'''Please note''' that the ''--update'' option described above '''will not''' work in EPrint versions prior to v3.3.12 without an edit to the bin/import module. See here for details. [https://github.com/eprints/eprints/commit/a5eb05abd14606d26f746e1f2d499bd11104c3ae]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=head_copyright --&amp;gt;&lt;br /&gt;
==COPYRIGHT==&lt;br /&gt;
Copyright 2000-2011 University of Southampton.&lt;br /&gt;
&lt;br /&gt;
This file is part of EPrints http://www.eprints.org/.&lt;br /&gt;
&lt;br /&gt;
EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.&lt;br /&gt;
&lt;br /&gt;
EPrints is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.&lt;br /&gt;
&lt;br /&gt;
You should have received a copy of the GNU General Public License along with EPrints.  If not, see http://www.gnu.org/licenses/.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Pod2Wiki= --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Pod2Wiki=_postamble_ --&amp;gt;&lt;br /&gt;
&amp;lt;!-- Edit below this comment --&amp;gt;&lt;/div&gt;</summary>
		<author><name>J.beaman@leeds.ac.uk</name></author>
		
	</entry>
</feed>