Will this be part of 1.8? Or 3.1? Or both? (Please say 1.8, please say 1.8, or 
both)

Anyway … I am very interested in CAS integration as well.

Thanks,

Patrick West
Senior Software Engineer
Tetherless World Constellation
Rensselaer Polytechnic Institute

On May 20, 2013, at 9:52 AM, Alumno Etsii <todos.somos...@gmail.com> wrote:

> Again, thanks so much for your kind help! Then I can say the CAS 
> authentication is working ok, in a few days - when I get a few days with less 
> work, I'll apply those changes to a git clone of DSpace and provide the patch 
> for the latest version of DSpace so CAS auth. can be *AT LAST* officially 
> integrated :-)
> 
> Should I uploadit it to JIRA, send it to this list...?
> 
> Regards.
> 
> 
> 2013/5/20 Mark H. Wood <mw...@iupui.edu>
> On Mon, May 20, 2013 at 02:02:14PM +0000, Alumno Etsii wrote:
> > Ok, I'm replying myself with some little advances.
> >
> > This snippet is used in the authenticate funcion of CAS, when eperson ==
> > null and the cas.autoregister option is false:
> >
> > +                    else
> > +                    {
> > +                        // No auto-registration for valid netid
> > +                        log.warn(LogManager.getHeader(context, 
> > "authenticate",
> > +                                     netid+"  type=netid_but_no_record, 
> > cannot
> > auto-register"));
> > +                        return NO_SUCH_USER;
> > +                    }
> >
> > I see similar logic is in Shibboleth or LDAP authentication metods, but I
> > don't get the point of it. Does that mean that if autoregister option is
> > set to false and they doesn't have stored credentials as EPerson in the DB,
> > users shouldn't be able to login?
> 
> Correct.  To say that a DSpace user is logged in means that the
> session is associated with an EPerson ID.  If this user is not
> currently registered as an EPerson, and auto-registration is disabled,
> then there will be no EPerson ID with which to associate the session
> so it cannot be logged in.  The EPerson record would have to be
> created by some other means.
> 
> Fundamentally, there must be an EPerson record before a session can be
> logged in.  The authentication methods only determine whether a user
> can prove his association with his EPerson record.  When
> autoregistration is enabled, an authentication method can also create
> a new EPerson record if it does not yet exist.
> 
> > Then what's the autoregister option for,
> > as it should always be set to true in order to work?
> 
> Autoregistration might be disabled if it is desired to restrict
> logged-in access to a subset of the people who hold accounts in the
> external authentication provider.  Presumably an administrator would
> create the necessary EPerson records.
> 
> > If I replace NO_SUCH_USER by SUCCESS, I see that I get correctly
> > authenticated vs. CAS only once, but DSpace shows the AuthenticationFail
> > error. The question is: What steps would be necessary to create a one-time
> > session for the authenticated user without storing their credentials in the
> > DSpace DB?
> 
> I believe that there is no way to do that.  An EPerson record must
> exist before a session can be logged in.
> 
> It would not be necessary to store a password in the EPerson record,
> if the user will always use an external authentication provider (such
> as CAS).  But there must be an EPerson record with a unique ID field
> value and a name that can be matched to the external provider's
> records.
> 
> You can see some of this in
> org.dspace.app.xmlui.aspect.general.AuthenticatedSelector, which
> returns true/false depending on whether the session is logged in:
> 
>             EPerson eperson = context.getCurrentUser();
> 
>             if (eperson == null)
>             {
>                 // No one is authenticated.
>                 return false;
>             }
> 
> The test asks whether there is an EPerson ID for the session.
> 
> --
> Mark H. Wood, Lead System Programmer   mw...@iupui.edu
> Machines should not be friendly.  Machines should be obedient.
> 
> ------------------------------------------------------------------------------
> AlienVault Unified Security Management (USM) platform delivers complete
> security visibility with the essential security capabilities. Easily and
> efficiently configure, manage, and operate all of your security controls
> from a single console and one unified framework. Download a free trial.
> http://p.sf.net/sfu/alienvault_d2d
> _______________________________________________
> DSpace-tech mailing list
> DSpace-tech@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dspace-tech
> List Etiquette: 
> https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette
> 
> ------------------------------------------------------------------------------
> AlienVault Unified Security Management (USM) platform delivers complete
> security visibility with the essential security capabilities. Easily and
> efficiently configure, manage, and operate all of your security controls
> from a single console and one unified framework. Download a free trial.
> http://p.sf.net/sfu/alienvault_d2d_______________________________________________
> DSpace-tech mailing list
> DSpace-tech@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/dspace-tech
> List Etiquette: 
> https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
DSpace-tech mailing list
DSpace-tech@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-tech
List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette

Reply via email to