summaryrefslogtreecommitdiffstats
path: root/zarb-ml/mageia-sysadm/2010-November/000915.html
diff options
context:
space:
mode:
Diffstat (limited to 'zarb-ml/mageia-sysadm/2010-November/000915.html')
-rw-r--r--zarb-ml/mageia-sysadm/2010-November/000915.html323
1 files changed, 323 insertions, 0 deletions
diff --git a/zarb-ml/mageia-sysadm/2010-November/000915.html b/zarb-ml/mageia-sysadm/2010-November/000915.html
new file mode 100644
index 000000000..ab4ce529c
--- /dev/null
+++ b/zarb-ml/mageia-sysadm/2010-November/000915.html
@@ -0,0 +1,323 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-sysadm%40mageia.org?Subject=Re%3A%20%5BMageia-sysadm%5D%20%5BLONG%5D%20sympa%20%28%20and%20web%20apps%20%29%20ldap%0A%09authentication&In-Reply-To=%3C201011251050.44679.bgmilne%40multilinks.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000951.html">
+ <LINK REL="Next" HREF="000940.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication</H1>
+ <B>Buchan Milne</B>
+ <A HREF="mailto:mageia-sysadm%40mageia.org?Subject=Re%3A%20%5BMageia-sysadm%5D%20%5BLONG%5D%20sympa%20%28%20and%20web%20apps%20%29%20ldap%0A%09authentication&In-Reply-To=%3C201011251050.44679.bgmilne%40multilinks.com%3E"
+ TITLE="[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication">bgmilne at multilinks.com
+ </A><BR>
+ <I>Thu Nov 25 10:50:44 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000951.html">[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication
+</A></li>
+ <LI>Next message: <A HREF="000940.html">[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#915">[ date ]</a>
+ <a href="thread.html#915">[ thread ]</a>
+ <a href="subject.html#915">[ subject ]</a>
+ <a href="author.html#915">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>On Wednesday, 24 November 2010 18:54:40 Michael Scherer wrote:
+&gt;<i> Hi,
+</I>&gt;<i>
+</I>&gt;<i> as proposed during previous founders meeting, we need to be clear upon
+</I>&gt;<i> how we want to use authentication on web applications ( and non web
+</I>&gt;<i> too ) with regard to ldap directory.
+</I>&gt;<i>
+</I>&gt;<i> So what I propose will apply to sympa, but could be expended on others
+</I>&gt;<i> applications.
+</I>&gt;<i>
+</I>&gt;<i> So the first proposal that I will expose :
+</I>&gt;<i>
+</I>&gt;<i> - users will use their personal email address and the password from ldap
+</I>&gt;<i> to authenticate themselves.
+</I>
+Is this a limitation in sympa? All LDAP-capable software should allow
+configuration of which attribute to authenticate against ...
+
+&gt;<i> While this is the easiest solution ( and the current one in svn from
+</I>&gt;<i> what I understood ), this idea suffer from 3 issues :
+</I>&gt;<i>
+</I>&gt;<i> - people will use a different login than the one of identity.
+</I>
+Why? We can change identity to search for the username in the mail attribute.
+We can even probably allow login with either uid or mail. In fact, it should
+only be a configuration change to set user_filter in catdap_local.yml. It
+isn't entirely, I will commit a ~ 10 line patch to fix hardcoding of
+attributes/filters in user.pm shortly.
+
+&gt;<i> This is
+</I>&gt;<i> not really how a centralized login system should work, imho. And this
+</I>&gt;<i> was a source of confusion ( at least, of my confusion ) at Mandriva.
+</I>&gt;<i>
+</I>&gt;<i> - people will need to open a account on identity. For some applications,
+</I>&gt;<i> this may not be desirable. For example, on a forum, having to first
+</I>&gt;<i> register, and then log on the forum to fill the data is not good.
+</I>
+Normally, the user has to register on a forum anyway, activate the account,
+before changing avatar or anything. So, I don't see the difference. As long as
+the forum has been configured to send users to identity to register, there
+shouldn't be too much inconvenience. We could try and redirect the user to the
+forum login after activation to make it a bit easier.
+
+&gt;<i> For
+</I>&gt;<i> mailling list, if we intend to subscribe gmane, or mail archive to the
+</I>&gt;<i> list, this is not good either. I couldn't get in touch with rda in time,
+</I>&gt;<i> but I think that's what he meant ( if not, romain, feel free to correct
+</I>&gt;<i> me ). And in fact, this would also put more pressure on ldap than
+</I>&gt;<i> intended ( if we requires this for forum, we may end with a big ldap
+</I>&gt;<i> directory ).
+</I>
+AFAIK, the forum only impacts LDAP on login to the forum, not on every page
+view etc.
+
+&gt;<i> - using email as login is dangerous. Since the email is freely editable
+</I>&gt;<i> in catdap ( and multivalued ), someone could perfectly change his email
+</I>&gt;<i> after opening a account, and thus get access to sympa subscription of
+</I>&gt;<i> someone else.
+</I>
+And lose their account to the user whose email address was used as soon as we
+allow user-initiated password reset ...
+
+&gt;<i> More ever, nothing guarantee that email are uniques
+</I>&gt;<i> across the whole DIT, especially if email span on 2 attributes ( mail
+</I>&gt;<i> and mailAlternateAddress ).
+</I>
+mail is multi-valued, we should have a policy on how we maintain this. At
+present, I don't see if we need mailAlternateAddress. However, if we maintain
+all email addresses in 'mail' attribute, we can apply slapo-unique to easily
+prevent this.
+
+&gt;<i> We could however 1) check the unicity of email on ldap 2) modify catdap
+</I>&gt;<i> to requires a confirmation before changing anything email related.
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> So then a second proposal was done :
+</I>&gt;<i> - users use their @mageia.org alias, and the password from ldap
+</I>&gt;<i>
+</I>&gt;<i> this one fix the 3rd issue, to be replaced by a 4th and 5th ones :
+</I>&gt;<i>
+</I>&gt;<i> - everybody who will open a account on identity will receive a alias.
+</I>&gt;<i> I am not sure that's what we should propose, especially since a alias is
+</I>&gt;<i> like a official acknowledgment. And we do not want to restrict ml to the
+</I>&gt;<i> few people that would receive a alias.
+</I>
+Let's have a policy on aliases before we make decisions that require or
+prevent them ...
+
+&gt;<i> - people will need to use the alias to post on the ml, or we will need
+</I>&gt;<i> to find a way to find their emails from their subscriptions. Not sure if
+</I>&gt;<i> sympa could do it ( but this would be great )
+</I>&gt;<i>
+</I>&gt;<i> But issue 1 and 2 still apply.
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> For the sake of being complete, we could also decide to not use ldap.
+</I>&gt;<i> Then we would lose the centralisation of password, and that's imho
+</I>&gt;<i> something to avoid if we can. But that's still a option that we should
+</I>&gt;<i> not forget.
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> So what I propose to solve this is the following scheme :
+</I>&gt;<i>
+</I>&gt;<i> A user wanting to authenticate on sympa will provide a login, who will
+</I>&gt;<i> be either :
+</I>&gt;<i> - a email ( his personal email or email of choice ) + password of his
+</I>&gt;<i> choice, stored by sympa, and using regular sympa authentication
+</I>&gt;<i> or
+</I>&gt;<i> - a login ( identity login ) + password from ldap
+</I>&gt;<i>
+</I>&gt;<i> If I understood correctly, sympa support this
+</I>&gt;<i> ( <A HREF="http://www.sympa.org/manual_6.1/authentication">http://www.sympa.org/manual_6.1/authentication</A> ).
+</I>&gt;<i>
+</I>&gt;<i> This way :
+</I>&gt;<i> 1) we do not force identity on anybody
+</I>
+?
+
+&gt;<i> 2) the login is either a email ( with email verification done by sympa,
+</I>&gt;<i> and email change also done by sympa ) or our fixed ldap login ( fixed,
+</I>&gt;<i> ie, not under the control of any user )
+</I>
+We need to chose one ...
+
+&gt;<i> 3) people will use the same uid everywhere ( because having sometime the
+</I>&gt;<i> email, sometime the uid is confusing, especially if we start to offer
+</I>&gt;<i> email alias )
+</I>
+I had assumed this would be the strategy from the beginning.
+
+&gt;<i>
+</I>&gt;<i> So, that's the first part of my mail.
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> This issue with ldap integration will likely arise on almost every web
+</I>&gt;<i> application we will setup. So I would like to propose the following :
+</I>&gt;<i>
+</I>&gt;<i> we have 2 types of applications :
+</I>&gt;<i> - some are for use of active people
+</I>&gt;<i> - submit packages, send something on svn
+</I>&gt;<i> - wiki edition ( not sure on this one )
+</I>&gt;<i> - transifex
+</I>&gt;<i> - maintainers db
+</I>&gt;<i> - etc
+</I>&gt;<i>
+</I>&gt;<i> For those applications, we would likely require be in a team first which
+</I>&gt;<i> should IMHO require a account in identity.
+</I>
+Well, if *all* accounts are already in identity, the user just needs to join
+the team (if we restrict access to some apps to some teams, e.g. transifex).
+
+&gt;<i>
+</I>&gt;<i> - some are for the use of the enlarged community
+</I>&gt;<i> - forums
+</I>&gt;<i> - mailing lists
+</I>&gt;<i> - bugzilla
+</I>&gt;<i> - etc
+</I>&gt;<i>
+</I>&gt;<i> Those should not requires to be in a team first, and therefore, do not
+</I>&gt;<i> require a account in identity.
+</I>
+But, why should we require them to have another account if they filed a bug
+about localisation, then offered to be the translator for their language to
+fix the bug ...
+
+&gt;<i>
+</I>&gt;<i> Yet, we want to have the benefit of the central authentication as much
+</I>&gt;<i> as possible.
+</I>&gt;<i>
+</I>&gt;<i> So let's divide applications in 2 category :
+</I>&gt;<i>
+</I>&gt;<i> The one in the 1st will use ldap authentication only. That's quite easy
+</I>&gt;<i> to achieve most of the time. Of course, supporting ldap is not the only
+</I>&gt;<i> thing we want when selecting a application. Being able to support
+</I>&gt;<i> filter, show meaningful errors messages, and others are also to
+</I>&gt;<i> consider.
+</I>&gt;<i>
+</I>&gt;<i> The one in the 2nd will use some kind of hybrid auth, if possible. Ie,
+</I>&gt;<i> if people give a ldap login ( uid + password ), the access is granted,
+</I>&gt;<i> and if not, we do a fallback on some kind of native and non centralized
+</I>&gt;<i> login system.
+</I>
+IMHO, this is more trouble than it is worth, and more trouble than having all
+users on LDAP.
+
+&gt;<i>
+</I>&gt;<i> However this will open a can of worms :
+</I>&gt;<i> - what about possible login conflict, ie, how can we prevent someone
+</I>&gt;<i> from using &quot;misc&quot; ( for example ) as a login in the native users
+</I>&gt;<i> database ? What would happen if the conflict arise ?
+</I>&gt;<i>
+</I>&gt;<i> Forcing people to use their email is a solution, but not everything
+</I>&gt;<i> support that model. We can't simply check if the login is not in use
+</I>&gt;<i> because someone could perfectly use it later.
+</I>&gt;<i>
+</I>&gt;<i> - what people who first open a account on the software, and later change
+</I>&gt;<i> to use a identity login ? How can we merge the 2 ( especially if there
+</I>&gt;<i> is some authorization issue ) ?
+</I>&gt;<i>
+</I>&gt;<i> This would likely requires hand edition by a admin of the DB or
+</I>&gt;<i> equivalent.
+</I>
+All these are reasons to have a single authentication store. Rememeber, you
+would have these problems anyway, if you had no LDAP, and is in fact the
+problem we are trying to avoid by using LDAP.
+
+&gt;<i> - what about a software that do not support it, ie ldap or native, but
+</I>&gt;<i> not both ? Or that do not support it as we want ?
+</I>
+We file bugs, supply patches, or choose other software that is suitable.
+
+&gt;<i> So far, bugzilla support this ( ldap, and fallback on the DB ), maat
+</I>&gt;<i> told me this was the proposed scheme for forum ( iirc ) and that's the
+</I>&gt;<i> one I propose for sympa. So at least, for the example I gave, we are ok.
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> and the biggest problem ( imho ) :
+</I>&gt;<i>
+</I>&gt;<i> How do we decide what category does a application belong ?
+</I>
+We have one category, must support LDAP, and if access should be restricted,
+it must support LDAP authorization by group or filter (if only filter, then we
+may need to add memberof overlay).
+
+&gt;<i> Some are quite easy, and some are more difficult ( I think ). For
+</I>&gt;<i> example, I would be inclined to use ldap login for the wiki, or let
+</I>&gt;<i> people be unauthenticated. Maybe not everybody agree.
+</I>&gt;<i>
+</I>&gt;<i> What about application like mageia-app-db ?
+</I>&gt;<i> This one is easier since we can specifically add this as requirement.
+</I>
+I would say that anonymous access (just browsing packages) should be allowed.
+If users are to have personalised features, then maybe you would want to
+integrate some data or links from/to other applications that authenticate
+
+&gt;<i> So to summarize :
+</I>&gt;<i> - can someone confirm we can do this for sympa ?
+</I>&gt;<i>
+</I>&gt;<i> - does someone see a problem with the proposed scheme for sympa, and
+</I>&gt;<i> does it fulfill everybody need ?
+</I>
+Which proposed scheme? Using uid as username?
+
+&gt;<i> - does everybody agree for the separation in 2 category of applications,
+</I>&gt;<i> and the consequence for the application in term of authentication ?
+</I>
+I see no reason to have two categories. Please explain exactly how having
+every single user who interacts with Mageia in any fashion on LDAP is a
+problem.
+
+My idea was to make it as *easy* as possible for people to manage their
+relationships to Mageia. So, users register once, and use that account for all
+&quot;public&quot; access (forum, mailing list, bugzilla, wiki). If a user becomes a
+contributor, we upgrade their account as necessary, but there is no big
+obstacle, no disruption etc. to the user.
+
+Regards,
+Buchan
+</PRE>
+
+
+
+
+
+
+
+
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000951.html">[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication
+</A></li>
+ <LI>Next message: <A HREF="000940.html">[Mageia-sysadm] [LONG] sympa ( and web apps ) ldap authentication
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#915">[ date ]</a>
+ <a href="thread.html#915">[ thread ]</a>
+ <a href="subject.html#915">[ subject ]</a>
+ <a href="author.html#915">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-sysadm">More information about the Mageia-sysadm
+mailing list</a><br>
+</body></html>