etianen / django-python3-ldap

Django LDAP user authentication backend for Python 3.
BSD 3-Clause "New" or "Revised" License
411 stars 119 forks source link

use of ldap #2

Closed rheligon closed 9 years ago

rheligon commented 9 years ago

Hello, im new to this django and ldap stuff.. after trying hard and failed to install django-ldap for python 3 on my windows os, i found this i hope "savior". Pretty easy it installed with no problems using pip install, after it said done i included on installed apps.

My problem is i don't know how to configure the settings, since im not too familiar with them appart from the ldap server's url.

Im running django 1.7, any advice on settings? Also i found some example of LDAP backend authentications using django-ldap, will they work with this module? Thanks very much in advance and hope for your answer.

etianen commented 9 years ago

LDAP is an extremely overcomplicated, opaque and generally ridiculous was of storing information. I hate it so much! I wrote this library because I needed to interface with an LDAP server, not because I wanted to! So don’t expect any dealings with an LDAP server to be easy! :P I once spent a whole day trying to get MediaWiki to play nicely with LDAP authentication!

That being said...

The available settings are here:

https://github.com/etianen/django-python3-ldap#available-settings

I take it you’re familiar with configuring a django project? Assuming yes, here’s a bit more depth about the settings:

LDAP_AUTH_SEARCH_BASE = "ou=people,dc=example,dc=com"

Entires in an LDAP server are stored in a nested tree structure. This string describes the path to the node where people are stored. In this case com -> example -> people. Typically, for a company whose domain is example.com, the “people” entries would be stored there, but different LDAP servers may be set up differently. Have a browse of your LDAP hierarchy, and see how yours is set up.

LDAP_AUTH_OBJECT_CLASS = “inetOrgPerson"

All entries in an LDAP server have one or more “classes”, which specify what fields they have and in what form the values are stored. Most LDAP servers use the inotOrgPerson to represent a user. Check what object class is used in your LDAP server to specify a user.

LDAP_AUTH_USER_FIELDS

A mapping of django model field names to field names on the user entries in the LDAP server. The defaults should work with inetOrgPerson.

LDAP_AUTH_USER_LOOKUP_FIELDS = ("username",)

Basically, specified the name of the LDAP field that identifies the username. The default should work with inetOrgPerson.

On 16 Mar 2015, at 21:50, Roberto Heligon notifications@github.com wrote:

Hello, im new to this django and ldap stuff.. after trying hard and failed to install django-ldap for python 3 on my windows os, i found this i hope "savior". Pretty easy it installed with no problems using pip install, after it said done i included on installed apps.

My problem is i don't know how to configure the settings, since im not too familiar with them appart from the ldap server's url.

Im running django 1.7, any advice on settings? Also i found some example of LDAP backend authentications using django-ldap, will they work with this module? Thanks very much in advance and hope for your answer.

— Reply to this email directly or view it on GitHub.

rheligon commented 9 years ago

hello, thank you very much for your help!, indeed it is not at all easy, been here all day.

I am still having some problems to make it work, following your directions on what the settings meant, i looked up to my ldap structure and found out this:

so my custom backend looks a bit like this:

settings.py:

LDAP_AUTH_USER_FIELDS = { "username": "sAMAccountName", "first_name": "givenName", "last_name": "sn", }

LDAP_AUTH_USER_LOOKUP_FIELDS = ("sAMAccountName",)

call in backend.py

from django_python3_ldap import ldap try: user = ldap.authenticate(sAMAccountName=username.upper(), password=password) except Exception as e: print (e) return None

Problem is, it is returning an exception (reason why im printing it) and it prints: 'sAMAccountName'.

if i change LDAP_AUTH_USER_LOOKUP_FIELDS to default: LDAP_AUTH_USER_LOOKUP_FIELDS = ("username",) I don't get the exception but of course none of my users can't authenticate since i believe it's looking on a field "username" that doesn't exists

etianen commented 9 years ago

This feels like you’re getting close.

Can I have a full traceback on your error?

Can I also see an example of a user record from your LDAP server?

On 17 Mar 2015, at 21:15, Roberto Heligon notifications@github.com wrote:

hello, thank you very much for your help!, indeed it is not at all easy, been here all day.

I am still having some problems to make it work, following your directions on what the settings meant, i looked up to my ldap structure and found out this:

• class surrounding "user" is "objectClass: organizationalPerson" which i think is the one in defaults. • There is no username field, instead is called "sAMAccountName" so my custom backend looks a bit like this:

settings.py:

LDAP_AUTH_USER_FIELDS = { "username": "sAMAccountName", "first_name": "givenName", "last_name": "sn", }

LDAP_AUTH_USER_LOOKUP_FIELDS = ("sAMAccountName",)

call in backend.py

from django_python3_ldap import ldap try: user = ldap.authenticate(sAMAccountName=username.upper(), password=password) except Exception as e: print (e) return None return user

Problem is, it is returning an exception (reason why im printing it) and it prints: 'sAMAccountName'.

if i change LDAP_AUTH_USER_LOOKUP_FIELDS to default: LDAP_AUTH_USER_LOOKUP_FIELDS = ("username",) I don't get the exception but of course none of my users can authenticate since i believe it's looking on a field "username" that doesn't exists

— Reply to this email directly or view it on GitHub.

rheligon commented 9 years ago

In order to not make the data public i sent you an e-mail (to: dave@etianen.com) with the traceback error and an example of a user record. Thank you, I'll wait for your response.

thecodesmith commented 9 years ago

I am having this same issue (up to the point where the exception being printed is just: 'sAMAccountName'). What was the final solution you found?

P.S.Thanks for creating this app! So valuable.

etianen commented 9 years ago

Can you post a full traceback?

We never got to the bottom of the previous issue.

On 17 Jun 2015, at 21:49, Brian Stewart notifications@github.com wrote:

I am having this same issue (up to the point where the exception being printed is just: 'sAMAccountName'). What was the final solution you found?

P.S.Thanks for creating this app! So valuable.

— Reply to this email directly or view it on GitHub.

thecodesmith commented 9 years ago

Here is the test code:

from django.contrib.auth.models import User
from django.test import TestCase
from django_python3_ldap import ldap
import traceback

class TestLdap(TestCase):

    def test_authentication(self):
        try:
            user = ldap.authenticate(sAMAccountName='jsmith', password='XXXXXXXX')
            self.assertIsInstance(user, User)
        except Exception as e:
            print(traceback.format_exc())

Here is the traceback produced:

Traceback (most recent call last):
  File "/home/jsmith/projects/company/ctx3/main/tests.py", line 10, in test_authentication
    user = ldap.authenticate(sAMAccountName='jsmith', password='XXXXXXXX')
  File "/home/jsmith/projects/company/ctx3/venv/lib/python3.4/site-packages/django_python3_ldap/ldap.py", line 175, in authenticate
    with connection(*args, **kwargs) as c:
  File "/usr/lib/python3.4/contextlib.py", line 59, in __enter__
    return next(self.gen)
  File "/home/jsmith/projects/company/ctx3/venv/lib/python3.4/site-packages/django_python3_ldap/ldap.py", line 139, in connection
    in user_identifier.items()
  File "/home/jsmith/projects/company/ctx3/venv/lib/python3.4/site-packages/django_python3_ldap/ldap.py", line 138, in <genexpr>
    for field_name, field_value
KeyError: 'sAMAccountName'
thecodesmith commented 9 years ago

Here is the sample LDAP record (with sensitive data changed):

# extended LDIF
#
# LDAPv3
# base <OU=Users,OU=Company Objects,DC=Americas,DC=company,DC=com> with scope subtree
# filter: sAMAccountName=jsmith
# requesting: ALL
#

# John Smith, CF, Users, Company Objects, americas.company.com
dn: CN=John Smith,OU=CF,OU=Users,OU=Company Objects,DC=americas,DC=company,DC=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: John Smith
sn: Smith
c: US
l: Cityname
st: WI
title: Software Engineer
businessCategory: Engineering
postalCode: 00000
postOfficeBox: PO Box 0000
physicalDeliveryOfficeName: US-WI-Cityname
telephoneNumber: +15555555555
givenName: John
distinguishedName: CN=John Smith,OU=CF,OU=Users,OU=Company Objects,DC=americas
 ,DC=company,DC=com
instanceType: 4
whenCreated: XXXXXXXXXXXXX0.0Z
whenChanged: XXXXXXXXXXXXX2.0Z
displayName: John Smith
uSNCreated: XXXXXX9
memberOf: CN=Company_External_Email,OU=Distribution Groups,OU=Company Objects,DC=ame
 ricas,DC=company,DC=com
memberOf: CN=Okta_Users,OU=Restricted Apps,OU=Security Groups,OU=Company Objects,
 DC=americas,DC=company,DC=com
memberOf: CN=criemp,OU=Security Groups,OU=Company Objects,DC=americas,DC=company,DC=
 com
memberOf: CN=Company_JDEUser,OU=Security Groups,OU=Company Objects,DC=americas,DC=cr
 ay,DC=com
memberOf: CN=CF_Users,OU=Security Groups,OU=Company Objects,DC=americas,DC=company,D
 C=com
uSNChanged: XXXXXX1
co: United States
department: INTEGRATION
company: COMPANY INC. US
proxyAddresses: EUM:XXXXXX4;phone-context=Company Default Dial Plan.americas.company
 .com
proxyAddresses: sip:jsmith@company.com
proxyAddresses: smtp:jsmith@mail.us.company.com
proxyAddresses: smtp:jsmith@americas.company.com
proxyAddresses: smtp:jsmith@companyinc.mail.onmicrosoft.com
proxyAddresses: SMTP:jsmith@company.com
streetAddress: 0000 Main Street
employeeNumber: XXXX4
employeeType: INT
name: John Smith
objectGUID:: gVt4L0f6x0G0/mXBdB4VNw==
userAccountControl: 512
codePage: 0
countryCode: 840
scriptPath: logincfh1.bat
pwdLastSet: 130776551645676185
primaryGroupID: 513
objectSid:: AQUAAAAAAAUVAAAA2TH4Qg/4YB11uXVUXoAAAA==
accountExpires: 9223372036854775807
sAMAccountName: jsmith
division: XXXXXXXXXXXX Mgmt
sAMAccountType: 805306368
showInAddressBook: CN=All Users,CN=All Address Lists,CN=Address Lists Containe
 r,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas,
 DC=company,DC=com
showInAddressBook: CN=All Types,CN=All Address Lists,CN=Address Lists Containe
 r,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas,
 DC=company,DC=com
showInAddressBook: CN=Default Global Address List,CN=All Global Address Lists,
 CN=Address Lists Container,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=C
 onfiguration,DC=americas,DC=company,DC=com
legacyExchangeDN: /o=Company Inc/ou=Exchange Administrative Group (FYDIBOHF23SPDL
 T)/cn=Recipients/cn=John Smith1f1
userPrincipalName: jsmith@company.com
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=americas,DC=company,DC=co
 m
lastLogonTimestamp: 130782457731331427
uid: jsmith
mail: jsmith@company.com
manager: CN=Manager Name,OU=CF,OU=Users,OU=Company Objects,DC=americas,DC=company,DC
 =com
departmentNumber: 667201
thumbnailPhoto:: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLD
 .....
 BJNO41iytgkc05RxRRQC3DHNBXIwcUUUDRDHw7Iee9ScmiiglDHHPNOUfIDRRTGtyJSfmI4IPFe86
 XI95pFjcsfmlgRj9SKKKaOersiz5TB15HJoooqjA//Z
msExchVersion: 44220983382016
msRTCSIP-OptionFlags: 257
msExchUMPinChecksum:: zSsiM98jUShV+Faijuaiwabnc60AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 AAAA==
msExchUMRecipientDialPlanLink: CN=Company Default Dial Plan,CN=UM DialPlan Contai
 ner,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=america
 s,DC=company,DC=com
msExchRecipientTypeDetails: 1
gidNumber: 12790
homeMDB: CN=CF-Users1,CN=Databases,CN=Exchange Administrative Group (FYDIBOHF2
 3SPDLT),CN=Administrative Groups,CN=Company Inc,CN=Microsoft Exchange,CN=Service
 s,CN=Configuration,DC=americas,DC=company,DC=com
mailNickname: jsmith
msExchMailboxGuid:: eTxQ5P++f0ycbI2yrl6YGQ==
msRTCSIP-PrimaryUserAddress: sip:jsmith@company.com
msExchWhenMailboxCreated: 20150522223021.0Z
msExchRBACPolicyLink: CN=Default Role Assignment Policy,CN=Policies,CN=RBAC,CN
 =Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas,DC=c
 ray,DC=com
msExchTextMessagingState: 302120705
msExchTextMessagingState: 16842751
uidNumber: 14051
msExchMailboxSecurityDescriptor:: AQAEgBQAAAAgAAAAAAAAACwAAAABAQAAAAAABQoAAAAB
 AQAAAAAABQoAAAAEABwAAQAAAAACFAABAAIAAQEAAAAAAAUKAAAA
msExchUMDtmfMap: reversedPhone:XXXXXXXXXX1+
msExchUMDtmfMap: emailAddress:XXXXXXX8
msExchUMDtmfMap: lastNameFirstName:XXXXXXXXXXX6
msExchUMDtmfMap: firstNameLastName:XXXXXXXXXXX8
msSFU30NisDomain: americas
msRTCSIP-DeploymentLocator: SRV:
msRTCSIP-UserEnabled: TRUE
protocolSettings:: UE9QM8KnMMKnMcKnwqfCp8KnwqfCp8KnwqfCp8Kn
msExchUMEnabledFlags: 831
msRTCSIP-PrimaryHomeServer: CN=Lc Services,CN=Microsoft,CN=1:1,CN=Pools,CN=RTC
  Service,CN=Microsoft,CN=System,DC=americas,DC=company,DC=com
msExchPoliciesIncluded: aa56ec1b-d500-422d-9127-22f95ce9365a
msExchPoliciesIncluded: {26491cfc-9e50-4857-861b-0cb8df22b5d7}
homeMTA: CN=Microsoft MTA,CN=CFWEX01,CN=Servers,CN=Exchange Administrative Gro
 up (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Company Inc,CN=Microsoft Exchan
 ge,CN=Services,CN=Configuration,DC=americas,DC=company,DC=com
loginShell: /bin/bash
msExchMailboxTemplateLink: CN=RRP,CN=ELC Mailbox Policies,CN=Company Inc,CN=Micro
 soft Exchange,CN=Services,CN=Configuration,DC=americas,DC=company,DC=com
msExchHomeServerName: /o=Company Inc/ou=Exchange Administrative Group (FYDIBOHF23
 SPDLT)/cn=Configuration/cn=Servers/cn=CFWEX01
mDBUseDefaults: TRUE
msExchOmaAdminWirelessEnable: 5
msExchUserAccountControl: 0
msSFU30Name: jsmith
unixHomeDirectory: /users/jsmith
msRTCSIP-FederationEnabled: TRUE
msExchUserCulture: en-US
msRTCSIP-UserPolicies: 0=1515264495
msExchRecipientDisplayType: 1073741824
msExchUMTemplateLink: CN=Company Default Dial Plan Default Policy,CN=UM Mailbox P
 olicies,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=ame
 ricas,DC=company,DC=com
msRTCSIP-InternetAccessEnabled: TRUE
etianen commented 9 years ago

I think that your LDAP_AUTH_USER_LOOKUP_FIELDS and LDAP_AUTH_USER_FIELDS settings are wrong.

LDAP_AUTH_USER_LOOKUP_FIELDS should be a tuple of django model fields that unique identify a user.

LDAP_AUTH_USER_FIELDS should be a mapping of django model fields to field names in LDAP.

On 18 Jun 2015, at 15:55, Brian Stewart notifications@github.com wrote:

Here is the sample LDAP record (with sensitive data changed):

extended LDIF

#

LDAPv3

base <OU=Users,OU=Company Objects,DC=Americas,DC=company,DC=com> with scope subtree

filter: sAMAccountName=jsmith

requesting: ALL

#

John Smith, CF, Users, Company Objects, americas.company.com

dn: CN=John Smith,OU=CF,OU=Users,OU=Company Objects,DC=americas,DC=company,DC=com objectClass: top objectClass: person objectClass: organizationalPerson objectClass: user cn: John Smith sn: Smith c: US l: Cityname st: WI title: Software Engineer businessCategory: Engineering postalCode: 00000 postOfficeBox: PO Box 0000 physicalDeliveryOfficeName: US-WI-Cityname telephoneNumber: +15555555555 givenName: John distinguishedName: CN=John Smith,OU=CF,OU=Users,OU=Company Objects,DC=americas ,DC=company,DC=com instanceType: 4 whenCreated: XXXXXXXXXXXXX0.0Z whenChanged: XXXXXXXXXXXXX2.0Z displayName: John Smith uSNCreated: XXXXXX9 memberOf: CN=Company_External_Email,OU=Distribution Groups,OU=Company Objects,DC=ame ricas,DC=company,DC=com memberOf: CN=Okta_Users,OU=Restricted Apps,OU=Security Groups,OU=Company Objects, DC=americas,DC=company,DC=com memberOf: CN=criemp,OU=Security Groups,OU=Company Objects,DC=americas,DC=company,DC= com memberOf: CN=Company_JDEUser,OU=Security Groups,OU=Company Objects,DC=americas,DC=cr ay,DC=com memberOf: CN=CF_Users,OU=Security Groups,OU=Company Objects,DC=americas,DC=company,D C=com uSNChanged: XXXXXX1 co: United States department: INTEGRATION company: COMPANY INC. US proxyAddresses: EUM:XXXXXX4;phone-context=Company Default Dial Plan.americas.company .com proxyAddresses: sip:jsmith@company.com proxyAddresses: smtp:jsmith@mail.us.company.com proxyAddresses: smtp:jsmith@americas.company.com proxyAddresses: smtp:jsmith@companyinc.mail.onmicrosoft.com proxyAddresses: SMTP:jsmith@company.com streetAddress: 0000 Main Street employeeNumber: XXXX4 employeeType: INT name: John Smith objectGUID:: gVt4L0f6x0G0/mXBdB4VNw== userAccountControl: 512 codePage: 0 countryCode: 840 scriptPath: logincfh1.bat pwdLastSet: 130776551645676185 primaryGroupID: 513 objectSid:: AQUAAAAAAAUVAAAA2TH4Qg/4YB11uXVUXoAAAA== accountExpires: 9223372036854775807 sAMAccountName: jsmith division: XXXXXXXXXXXX Mgmt sAMAccountType: 805306368 showInAddressBook: CN=All Users,CN=All Address Lists,CN=Address Lists Containe r,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas, DC=company,DC=com showInAddressBook: CN=All Types,CN=All Address Lists,CN=Address Lists Containe r,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas, DC=company,DC=com showInAddressBook: CN=Default Global Address List,CN=All Global Address Lists, CN=Address Lists Container,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=C onfiguration,DC=americas,DC=company,DC=com legacyExchangeDN: /o=Company Inc/ou=Exchange Administrative Group (FYDIBOHF23SPDL T)/cn=Recipients/cn=John Smith1f1 userPrincipalName: jsmith@company.com objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=americas,DC=company,DC=co m lastLogonTimestamp: 130782457731331427 uid: jsmith mail: jsmith@company.com manager: CN=Manager Name,OU=CF,OU=Users,OU=Company Objects,DC=americas,DC=company,DC =com departmentNumber: 667201 thumbnailPhoto:: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLD ..... BJNO41iytgkc05RxRRQC3DHNBXIwcUUUDRDHw7Iee9ScmiiglDHHPNOUfIDRRTGtyJSfmI4IPFe86 XI95pFjcsfmlgRj9SKKKaOersiz5TB15HJoooqjA//Z msExchVersion: 44220983382016 msRTCSIP-OptionFlags: 257 msExchUMPinChecksum:: zSsiM98jUShV+Faijuaiwabnc60AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAA== msExchUMRecipientDialPlanLink: CN=Company Default Dial Plan,CN=UM DialPlan Contai ner,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=america s,DC=company,DC=com msExchRecipientTypeDetails: 1 gidNumber: 12790 homeMDB: CN=CF-Users1,CN=Databases,CN=Exchange Administrative Group (FYDIBOHF2 3SPDLT),CN=Administrative Groups,CN=Company Inc,CN=Microsoft Exchange,CN=Service s,CN=Configuration,DC=americas,DC=company,DC=com mailNickname: jsmith msExchMailboxGuid:: eTxQ5P++f0ycbI2yrl6YGQ== msRTCSIP-PrimaryUserAddress: sip:jsmith@company.com msExchWhenMailboxCreated: 20150522223021.0Z msExchRBACPolicyLink: CN=Default Role Assignment Policy,CN=Policies,CN=RBAC,CN =Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=americas,DC=c ray,DC=com msExchTextMessagingState: 302120705 msExchTextMessagingState: 16842751 uidNumber: 14051 msExchMailboxSecurityDescriptor:: AQAEgBQAAAAgAAAAAAAAACwAAAABAQAAAAAABQoAAAAB AQAAAAAABQoAAAAEABwAAQAAAAACFAABAAIAAQEAAAAAAAUKAAAA msExchUMDtmfMap: reversedPhone:XXXXXXXXXX1+ msExchUMDtmfMap: emailAddress:XXXXXXX8 msExchUMDtmfMap: lastNameFirstName:XXXXXXXXXXX6 msExchUMDtmfMap: firstNameLastName:XXXXXXXXXXX8 msSFU30NisDomain: americas msRTCSIP-DeploymentLocator: SRV: msRTCSIP-UserEnabled: TRUE protocolSettings:: UE9QM8KnMMKnMcKnwqfCp8KnwqfCp8KnwqfCp8Kn msExchUMEnabledFlags: 831 msRTCSIP-PrimaryHomeServer: CN=Lc Services,CN=Microsoft,CN=1:1,CN=Pools,CN=RTC Service,CN=Microsoft,CN=System,DC=americas,DC=company,DC=com msExchPoliciesIncluded: aa56ec1b-d500-422d-9127-22f95ce9365a msExchPoliciesIncluded: {26491cfc-9e50-4857-861b-0cb8df22b5d7} homeMTA: CN=Microsoft MTA,CN=CFWEX01,CN=Servers,CN=Exchange Administrative Gro up (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Company Inc,CN=Microsoft Exchan ge,CN=Services,CN=Configuration,DC=americas,DC=company,DC=com loginShell: /bin/bash msExchMailboxTemplateLink: CN=RRP,CN=ELC Mailbox Policies,CN=Company Inc,CN=Micro soft Exchange,CN=Services,CN=Configuration,DC=americas,DC=company,DC=com msExchHomeServerName: /o=Company Inc/ou=Exchange Administrative Group (FYDIBOHF23 SPDLT)/cn=Configuration/cn=Servers/cn=CFWEX01 mDBUseDefaults: TRUE msExchOmaAdminWirelessEnable: 5 msExchUserAccountControl: 0 msSFU30Name: jsmith unixHomeDirectory: /users/jsmith msRTCSIP-FederationEnabled: TRUE msExchUserCulture: en-US msRTCSIP-UserPolicies: 0=1515264495 msExchRecipientDisplayType: 1073741824 msExchUMTemplateLink: CN=Company Default Dial Plan Default Policy,CN=UM Mailbox P olicies,CN=Company Inc,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=ame ricas,DC=company,DC=com msRTCSIP-InternetAccessEnabled: TRUE

— Reply to this email directly or view it on GitHub.

thecodesmith commented 9 years ago

Thanks for looking into it. It's definitely possible I got those mixed up. I will test as soon as I have a chance and update with the results.