On Mon, Sep 01, 2014 at 01:53:36PM +0200, Pavel Březina wrote:
> On 08/26/2014 10:50 AM, Sumit Bose wrote:
> >On Thu, Jul 24, 2014 at 03:42:38PM +0200, Pavel Březina wrote:
> >>On 07/22/2014 09:47 PM, Sumit Bose wrote:
> >>>On Tue, Jul 22, 2014 at 05:55:21PM +0200, Pavel Březina wrote:
> >>>>On 07/22/2014 01:27 PM, Sumit Bose wrote:
> >>>>>Hi,
> >>>>>
> >>>>>this series of patches should solve
> >>>>>https://fedorahosted.org/sssd/ticket/1749 . The solution is a bit
> >>>>>different than the one outline in
> >>>>>https://fedorahosted.org/sssd/wiki/DesignDocs/NSSWithKerberosPrincipal
> >>>>>but after a couple of iterations I prefer this solution because it adds
> >>>>>only a minimal amount of new code and automatically covers features like
> >>>>>mid-point refresh, because the same code path is used. If we agree on
> >>>>>this approach I'll update the design page accordingly.
> >>>>>
> >>>>>The outline is in the commit message of the 5th patch, I'll copy it here
> >>>>>for easier reference:
> >>>>>
> >>>>>With this patch the NSS and PAM responders can handle user principal
> >>>>>names besides the fully qualified user names.
> >>>>>
> >>>>>User principal names are build from a user name and a domain suffix
> >>>>>separated by an '@' sign. But the domain suffix does not necessarily has
> >>>>>to be the same as the configured domain name in sssd.conf of the
> >>>>>dynamically discovered DNS domain name of a domain. The typical use case
> >>>>>is an Active Directory forest with lots of different domains. To not
> >>>>>force the users to remember the name of the individual domain they
> >>>>>belong to the AD administrator can set a common domain suffix for all
> >>>>>users from all domains in the forest. This is typically the domain name
> >>>>>used for emails to make it even more easy to the users to remember it.
> >>>>>
> >>>>>Since SSSD splits name and domain part at the '@' sign and the common
> >>>>>domain suffix might not be resolvable by DNS or the given user is not a
> >>>>>member of that domain (e.g. in the case where the forest root is used as
> >>>>>common domain suffix) SSSD might fail to look up the user.
> >>>>>
> >>>>>With this patch the NSS and PAM responder will do an extra lookup for a
> >>>>>UPN if the domain part of the given name is not known or the user was
> >>>>>not found and the login name contained the '@' sign.
> >>>>>
> >>>>>The first patch contains the needs changes for the LDAP provider,
> >>>>>patches 2, 3 and 4 some related cleanup and improvements. The main
> >>>>>functionality is in the 5th patch.
> >>>>>
> >>>>>bye,
> >>>>>Sumit
> >>>>
> >>>>Hi,
> >>>>I went through the code and IMHO the approach you've chosen is good.
> >>>
> >>>thank you for the fast response.
> >>>
> >>>>
> >>>>Can you make "U" value a macro?
> >>>
> >>>sure, new version attached. (Patch 1 and 5 changed)
> >>>
> >>>bye,
> >>>Sumit
> >>
> >>Hi,
> >>you left unused variable "res" in pam_check_user_search() introduced in
> >>patch 3 and its usage was removed in patch 5. I'm sending a simple patch
> >>that fix this, feel free to squash it into patch 5.
> >
> >thank you for the review and the patch, done.
> >
> >>
> >>The code looks good and id and su commands with upn works, however it seems
> >>that group membership is not calculated correctly (only primary group is
> >>shown).
> >>
> >>[client: ~]$ id test-u...@ad.pb
> >>uid=1751601108(test-user) gid=1751600513(domain users)
> >>groups=1751600513(domain users),1751601106(sudo users)
> >>[client: ~]$ id test-u...@upnad.pb
> >>uid=1751601108(test-user) gid=1751600513(domain users)
> >>groups=1751600513(domain users)
> >>
> >>If I run id after su, the membership is correct:
> >>[client: ~]$ su test-u...@upnad.pb
> >>Password:
> >>[client: /home/pbrezina]$ id
> >>uid=1751601108(test-user) gid=1751600513(domain users)
> >>groups=1751600513(domain users),1751601106(sudo users)
> >>context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
> >>
> >
> >Thank you for catching this. My testing focus was that the UPN can be
> >used at the login prompt. But since the UPN might be used in group list
> >related calls as well I added support in the initgroups code path as
> >well.
> >
> >New version of the patches is attached.
> >
> >bye,
> >Sumit
> 
> Ack.

Pushed to master:
    899d1bdc048cd74518170d7d9535d76d3f46d4af
    7d2437adc312d3322d36043ff458fafdb4b7f2cf
    17c4d901ecf62fa9d641d46c9e92032b0deaaa36
    cda952ca3e00d324c7e53eeaeda394eb0d142818
    25a387c2e90c74b27a26ea207503df8e4b6a1a76
    84d50b69d286f041aa96a948b008d311d8755075

Since IFP contains pretty much a private copy of the check_cache
function, I guess we would get the UPN lookups for free when we
use the same code for NSS and IFP cache lookups (which is something
Pavel would be working on now..)
_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to