Exchange Provisioning LDAP-Felder

Exchange nutzt natürlich das Active Directory zur Speicherung seiner Konfigurationsdaten. Auf dieser Seite widme ich den Feldern, die Exchange bei der Aktivierung eines Benutzers, Kontakte oder einer Gruppe schreibt. Ich habe dazu mit der MMC für Benutzer und Computer jeweils ein "Minimalobjekt" anlegt, welches nur die absolut erforderlichen Fehler hat und dann diese Objekte mit den Exchange Commandlets für Exchange aktiviert.

Diese IST-Aufnahme wurde mit Exchange 2010 auf Windows 2008 erhoben. Es gibt hier also keinen RUS mehr, der nachfolgend noch etwas an den Feldern dreht. Es kann aber sein, dass neuere Exchange oder AD-Management-Tools weitere Felder setzen.

Gemäß Microsoft ist es nicht unterstützt, die Exchange Properties per LDAP selbst direkt zu verändern. Der offiziell einzige Weg ist die Verwaltung per Exchange Powershell oder ECP.

Achtung
Diese Liste enthält die Felder, die bei einen Enable-* minimal addiert werden. Bei einem "Disable-* werden durchaus weitere Felder, z.B. "ExtensionAttributes" mit gelöscht.

Mailbox

Zuerst habe ich einen minimalen Benutzer angelegt, der nur die absolut notwendigen Daten und die dann folgende Aktivierung für Exchange

Feld Wert Enable-Mailbox

dn

CN=User,OU=test,DC=E2010,DC=local

CN=User,OU=test,DC=E2010,DC=local

changetype

add

add

objectClass

top

top

objectClass

person

person

objectClass

organizationalPerson

organizationalPerson

objectClass

User

User

cn

MailboxUser

MailboxUser

distinguishedName

CN=MailboxUser,OU=test,DC=E2010,DC=local

CN=MailboxUser,OU=test,DC=E2010,DC=local

instanceType

4

4

whenCreated

20160320221915.0Z

20160320221915.0Z

whenChanged

20160320221915.0Z

20160320222724.0Z

displayName

MailboxUser

MailboxUser

uSNCreated

1472119

1472119

uSNChanged

1472124

1472152

name

MailboxUser

MailboxUser

objectGUID

uydmtQKdaEGUHR4+txcgGw==

uydmtQKdaEGUHR4+txcgGw==

UserAccountControl

512

512

badPwdCount

0

0

codePage

0

0

countryCode

0

0

badPasswordTime

0

0

lastLogoff

0

0

lastLogon

0

0

pwdLastSet

0

0

primaryGroupID

513

513

objectSid

AQUA...AAA==

AQUA...AAA==

accountExpires

9223372036854775807

9223372036854775807

logonCount

0

0

sAMAccountName

MailboxUser

MailboxUser

sAMAccountType

805306368

805306368

UserPrincipalName

MailboxUser@E2010.local

MailboxUser@E2010.local

objectCategory

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

dSCorePropagationData

16010101000000.0Z

16010101000000.0Z

proxyAddresses

SMTP:MailboxUser@e2010.local

showInAddressBook

CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

showInAddressBook

CN=All Users,CN=All Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

legacyExchangeDN

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=User12f

mail

MailboxUser@e2010.local

msExchWhenMailboxCreated

20160320222724.0Z

homeMTA

CN=Microsoft MTA,CN=W2K8R2E2010,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

msExchMailboxSecurityDescriptor

AQAEg.........AA

msExchVersion

44220983382016

msExchUMDtmfMap

emailAddress8737

msExchUMDtmfMap

lastNameFirstName8737

msExchUMDtmfMap

firstNameLastName8737

msExchRecipientTypeDetails

1

msExchHomeServerName

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=W2K8R2E2010

msExchRecipientDisplayType

1073741824

mDBUseDefaults

TRUE

msExchRBACPolicyLink

CN=Default Role Assignment Policy,CN=Policies,CN=RBAC,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

mailNickname

User

msExchMailboxGuid

HYEjIyuctkSdVb7mtZiKIw==

homeMDB

CN=MB1,CN=Databases,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

msExchUserAccountControl

0

msExchPoliciesIncluded

4b15b55c-a56f-45b3-b215-f76fc0049458

msExchPoliciesIncluded

{26491cfc-9e50-4857-861b-0cb8df22b5d7}

Hier sind keine Überraschungen zu sehen.

Remote Mailbox

Eine Besonderheit sind Postfächer, die in Office 365 angelegt werden. On-Prem ist es ein AD-User, der aber direkt in der Cloud provisioniert wird

Feld Wert Enable-RemoteMailbox

dn

CN=RemoteMailbox,OU=test,DC=E2010,DC=local

CN=RemoteMailbox,OU=test,DC=E2010,DC=local

changetype

add

add

objectClass

top

top

objectClass

person

person

objectClass

organizationalPerson

organizationalPerson

objectClass

User

User

cn

RemoteMailbox

RemoteMailbox

distinguishedName

CN=RemoteMailbox,OU=test,DC=E2010,DC=local

CN=RemoteMailbox,OU=test,DC=E2010,DC=local

instanceType

4

4

whenCreated

20160320225436.0Z

20160320225436.0Z

whenChanged

20160320225437.0Z

20160320233543.0Z

displayName

RemoteMailbox

RemoteMailbox

uSNCreated

1472211

1472211

uSNChanged

1472211

1472217

name

RemoteMailbox

RemoteMailbox

objectGUID

Vpyr3wzQREaGIri74vDLTg==

Vpyr3wzQREaGIri74vDLTg==

UserAccountControl

512

512

badPwdCount

0

0

codePage

0

0

countryCode

0

0

badPasswordTime

0

0

lastLogoff

0

0

lastLogon

0

0

pwdLastSet

0

0

primaryGroupID

513

513

objectSid

AQUA...AAA==

AQUA...AAA==

accountExpires

9223372036854775807

9223372036854775807

logonCount

0

0

sAMAccountName

RemoteMailbox

RemoteMailbox

sAMAccountType

805306368

805306368

UserPrincipalName

RemoteMailbox@E2010.local

RemoteMailbox@E2010.local

objectCategory

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

dSCorePropagationData

16010101000000.0Z

16010101000000.0Z

proxyAddresses

SMTP:RemoteMailbox@e2010.local

proxyAddresses

smtp:RemoteMailbox@carius.onmicrosoft.com

showInAddressBook

CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

showInAddressBook

CN=All Users,CN=All Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

legacyExchangeDN

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=RemoteMailbox938

mail

RemoteMailbox@e2010.local

targetAddress

SMTP:RemoteMailbox@carius.onmicrosoft.com

msExchVersion

44220983382016

msExchRemoteRecipientType

1

msExchUMDtmfMap

emailAddress78737

msExchUMDtmfMap

lastNameFirstName78737

msExchUMDtmfMap

firstNameLastName78737

msExchRecipientTypeDetails

2147483648

msExchRecipientDisplayType

-2147483642

mailNickname

RemoteMailbox

msExchPoliciesIncluded

4b15b55c-a56f-45b3-b215-f76fc0049458

msExchPoliciesIncluded

{26491cfc-9e50-4857-861b-0cb8df22b5d7}

Im Vergleich zur normalen Mailbox auf dem lokalen Exchange Server habe ich die Abweichungen blau kenntlich gemacht.

MailUser

Ein MailUser ist ein aktives Anmeldekonto, welches aber sein Postfach nicht in der lokalen Exchange Umgebung hat, sondern extern. Dies ist ein klassischer Fall, wenn externe Personen für eine Firma arbeiten, die ein Anmeldekonto benötigen aber ihre Mails in einem anderen System bearbeiten, sie aber dennoch in der Adressliste erscheinen und in Verteilern Mitglied sein können.

Feld Wert Enable-MailUser

dn

CN=MailUser,OU=test,DC=E2010,DC=local

CN=MailUser,OU=test,DC=E2010,DC=local

changetype

add

add

objectClass

top

top

objectClass

person

person

objectClass

organizationalPerson

organizationalPerson

objectClass

User

User

cn

MailUser

MailUser

distinguishedName

CN=MailUser,OU=test,DC=E2010,DC=local

CN=MailUser,OU=test,DC=E2010,DC=local

instanceType

4

4

whenCreated

20160320222712.0Z

20160320222712.0Z

whenChanged

20160320222712.0Z

20160320222822.0Z

displayName

MailUser

MailUser

uSNCreated

1472143

1472143

uSNChanged

1472143

1472156

name

MailUser

MailUser

objectGUID

PC5e/YhyR0KzgNLc5kphdg==

PC5e/YhyR0KzgNLc5kphdg==

UserAccountControl

512

512

badPwdCount

0

0

codePage

0

0

countryCode

0

0

badPasswordTime

0

0

lastLogoff

0

0

lastLogon

0

0

pwdLastSet

0

0

primaryGroupID

513

513

objectSid

AQUA..AAA==

AQUA...AA==

accountExpires

9223372036854775807

9223372036854775807

logonCount

0

0

sAMAccountName

MailUser

MailUser

sAMAccountType

805306368

805306368

UserPrincipalName

MailUser@E2010.local

MailUser@E2010.local

objectCategory

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

dSCorePropagationData

16010101000000.0Z

16010101000000.0Z

proxyAddresses

smtp:MailUser@e2010.local

proxyAddresses

SMTP:MailUser@example.com

showInAddressBook

CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

showInAddressBook

CN=All Users,CN=All Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

legacyExchangeDN

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=MailUser23c

mail

MailUser@example.com

targetAddress

SMTP:MailUser@example.com

msExchVersion

44220983382016

msExchUMDtmfMap

emailAddress68737

msExchUMDtmfMap

lastNameFirstName68737

msExchUMDtmfMap

firstNameLastName68737

msExchRecipientTypeDetails

128

msExchRecipientDisplayType

6

internetEncoding

1310720

mailNickname

MailUser

msExchPoliciesIncluded

4b15b55c-a56f-45b3-b215-f76fc0049458

msExchPoliciesIncluded

{26491cfc-9e50-4857-861b-0cb8df22b5d7}

 

MailContact

Ein Mailkontakt ist zu einem MailUser vergleichbar, nur dass er kein Anmeldekonto hat, Dieser Benutzer erscheint also nur im Adressbuch aber kann sich nicht an der Domäne anmelden.

Feld Wert Enable-Mailcontact

dn

CN=Contact,OU=test,DC=E2010,DC=local

CN=Contact,OU=test,DC=E2010,DC=local

changetype

add

add

objectClass

top

top

objectClass

person

person

objectClass

organizationalPerson

organizationalPerson

objectClass

contact

contact

cn

MailContact

MailContact

distinguishedName

CN=MailContact,OU=test,DC=E2010,DC=local

CN=MailContact,OU=test,DC=E2010,DC=local

instanceType

4

4

whenCreated

20160320221929.0Z

20160320221929.0Z

whenChanged

20160320221929.0Z

20160320222739.0Z

uSNCreated

1472125

1472125

uSNChanged

1472125

1472153

name

MailContact

MailContact

objectGUID

9no6yT/ZDkWCdlR6FFPGSQ==

9no6yT/ZDkWCdlR6FFPGSQ==

objectCategory

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

CN=Person,CN=Schema,
CN=Configuration,DC=E2010,DC=local

dSCorePropagationData

16010101000000.0Z

16010101000000.0Z

displayName

MailContact

proxyAddresses

smtp:MailContact@e2010.local

proxyAddresses

SMTP:extern@example.com

showInAddressBook

CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

showInAddressBook

CN=All Contacts,CN=All Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

legacyExchangeDN

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=Contact272

mail

extern@example.com

targetAddress

SMTP:extern@example.com

msExchVersion

44220983382016

msExchUMDtmfMap

emailAddress398376

msExchUMDtmfMap

lastNameFirstName2668228

msExchUMDtmfMap

firstNameLastName2668228

msExchRecipientDisplayType

6

internetEncoding

1310720

mailNickname

MailContact

msExchPoliciesIncluded

4b15b55c-a56f-45b3-b215-f76fc0049458

msExchPoliciesIncluded

{26491cfc-9e50-4857-861b-0cb8df22b5d7}

Er unterscheidet sich zum MailUser eigentlich nur im Fehlen des Feldes "msExchRecipient TypeDetails".

Gruppe

In diesem Beispiel habe ich eine "Universal Security Group" als Basis genommen. Exchange unterstützt nur universelle Gruppen. Sie müssen aber nicht unbedingt auch eine SID haben. Reine "Verteilergruppen" gehen auch, die aber zu Securitygruppen werden, sobald diese für die Vergabe von Berechtigungen z.B. auf öffentlichen Ordnern oder Postfächern genutzt werden.

Feld Wert Enable-Distributiongroup

dn

CN=group,OU=test,DC=E2010,DC=local

CN=group,OU=test,DC=E2010,DC=local

changetype

add

add

objectClass

top

top

objectClass

group

group

cn

group

group

distinguishedName

CN=group,OU=test,DC=E2010,DC=local

CN=group,OU=test,DC=E2010,DC=local

instanceType

4

4

whenCreated

20160320221852.0Z

20160320221852.0Z

whenChanged

20160320221852.0Z

20160320222854.0Z

uSNCreated

1472109

1472109

uSNChanged

1472109

1472159

name

group

group

objectGUID

g3jnObdyvk24wRpJ92fdmQ==

g3jnObdyvk24wRpJ92fdmQ==

objectSid

AQUA....AAA==

AQUA....AAA==

sAMAccountName

group

group

sAMAccountType

268435456

268435456

groupType

-2147483640

-2147483640

objectCategory

CN=Group,CN=Schema,
CN=Configuration,DC=E2010,DC=local

CN=Group,CN=Schema,
CN=Configuration,DC=E2010,DC=local

dSCorePropagationData

16010101000000.0Z

16010101000000.0Z

proxyAddresses

SMTP:group@e2010.local

showInAddressBook

CN=Default Global Address List,CN=All Global Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

showInAddressBook

CN=All Groups,CN=All Address Lists,CN=Address Lists Container,CN=E2010Org,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=E2010,DC=local

legacyExchangeDN

/o=E2010Org/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=group153

mail

group@e2010.local

msExchRequireAuthToSendTo

TRUE

msExchVersion

44220983382016

msExchRecipientDisplayType

1073741833

reportToOriginator

TRUE

mailNickname

group

msExchPoliciesIncluded

4b15b55c-a56f-45b3-b215-f76fc0049458

msExchPoliciesIncluded

{26491cfc-9e50-4857-861b-0cb8df22b5d7}

 

Disable-* (Deprovisioning)

Achtung
Beim Deprovisionieren von Exchange Objekten mit Disable-* werden nicht nur die oben genannten minimalen Attribute entfernt, sondern auch weitere Fehler, die prinzipiell von Exchange verwaltet aber oft zweckentfremdet werden. z.B. "ExtensionAttributes"

Aus dem Grund kann es sinnvoll sein, den "Disable" manuell zu machen. Es ist natürlich etwas mehr Arbeit als die Exchange Commandlets zu nutzen und man sollte auch sehr sicher sein, welche Attribute gelöscht werden dürfen und "Supported" ist es sowieso nicht.

Wenn Sie aber den letzten Exchange Server deinstallieren wollen, keinen Hybrid-Mode mit der Cloud haben etc., dann kann dies helfen.

Set-ADUser `
   -identity altuser@msxfaq.de `
   -Clear  mail, `
           HomeMDB, `
           HomeMTA, `
           legacyExchangeDN, `
           mDBUseDefaults, `
           msExchMailboxAuditEnable, `
           msExchAddressBookFlags, `
           msExchArchiveQuota, `
           msExchArchiveWarnQuota, `
           msExchBypassAudit, `
           msExchDisabledArchiveDatabaseLink, `
           msExchDisabledArchiveGUID, `
           msExchDumpsterQuota, `
           msExchDumpsterWarningQuota, ` 
           msExchHomeServerName, `
           msExchMailboxAuditEnable, `
           msExchMailboxAuditLogAgeLimit, `
           msExchMailboxGuid, `
           msExchMailboxSecurityDescriptor, `
           msExchMDBRulesQuota, `
           msExchModerationFlags, `
           msExchOmaAdminWirelessEnable, `
           msExchPreviousRecipientTypeDetails, `
           msExchPoliciesIncluded, `
           msExchPoliciesExcluded, `
           msExchProvisioningFlags, `
           msExchRBACPolicyLink, `
           msExchRecipientDisplayType, `
           msExchRecipientSoftDeletedStatus", `
           msExchRecipientTypeDetails, `
           msExchRemoteRecipientType, `
           msExchTransportRecipientSettingsFlags, `
           msExchUMDtmfMap, `
           msExchUMEnabledFlags2, `
           msExchUserAccountControl, `
           msExchVersion, ` 
           msExchWhenMailboxCreated, `
           protocolSettings, `
           proxyAddresses, `
           showInAddressBook, `
           targetAddress, `
           mailNickname
reportToOriginator
internetEncoding
}

Der Code deaktiviert einen Benutzer (Mailbox, RemoteMailbox, RoomMailbox, SharedMailbox) aber lässt z.B. die ExtensionAttributes0-15 unberührt. Sie können auch noch Mail und ProxyAddresses entfernen, wenn Sie die diese Informationen für andere Zwecke benötigen.

Ein für Exchange relevantes Objekt muss zumindest einen "MailNickname" haben.

Weitere Links