Wat is het Active Directory-schema. Schemamaster - Active Directory-schemamaster

Het schema bevat een formele beschrijving van de inhoud en structuur van de Active Directory-database. In het bijzonder worden alle eigenschappen van objecten en hun klassen vermeld. Voor elke klasse van objecten worden alle mogelijke eigenschappen, aanvullende parameters, en ook welke klasse van objecten de voorouder van de huidige klasse is en kan zijn, gedefinieerd.

Active Directory installeren, wordt op de eerste domeincontroller een standaardschema gemaakt dat een beschrijving bevat van de meest gebruikte objecten en objecteigenschappen. Daarnaast geeft het diagram een ​​beschrijving van de interne objecten en eigenschappen van Active Directory.

Het schema is uitbreidbaar, dus de systeembeheerder kan nieuwe typen objecten en hun eigenschappen maken, nieuwe eigenschappen toevoegen voor de objecten die al bestaan. Het schema is ingesloten en samen met Active Directory opgeslagen in de globale catalogus. Het wordt automatisch bijgewerkt, zodat een speciaal gemaakte applicatie er zelfstandig nieuwe eigenschappen en klassen aan kan toevoegen.
Het uitbreiden van een standaardschema is niet eenvoudig. Het onjuist wijzigen van het schema kan zowel de server als de volledige directoryservice verstoren. Om dit probleem op te lossen dient men over de nodige ervaring en kennis te beschikken. U moet dus allereerst de naamgevingsregels kennen.

Naamgevingsregels

Elk Active Directory-object heeft een specifieke naam. Er worden verschillende naamgevingsschema's gebruikt om objecten in Active Directory te identificeren, namelijk:

Distinguished Names (DN)
Relatieve Distinguished Names (RDN)
-globale unieke identifiers (GUID's);
- Primaire gebruikersnamen (UPN).

Elk Active Directory-object heeft: samengestelde naam... De naam is een identificatie voor het object en bevat voldoende gegevens om het object in de directory te lokaliseren. De DN-naam omvat de naam van het domein dat het object bevat en het volledige pad ernaartoe. De samengestelde gebruikersnaam Andrew Kushnir op het server.com-domein kan er bijvoorbeeld als volgt uitzien:
DC = COM / DC = SERVER / CN = Gebruikers / CK = Andrew Kushnir

Als de volledig gekwalificeerde naam van een object onbekend of gewijzigd is, kunt u het object vinden aan de hand van zijn eigenschappen, waaronder de relatieve DN-naam (onderdeel van de DN-naam). In het vorige voorbeeld zou de relatieve DN-naam voor het Andrew Kushnir-object CK = Andrew Kushnir zijn, en voor het bovenliggende object CN = Usere.

Naast de DN-naam heeft elk Active Directory-object heeft een wereldwijd unieke identificatie (GUID), wat een 128-bits getal is. De identifier verandert niet, zelfs niet nadat het object is verplaatst of hernoemd. Een wereldwijd unieke identifier is uniek in alle domeinen, ook wanneer een object van het ene domein naar het andere wordt verplaatst.
De gemakkelijkste manier om te onthouden is de primaire naam van de gebruiker (UPN). De basisnaam bestaat uit de afgekorte gebruikersnaam plus de DNS-naam van het domein waar het object zich bevindt. De indeling van de primaire naam van de gebruiker is als volgt:

Gebruikersnaam, DNS-domeinachtervoegsel

De primaire gebruikersnaam is bijvoorbeeld Andrew Kushnir op de server. sojabonen zouden eruit kunnen zien als [e-mail beveiligd] De hoofdnaam van de gebruiker is onafhankelijk van de DN-naam van de gebruiker, dus het gebruikersobject kan worden verplaatst of hernoemd zonder dat de aanmeldingsnaam van de gebruiker in het domein hoeft te worden gewijzigd.

Het belang van het "Active Directory Schema" voor netwerken die bovenop een Active Directory-domeinomgeving zijn gebouwd, is moeilijk te onderschatten. Dit is de basis van de AD-technologie en het is erg belangrijk om de principes van de werking ervan goed te begrijpen. De meeste systeembeheerders besteden onvoldoende aandacht aan de regeling omdat ze er zelden mee te maken hebben. In dit artikel zal ik je vertellen wat een schemaversie is, waarom we deze moeten kennen en, belangrijker nog, hoe je de huidige versie kunt bekijken. Allereerst een paar woorden over het schema zelf, elk object dat in Active Directory is gemaakt, of het nu een gebruiker of een computer is, heeft bepaalde parameters die attributen worden genoemd. Het eenvoudigste voorbeeld is het attribuut "Achternaam" van het gebruikersobject. Het schema definieert welke objecten we in Active Directory kunnen maken en welke attributen ze zullen hebben.Active Directory maakt het gebruik van meerdere domeincontrollers binnen dezelfde organisatie mogelijk, gebouwd op basis van verschillende versies van Windows. Namelijk - gebaseerd op Windows Server 2000, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008. Aangezien deze versies in verschillende jaren zijn uitgebracht en elke nieuwe versie meer functionaliteit bevat dan de vorige, is het begrip van het schema anders voor elk besturingssysteem. Daarom moest u bij het toevoegen van een nieuwe controller op basis van Windows Server 2008 aan een organisatie waar bestaande controllers zijn gebaseerd op Windows Server 2003 het hulpprogramma uitvoeren " Adprep“. Door dit te doen, hebt u uw organigram bijgewerkt tot het niveau waarmee het werkt. Windows Server 2008.

Het schema-upgradeproces is uitgevoerd voordat de eerste Windows Server 2008-controller werd geïnstalleerd en de eigenlijke procedure voor het installeren van een nieuwe controller is mogelijk niet uitgevoerd. Als u net begint te werken met een soort Active Directory-organisatie en niet weet welke acties zijn uitgevoerd voordat u lid werd, moet u, om de volledigheid van de structuur te begrijpen, weten op welk niveau het schema van de huidige organisatie werkt.

Postsponsor

Allemaal nieuwe releases, de beste films uit het verleden. De beste favoriete films op 5ic.ru

Mogelijke schemaversies:

13 - Windows 2000-server
30 - Windows Server 2003 RTM, Windows 2003 Met Service Pack 1, Windows 2003 Met Service Pack 2
31 - Windows Server 2003 R2
44 - Windows Server 2008 RTM

Zelfs als alle controllers in uw organisatie op Windows Server 2003 R2 draaien en de schemaversie "44" toont, zou het u niet moeten verbazen, dit betekent dat het schema al is geüpgraded naar het Windows Server 2008 RTM-niveau, maar de controller zelf om de een of andere reden hebben ze het niet voor een reden geïnstalleerd.

Er zijn verschillende manieren om de schematische versie te bekijken. De eenvoudigste methode is het gebruik van het hulpprogramma "DSQuery". Voer hiervoor in de opdrachtregel een opdracht in met de volgende parameters:

"Dsquery * cn = schema, cn = configuratie, dc = domeinnaam, dc = local -scope base -attr objectVersion"

Uiteraard in het deel “ dc = domeinnaam, dc = lokaal " u moet uw eigen domeinnaam vervangen. (Voorbeeld: dc = microsoft, dc = com )

Het resultaat van het invoeren van de opdracht is om het attribuut " ObjectVersie", Wat het versienummer van het schema zal zijn:

Rijst. een De schemaversie ophalen via het hulpprogramma "DSQuery".

De tweede methode is langer en omvat het gebruik van een snap “ ADSIBewerken. msc... Om de versie van het schema te bekijken, moet u verbinding maken met de Active Directory-sectie van het schema.

CN = Schema, CN = Configuratie, DC = domein, DC = lokaal

En zoek de waarde van het attribuut “ objectVersie“.

Figuur 2 De versie van het schema ophalen via de module " ADSIBewerken. msc“.

Als u de versie van het schema kent, kunt u altijd met vertrouwen zeggen of het schema moet worden bijgewerkt en, indien nodig, tot welk niveau.

Opgemerkt moet worden dat schema-updates kunnen worden uitgevoerd door software die nauw is geïntegreerd met Active Directory. Het meest opvallende voorbeeld van Microsoft Exchange Server. En vaak is het in een organisatie die van plan is om Exchange Server te implementeren, noodzakelijk om uit te zoeken of het schema is opgesteld? En zo ja, welke versie van Exchange Server. Momenteel zijn er drie versies van Exchange die werken met Active Directory, maar er zijn zes opties om het schema te wijzigen.

U kunt begrijpen of het Exchange Active Directory-schema door de server is gewijzigd door het kenmerk " bereikBovenste ", die het volgende kost: waarden:

4397 - Exchange Server 2000 RTM
4406 - Exchange Server 2000 met Service Pack 3
6870 - Exchange Server 2003 RTM
6936 - Exchange Server 2003 met Service Pack 3
10628 - Exchange Server 2007
11116 - Exchange 2007 met Service Pack 1

Zoals u kunt zien, vindt de schema-update ook plaats wanneer u een set updates SP3 voor Exchange Server 2000/2003 en SP1 voor Exchange 2007 installeert.

Bekijk de waarde van het attribuut " bereikBovenste " u kunt het hulpprogramma DSQuery gebruiken:

"Dsquery * CN = ms-Exch-Schema-Version-Pt, cn = schema, cn = configuratie, dc = domeinnaam, dc = local -scope base -attr rangeUpper"

Rijst. 3 Het attribuut krijgen " bereikBovenste " via het DSQuery-hulpprogramma.

Als na het invoeren van deze opdracht een antwoord wordt geretourneerd dat de afwezigheid van het kenmerk " bereikBovenste " kan worden geconcludeerd dat de regeling niet is gewijzigd.

Het schema-updateproces is erg belangrijk voor elke Active Directory-organisatie, dus onnodige, onnodige stappen moeten worden vermeden. De essentie van de attributen begrijpen “ objectVersie" en « bereikBovenste " geeft de technicus een voordeel bij het werken met Active Directory in een onbekende organisatie, en is ook een hulpmiddel bij het oplossen van problemen.

De FSMO-rol Schemamaster is een van de twee rollen die op het Active Directory-forestniveau werken. Dat wil zeggen, u hebt slechts één schemamaster nodig in het hele AD-forest.

Het hoofdartikel over Active Directory is. Lees ook andere artikelen over Operations Master Rollen -.

Als u geïnteresseerd bent in het onderwerp Windows Server, raad ik u aan de sectie op mijn blog te raadplegen.

Schemamaster - Active Directory-schemamaster

Wist u dat als het AD-schema beschadigd is, u alle cd's in het hele forest moet herstellen? Maar dit is inderdaad het geval. Wees daarom zeer voorzichtig bij het aanbrengen van wijzigingen in het schema. Ondertussen een beetje theorie.

Theorie

Aangezien de schema-eigenaar een rol op forestniveau is, bestaat deze altijd in elk specifiek AD-forest. in één exemplaar... Met andere woorden, er is slechts één domeincontroller die het recht heeft om wijzigingen / updates aan het schema aan te brengen, niettemin is er een replica van het schema aanwezig op elke domeincontroller en kan de rol, indien nodig, met geweld worden overgenomen door elke DC , maar daarover later meer. In de praktijk zijn schemawijzigingen uiterst zeldzaam, bijvoorbeeld bij het installeren van Exchange Server of andere toepassingen die sommige van hun gegevens (zoals configuratieobjecten) in AD opslaan.

Allemaal hetzelfde wat is een AD-schema? Het is in de eerste plaats een set objecten en hun attributen die worden gebruikt om gegevens op te slaan. Deze definitie legt iets uit aan heel weinig mensen, ik zal proberen het je in meer detail te vertellen met een voorbeeld. Wat is een voorwerp? De objecten zijn bijvoorbeeld gebruikers- of computeraccounts. In dit geval bevat het AD-schema de klasse gebruiker die alle attributen van het gebruikersaccountobject definieert:

Elk gebruikersaccount in het domein heeft al deze kenmerken. Attribuutwaarden kunnen echter wel of niet worden opgegeven. U kunt controleren welke attributen en hun waarden mijn nieuw aangemaakte domeinbeheerdersaccount heeft. Om dit te doen, moet je naar de console gaan adsiedit.msc en open de standaard naamgevingscontext. Zoek het gebruikersobject in de hiërarchie en open de eigenschappen ervan:

U kunt zien dat het object alle kenmerken heeft die in de klasse zijn gedefinieerd gebruiker... Als je zelf hebt besloten om zeker te zijn van wat ik heb gezegd en je informatie verschilt, let dan op de knop Filter, is het mogelijk dat niet alle attributen voor u worden getoond. U kunt er bijvoorbeeld voor zorgen dat alleen attributen met waarden worden weergegeven. Objecten beheren via adsiedit.msc niet het beste idee, doe het via de juiste rigs.

Voor uw interesse kunt u kijken naar de kenmerken van het Exchange 2013-serverobject, omdat Exchange veel nieuwe klassen in het schema introduceert:

In de meeste gevallen worden vragen over de schemawizard omzeild en moet u weten dat deze rol verantwoordelijk is voor het aanbrengen van wijzigingen in het AD-schema. Het schema was echter oorspronkelijk zo ontworpen dat iedereen er wijzigingen in kon aanbrengen. Dat wil zeggen dat externe bedrijven hun applicaties zo kunnen ontwerpen dat ze hun gegevens in AD opslaan. Om dit te doen, zijn er veel omvangrijke gidsen over officiële bronnen, waarvan sommige ook in het Russisch beschikbaar zijn.

Beste praktijken

AD-schema is van fundamenteel belang voor de gezondheid van Active Directory en heeft daarom een ​​passend beheer nodig, hoewel het in de meeste gevallen gewoon wordt vergeten. De beste werkwijzen voor schemabeheer worden hieronder beschreven.

1) Alvorens het circuit te veranderen, altijd: maak een back-up... Voordat het schemawijzigingsproces begint, kunt u alle domeincontrollers afsluiten, behalve natuurlijk één die de master van deze rol is. Maak daarna een reservekopie van de domeincontroller, breng alle benodigde wijzigingen aan en als alles goed is gegaan, zet u gewoon de DC aan die eerder was gedempt. Als er iets mis is gegaan, haal dan de enige controller die op dit moment werkt uit de back-up, zet de rest aan en onderzoek het probleem verder;

Op forestniveau moeten de rollen van de schemamaster en de master voor domeinnamen zich op dezelfde domeincontroller bevinden (ze worden zelden gebruikt en moeten streng worden gecontroleerd). Bovendien moet een controller waaraan de rol van domeinnaamgevingsmaster is toegewezen, ook een globale-catalogusserver zijn. Anders kunnen sommige bewerkingen die gebruikmaken van de domeinnaamgevingsmaster (bijvoorbeeld het maken van kleinkinddomeinen) mislukken.

Een domeincontroller die de rol van schemamaster ondersteunt, moet daarom ook verantwoordelijk zijn voor de rol van domeinnaamgevingsmaster en moet de globale catalogus zijn.

3) Als u om de een of andere reden de hoofdserver van het schema bent kwijtgeraakt, kunt u op elke andere domeincontroller deze rol met geweld overnemen, maar onthoud dat daarna de originele de schema-eigenaar mag niet op het netwerk verschijnen.

4) Tenzij absoluut noodzakelijk breng schemawijzigingen niet handmatig aan... Als dit toch moet gebeuren, zie dan punt 1.

We gaan soepel van theorie naar praktijk.

Schema administratie

Allereerst moet worden gezegd dat om het schema te beheren, u op zijn minst de rechten moet hebben Schema Admin... Alle andere geautoriseerde gebruikers hebben alleen-lezen machtigingen, hoewel de machtigingen in principe kunnen worden gewijzigd. De meeste beheertaken worden uitgevoerd in de module voor het beheren van het Active Directory-schema, dat niet standaard beschikbaar is en om het te activeren, moet u de bibliotheek registreren schmmgmt.dll... Om dit te doen, start u de opdrachtregel met beheerdersrechten en voert u het volgende uit:

Visuele basis

regsvr32 schmmgmt.dll

regsvr32 schmmgmt. dll

We krijgen een melding:

Daarna in de console MMC je kunt een momentje vinden Active Directory-schema... De opdracht moet worden uitgevoerd op elke domeincontroller waarop u het schema wilt beheren.

Stel dat u twee domeincontrollers hebt en de rol van schemamaster wilt verplaatsen van DC01 naar DC02:

  1. Open de module op DC01, klik met de rechtermuisknop op Active Directory-schema en kies Wijzig domeincontroller Active Directory;
  2. Selecteer vervolgens de domeincontroller waarnaar we de rol willen overdragen (voor mij is dit DC02, standaard is de server die eigenaar is van de rol altijd geselecteerd). Wij bevestigen de waarschuwing;
  3. Klik nogmaals met de rechtermuisknop op Active Directory-schema, maar we zijn al aan het kiezen Operationeel meester...;
  4. Klik op de knop Wijzigen.

Daarna moet je je keuze bevestigen en een melding ontvangen over de succesvolle overdracht van de rol.

Hiermee is het overzicht van de fsmo-rol van schemamaster voltooid, misschien zal ik in de nabije toekomst het artikel aanvullen met instructies over hoe de inbeslagname van de rol door andere domeincontrollers kan worden geforceerd.

04/07/2011 Brian Desmond

Het is gewoon zo dat Active Directory (AD)-beheerders en IT-managers meestal op hun hoede zijn om het AD-schema uit te breiden. Veel van de angst komt voort uit de Windows 2000-documentatie van Microsoft, die schema-uitbreiding afschildert als een complexe operatie die uiterste voorzichtigheid vereist. Met een redelijke planning is schema-uitbreiding echter volledig risicovrij.

Het AD-schema definieert de structuur van de gegevens die in de directory zijn opgeslagen. AD ondersteunt native vele soorten objecten (bijvoorbeeld gebruikers) en kenmerken (bijvoorbeeld voor- en achternaam). Als het onderliggende AD-schema niet goed past bij de gegevens die u in de directory wilt opslaan, kunt u dit aanvullen met aangepaste objecten en attributen.

Doorgaans wordt het AD-schema om verschillende redenen uitgebreid, waarvan de meest voorkomende in veel organisaties de implementatie is van een toepassing waarvoor schema-uitbreiding vereist is. Een goed voorbeeld is Microsoft Exchange. Soms willen softwareleveranciers het schema uitbreiden om compatibel te zijn met hun applicaties. Vaak wordt het schema uitgebreid voor interne toepassingen of voor het gemak van het opslaan van bedrijfsgegevens in AD.

Opbergmogelijkheden

Bij het plannen om een ​​schema uit te breiden, vooral voor interne applicaties, is de eerste stap om te bepalen of de gegevens geschikt zijn voor opslag in AD. Het is vooral handig om relatief statische (zelden veranderende) gegevens in AD op te slaan die bedrijfsbreed worden gebruikt (over domeingrenzen heen gerepliceerd) en niet vertrouwelijk zijn (het wordt bijvoorbeeld niet aanbevolen om geboortedatums, sofi-kaartnummers, enz. in AD).

Als de gegevens niet aan deze criteria voldoen, maar toch in de LDAP-directory moeten staan, is de tweede optie optimaal. AD Lightweight Directory Services (AD LDS, voorheen ADAM) is een zelfstandige versie van AD die kan functioneren als een service op een server, domeinlid (of domeincontroller - DC) en, net als AD, verzoeken verwerkt die naar LDAP zijn gestuurd. De noodzaak om AD-domeincontrollers te hosten voor authenticatie en toepassingsondersteuning is geen vervelende beperking, maar de mogelijkheid om strikt te controleren wie de gegevens kan lezen en de richting van gegevensreplicatie door AD LDS-instanties op de juiste locaties te plaatsen.

Primitieven voor gegevensopslag

Twee termen spelen een sleutelrol bij het begrijpen van het AD-schema: klasse en kenmerk. Alle AD-elementen, inclusief schema, zijn gedefinieerd in termen van klassen en attributen. Klassen zijn de soorten gegevens die u wilt opslaan. Gebruiker is bijvoorbeeld een klasse in AD, net als computer. Attributen zijn eigenschappen van klassen. De gebruikersklasse heeft een attribuut voor de voornaam (givenName) en een attribuut voor de achternaam (sn). De klasse "computer" heeft het attribuut "besturingssysteem". Een AD-schema wordt gedefinieerd in termen van twee klassen: classSchema voor klassen en attributeSchema voor attributen.

Naar analogie met een typische database kunt u klassen vergelijken met tabellen in een database en attributen met kolommen in een tabel. Maar houd er rekening mee dat de structuur van de AD Directory Information Tree (DIT)-database eigenlijk heel anders is.

Bij het oplossen van het probleem van het opslaan van gegevens van een nieuw type in AD, moet u nadenken over hoe de gegevens worden toegewezen aan klassen en attributen. In de meest voorkomende gevallen is het voldoende om het attribuut toe te voegen aan een bestaande klasse (bijvoorbeeld een gebruiker of groep). Als u alleen een nieuw stuk gegevens over een object van een bestaand type (zoals een gebruiker) wilt opslaan, probeer dan eerst de juiste attributen te vinden tussen de attributen die beschikbaar zijn in AD. Het schema bevat duizenden attributen, waarvan de meeste niet betrokken zijn. Daarom kunt u bijvoorbeeld het kenmerk physicalDeliveryOfficeName gebruiken om de postadresgegevens van de gebruiker te bewaren.

Het opnieuw toewijzen van een attribuut voor andere doeleinden dan het oorspronkelijke gebruik is een slechte benadering. Stel je voor dat een attribuut opnieuw is toegewezen, en dan wordt een applicatie aangeschaft die dat attribuut voor het oorspronkelijke doel gebruikt. Er is dubbel werk te doen, aangezien u uw oude toepassing opnieuw moet configureren met behulp van het kenmerk en vervolgens de gegevens moet verplaatsen. Over het algemeen is het altijd veiliger om een ​​aangepast kenmerk toe te voegen.

Maar soms is alleen een klassikale benadering mogelijk. In twee gevallen is het handiger om een ​​nieuwe klasse aan het schema toe te voegen dan om attributen te gebruiken. De eerste is de noodzaak om het nieuwe gegevenstype in de directory bij te houden. Als u bijvoorbeeld de auto's van een bedrijf in AD wilt volgen, kunt u in het schema een nieuwe autoklasse definiëren. Een ander geval is een-op-veel-toewijzing.

Een perfect voorbeeld hiervan is Microsoft Exchange Server 2010. Elk mobiel apparaat dat u synchroniseert met Exchange via ActiveSync, wordt opgeslagen als een instantie van een speciale objectklasse msExchActiveSyncDevice in de directory. Deze mobiele apparaten worden opgeslagen als onderliggende objecten van de gebruiker, de eigenaar van het apparaat. Deze structuur maakt het mogelijk om een ​​groot aantal attributen (voor elk apparaat) toe te wijzen aan een enkele gebruiker.

Invoergegevens voor schema-extensie

Om een ​​schema-uitbreiding voor te bereiden, moet u een aantal invoergegevens verzamelen. Alleen dan kan een speciaal attribuut of klasse in de ontwikkelomgeving worden geïmplementeerd. Veel inputs moeten wereldwijd uniek zijn, dus het is belangrijk om de nodige voorbereiding te doen. Tegelijkertijd dreigt nalatigheid met gevaarlijke gevolgen.

Selecteer eerst de naam van de klasse of het attribuut. Het belangrijkste deel van de naam is het voorvoegsel. Kenmerk- en klassenamen in het schema (en in het app-aankopersschema van derden) moeten uniek zijn, dus het toevoegen van het voorvoegsel zorgt ervoor dat er geen conflicten zijn tussen kenmerk-ID's.

Meestal wordt de afgekorte bedrijfsnaam als voorvoegsel gebruikt. Ik gebruik bijvoorbeeld bdcLLC als voorvoegsel voor de kenmerken van ons bedrijf Brian Desmond Consulting LLC. Voor ABC Corporation kan het voorvoegsel abcCorp worden gebruikt. Let op de uniciteit van het voorvoegsel, aangezien er geen algemeen voorvoegselregister is. Als het bedrijf een typische of afgekorte naam heeft, zoek dan uit hoe u deze uniek kunt maken.

Nadat u de naam hebt gekozen, moet u een Object Identifier (OID) toewijzen aan het attribuut of de klasse. OID's zijn optioneel en moeten wereldwijd uniek zijn. AD (meer in het algemeen, LDAP) is niet het enige raamwerk dat OID's als identificatie gebruikt, dus de Internet Assigned Numbers Authority (IANA) wijst unieke OID-bomen toe op verzoek van bedrijven. Een aanvraag voor een Private Enterprise Number, dat deel uitmaakt van de OID-boom die uniek is voor een bedrijf, wordt in ongeveer 10 minuten gratis afgehandeld. U moet het hebben voordat u begint met het maken van aangepaste schema-extensies. U kunt een Private Enterprise-nummer aanvragen op www.iana.org/cgi-bin/assignments.pl.

Met een Private Enterprise Number kunt u een vrijwel onbeperkt aantal unieke OID's maken en organiseren. De afbeelding toont de OID-boomstructuur voor het privé-ondernemingsnummer van ons bedrijf. OID's worden gebouwd door vertakkingen aan de boomstructuur toe te voegen, dus veel bedrijven beginnen met het maken van een AD Schema-vertakking (1.3.6.1.4.1.35686.1 in de afbeelding) en vervolgens een klassenvertakking en een attribuutvertakking daaronder. Onder elk van deze takken worden OID's toegewezen aan elk nieuw attribuut of elke nieuwe klasse. De afbeelding toont de OID (1.3.6.1.4.1.35686.1.2.1) die is toegewezen aan het aangepaste kenmerk myCorpImportantAttr. Het is erg belangrijk om een ​​intern volgmechanisme voor te bereiden (zoals een Excel-spreadsheet of SharePoint-lijst) om ervoor te zorgen dat OID's uniek zijn.

Tekening. OID-hiërarchie

Microsoft biedt een script dat een OID met een willekeurige waarde kan genereren, maar er is geen garantie dat het uniek zal zijn. De beste manier is om een ​​unieke vertakking aan te vragen bij de IANA-organisatie en deze te gebruiken voor schema-uitbreidingen. Het proces is zo eenvoudig dat u het Microsoft OID-generatiescript niet hoeft te gebruiken.

De overige twee invoerparameters zijn attribuutspecifiek en typeafhankelijk. Gebonden attributen zijn uitermate handig voor het opslaan van koppelingen tussen objecten in AD. Ze worden opgeslagen als verwijzingen in de AD-database, zodat de koppelingen tijdig worden bijgewerkt om de locatie van het object in het forest weer te geven. Twee veelvoorkomende voorbeelden van gerelateerde attributen zijn groepslidmaatschap (member en memberOf) en de relatie manager/medewerker (manager/directReports). De concepten van forward links en backlinks zijn van toepassing op gekoppelde attributen. De voorwaartse link is het bewerkbare deel van de relatie tussen attributen. In het geval van groepslidmaatschap is het lidattribuut voor de groep bijvoorbeeld een voorwaartse link; het memberOf-attribuut voor de gebruiker is de backlink. Wanneer u groepslidmaatschap bewerkt, worden de wijzigingen aangebracht in het lidattribuut (voorwaartse link), niet in het memberOf-attribuut van het lidobject (terugkoppeling).

Om gekoppelde kenmerken in AD te definiëren, moet u twee kenmerken (forward link en backlink) definiëren en aan elk van deze kenmerken een link-ID (linkID) koppelen. Link-ID's moeten uniek zijn binnen het forest en aangezien link-ID's vereist zijn voor andere toepassingen die schema-uitbreidingen vereisen, moeten ze wereldwijd uniek zijn. In het verleden publiceerde Microsoft link-ID's voor externe organisaties, maar sinds Windows Server 2003 is er in plaats daarvan een speciale pointer toegevoegd aan AD om unieke link-ID's te genereren wanneer een schema wordt uitgebreid met een paar attributen.

AD gaat ervan uit dat link-ID's opeenvolgende nummers zijn. In het bijzonder is het forward link attribuut een even getal, en het volgende nummer wordt toegewezen aan het backlink attribuut. Voor member en memberOf (groepslidmaatschap) is de link-ID voor member bijvoorbeeld 4 en de link-ID voor memberOf 5. Als uw uitgebreide schema compatibel moet zijn met het Windows 2000-forest, moet u static link-ID's definiëren in dezelfde manier. Anders moet u het proces voor het automatisch genereren van koppelings-ID's in Windows Server 2003 gebruiken. Volg de onderstaande richtlijnen bij het definiëren van een schema-extensie om het proces voor het automatisch genereren van koppelings-ID's te gebruiken. Tijdens het uitbreiden van het schema, zoals verderop in het artikel wordt beschreven, zijn de gegeven stappen nodig om de bijbehorende attributen te construeren (als ze deel uitmaken van de extensie).

Bereid eerst de link voor met behulp van de link-ID 1.2.840.113556.1.2.50. Merk op dat hoewel deze Link ID-waarde een OID is, Microsoft deze OID-waarde gewoon reserveert om de Autolink-ID te genereren.

Laad vervolgens de schemacache opnieuw. Maak daarna een backlink-attribuut met behulp van de link-ID van de forward link-attribuutnaam en laad de schemacache opnieuw.

Het tweede unieke (en ook optionele) attribuutelement is de MAPI-identifier. MAPI-ID's zijn een functie van Exchange Server. Als u geen Exchange heeft of het kenmerk in de Global Address List (GAL) wilt tonen, kunt u deze sectie overslaan. MAPI ID's worden gebruikt om attributen weer te geven op een van de eigenschappenpagina's in het adresboek, zoals het sjabloon Algemene gebruikersgegevens (zie scherm). Als u bijvoorbeeld de classificatie van werknemers (personeel of contractueel) in de GAL-lijst wilt weergeven, wijst u het juiste kenmerk toe als MAPI-ID. Nadat de MAPI-ID aan het attribuut is toegewezen, kunt u de Exchange Details Templates Editor gebruiken om de attribuutgegevens in te voeren in een GAL-weergave in Office Outlook.

MAPI-ID's moeten uniek zijn, evenals OID's en link-ID's. In het verleden was het niet mogelijk om unieke MAPI-ID's te genereren, dus deze ID's zijn altijd een zwak punt geweest in schema-uitbreidingen. Gelukkig introduceert Windows Server 2008 een manier om automatisch unieke MAPI-ID's in een directory te genereren om het risico op dubbele MAPI-ID's te verkleinen. Als u deze functie wilt gebruiken, stelt u de waarde 1.2.840.113556.1.2.49 in op het MAPI ID-kenmerk wanneer u het kenmerk maakt. AD genereert een unieke MAPI-ID voor het kenmerk nadat de schemacache opnieuw is geladen. Merk op dat hoewel deze waarde een OID is, deze door AD is gereserveerd om het automatisch genereren van MAPI-ID's aan te geven, vergelijkbaar met het automatisch genereren van link-ID's die hierboven is beschreven.

Samenvatten. Er zijn drie kritieke invoerparameters waarmee u rekening moet houden bij het plannen van uw schema-uitbreiding. De eerste is de naam van de klasse of het attribuut; de tweede is een uniek voorvoegsel dat is toegewezen aan alle klassen en attributen; de derde is de OID. Voor het genereren van een OID moet een unieke OID-vestiging worden aangevraagd bij de IANA-organisatie. Als u een gekoppeld paar attributen gaat maken, is een uniek paar link-ID's vereist. Als u het kenmerk in de Exchange GAL wilt weergeven, moet u een unieke MAPI-ID gebruiken. Voor zowel link-ID's als MAPI-ID's verdient het gebruik van een automatisch generatieproces binnen AD de voorkeur boven statische waarden.

Implementatieplanning

Wanneer u een aangepaste schema-uitbreiding implementeert of een schema uitbreidt met providerkenmerken en klassen, moet u voorbereidende planningsstappen nemen om de integriteit van uw AD-forest te beschermen. De eerste stap is het testen van de schema-extensie.

Gebruik bij het voorbereiden van een aangepaste schema-extensie een tijdelijke ontwikkelomgeving. AD Lightweight Directory Service (AD LDS) is een gratis download op werkstations met Windows XP en Windows 7. Vanaf een werkstation kunt u een AD LDS-instantie maken, een schema-extensie in een sandbox bouwen en de extensie vervolgens exporteren om te importeren in een AD proef bos. Het AD LDS-schema is AD-compatibel, dus u kunt LDIFDE gebruiken voor export. U kunt de voltooide schema-extensie importeren in een AD-testforest en vervolgens controleren of de import is gelukt en of kritieke toepassingen niet zijn beschadigd. Voor AD moet u plannen om in een testomgeving te testen of de import is gelukt en of de replicatie correct is.

Als u de schema-extensie in een test-AD-forest wilt testen, moet het schema overeenkomen met het productieforest. In dit geval is het testen voltooid. U kunt het hulpprogramma AD Schema Analyzer (meegeleverd met AD LDS) gebruiken om schemaverschillen tussen twee AD-forests te vinden. Het TechNet-artikel "Exporteren, vergelijken en synchroniseren van Active Directory-schema's" (http://technet.microsoft.com/en-us/magazine/2009.04.schema.aspx) beschrijft hoe u schema-extensies importeert en exporteert en hoe u de AD Schema Analyzer-tool. Houd er rekening mee dat er enkele verschillen kunnen zijn bij het vergelijken van schema's, afhankelijk van servicepacks en Windows-versies, met name bij het indexeren van kenmerken en het opslaan van verwijderingsmarkeringen.

Voor schema-uitbreidingen die zijn verkregen uit andere bronnen (bijvoorbeeld samen met een commerciële toepassing), moet u ervoor zorgen dat de bijbehorende wijzigingen niet riskant zijn. Naast alle hierboven besproken inputs, moet u ook letten op een aantal andere omstandigheden. Hieronder staan ​​de belangrijkste parameters om te controleren:

  • geleverd in een LDIF-bestand (meerdere LDIF-bestanden);
  • juistheid van attribuutvoorvoegsels;
  • geregistreerde OID's;
  • geregistreerde / automatisch gegenereerde link-ID's;
  • automatisch gegenereerde MAPI-ID's.

LDIF-bestanden zijn een industriestandaard: alle schema-extensies moeten in dit formaat worden aangeleverd. Toepassingen mogen een speciaal importmechanisme gebruiken in plaats van LDIFDE voor schema-uitbreidingen. Als de extensie echter in een ander formaat wordt geleverd, ontstaan ​​er twijfels over de juistheid en de betrouwbaarheid van de verkoper. C toont een LDIF-voorbeeld voor het maken van een kenmerk in een AD-schema om informatie over de schoenmaat van een gebruiker op te slaan. Let op de volgende kenmerken van deze voorbeeldschema-uitbreiding.

  • Het kenmerk wordt voorafgegaan door de naam van de leverancier (Brian Desmond Consulting, LLC: bdcllc).
  • De unieke OID voor het attribuut wordt uitgegeven met behulp van het Private Enterprise Number zoals geregistreerd door de leverancier.
  • Het attribuut is geïndexeerd (zoekvlaggen: 1) en is beschikbaar in de globale catalogus (isMemberOfPartialAttributeSet: TRUE).

U moet ook controleren of het attribuut beschikbaar is in de globale catalogus Partial Attribute Set (PAS) en dat de indexen die voor het attribuut zijn gemaakt, correct zijn als het attribuut wordt gebruikt in LDAP-zoekfilters. Het is ook handig om ervoor te zorgen dat de gegevens die zijn opgeslagen in het kenmerk, acceptabel zijn voor AD in de context van de hierboven besproken beperkingen en best practices.

Nadat de schema-uitbreiding is getest en voorbereid voor productie-implementatie, moet de timing geschikt zijn voor deze bewerking. Dit kan meestal tijdens kantooruren. De processorbelasting zal merkbaar toenemen wanneer u de schemawizard uitvoert, en enigszins - op de domeincontrollers die de wijzigingen repliceren. Grote bedrijven kunnen replicatiepauzes ervaren tussen domeincontrollers voor perioden van vier tot zes uur als attributen worden toegevoegd aan de PAS gedeeltelijke attributenset. Schorsingen gaan gepaard met foutmeldingen die wijzen op problemen met de objecten, maar meestal kunnen ze worden genegeerd en verdwijnen ze vanzelf. Als domeincontrollers lange tijd uit de replicatie zijn gehaald, moet u beginnen met het oplossen van problemen.

Geplande aanpak

Het uitbreiden van het AD-schema is veilig als u enkele basisvoorzorgsmaatregelen neemt. Overweeg bij het plannen van nieuwe schema-uitbreidingen en bij het valideren van aangepaste kenmerken en klassen van externe leveranciers om informatie te identificeren die uniek is voor elke klasse of kenmerk en zorg ervoor dat deze wereldwijd uniek is.

Na controle van de integriteit porteert u de nieuwe extensie naar een representatieve testomgeving om er zeker van te zijn dat de testomgeving en kritische applicaties correct functioneren. Vervolgens kunt u de schema-extensie importeren in uw productieomgeving.

Lijst. Voorbeeld LDIF-records

Dn: CN = bdcllcShoeSize, CN = Schema, CN = Configuratie, DC = X changetype: add objectClass: top objectClass: attributeSchema cn: sfsuLiveServiceEntitlements attributeID: 1.3.6.1.4.1.35686.100.1.1.2 attributeSyntax: 2.5.5.12 isSingleValued: FALSE showInAdvancedViewOnly: TRUE adminDisplayName: bdcllcShoeSize adminDescription: Slaat de schoenmaat van een gebruiker op oMSyntax: 64 searchFlags: 1 lDAPDisplayName: bdcllcShoeSize name: bdcllcShoeSize schemaIDGUID:: Js + e3rEtt6



Een schema in AD DS verwijst naar de set definities voor alle objecttypen en bijbehorende kenmerken in de catalogus. Het is het schema dat de manier definieert waarop AD DS gegevens over alle gebruikers, computers en andere objecten opslaat en configureert, zodat het er consistent uitziet in de hele AD DS-structuur. Het wordt beschermd door gebruik te maken van Discretionary Access Control Lists (DACL's) en is verantwoordelijk voor het leveren van de mogelijke kenmerken voor elk object in AD DS. In wezen is het schema de basisdefinitie van de directory zelf en vormt het de basis van de functionaliteit van de domeinomgeving. Uiterste voorzichtigheid is geboden bij het delegeren van schemabeheer aan een selecte groep beheerders, omdat wijzigingen in het schema van invloed zijn op de gehele AD DS-omgeving.

Schema-objecten

Items die zijn opgeslagen in de AD DS-structuur, zoals gebruikers, printers, computers en sites, worden objecten binnen het schema genoemd. Elk van deze objecten heeft zijn eigen lijst met attributen die de kenmerken ervan bepalen en die kunnen worden gebruikt om het te vinden.

Het schema uitbreiden

Een van de belangrijkste voordelen van het AD DS-ontwerp is de mogelijkheid om het schema rechtstreeks te wijzigen en uit te breiden met speciale kenmerken. Meestal vindt de uitbreiding van de set attributen plaats tijdens de installatie van Microsoft Exchange Server, waarbij het schema zodanig wordt uitgebreid dat het bijna in omvang verdubbelt. Bij een upgrade van Windows Server 2003 of Windows Server 2008 AD naar Windows Server 2008 R2 AD DS wordt het schema ook uitgebreid met kenmerken die specifiek zijn voor Windows Server 2008 R2. Veel producten van derden bieden ook schema-uitbreidingen waarmee ze hun type catalogusinformatie kunnen weergeven.