Cross-realm Trust Principals with LDAP

Kemper, Stephan stephan.kemper at viasat.com
Mon Jan 23 19:03:53 EST 2017


Hi Greg,

Thanks for the suggestion – I had completely forgotten this would show up in the LDAP logs.  After running that down, it turns out (surprise!) to be a case of user error.  The search base for the VIASAT.IO principals was wildly different from the base for our subrealms.  One of our engineers had inadvertently configured our parent realm with a krbSubTrees of our root DIT, which is why it was always returning all possible principals.  We removed the attribute from the realm container, and things are working as expected now.

Thanks for your help!


Stephan Kemper
Cloud Engineering
ViaSat, Inc.

On 1/23/17, 7:44 AM, "Greg Hudson" <ghudson at mit.edu> wrote:

    On 01/22/2017 07:11 PM, Kemper, Stephan wrote:
    > Sorry for the spam, but after continuing to investigate, it looks like this database shortcut only works for vertical trusts.  A krbtgt/A.VIASAT.IO at B.VIASAT.IO principal only shows up in the realm it’s created in.  That definitely pushes me toward the “unintended/bug” end of the spectrum, because otherwise the interface wouldn’t be uniform.
    
    The libkdb_ldap is_principal_in_realm() excepts cross-realm TGT
    principals because otherwise there would be no way to store krbtgt/B at A
    in realm A, but I don't think there was any intent to allow them to be
    shared between databases for different realms.
    
    I don't currently understand why the sharing seems to happen between
    A.VISITAT.IO and VISITAT.IO, but not between A.VISITAT.IO and
    B.VISITAT.IO.  The structure of your LDAP database as you described it
    doesn't seem to have a vertical relationship between VISITAT.IO and
    A.VISITAT.IO, so I wouldn't expect the searches to behave any
    differently.  Investigating the LDAP server logs to look at the searches
    performed by kadmind might be helpful.
    




More information about the Kerberos mailing list