Ett AD LDS-schema (Active Directory Lightweight Directory Services) definierar, med hjälp av objektklasser och attribut, olika typer av objekt och data som kan skapas och sparas i en AD LDS-katalog. Varje AD LDS-konfigurationsuppsättning har sitt eget oberoende schema, som är sparat i schemakatalogpartitionen. I enlighet med den enkla och flexibla utformningen av AD LDS, innehåller basschemat (eller standardschemat) i AD LDS endast de klasser och attribut som behövs för att starta en AD LDS-instans. Schemat kan utvidgas med nya klasser och attribut, antingen av administratörer eller av programmen själva. Dessutom kan onödiga schemaklasser och attribut inaktiveras. Liksom alla andra objekt i katalogen skyddas schemaobjekten av åtkomstkontrollistor (ACL) så att endast behöriga användare kan ändra schemat. Varje objekt i en AD LDS-katalog är en instans av en objektklass som definieras i ett schema, som visas i följande illustration.

AD LDS-schema

Objektklasser

En objektklass representerar en kategori objekt, till exempel användare, skrivare eller program, som delar en uppsättning gemensamma kännetecken. Definitionen av varje objektklass innehåller en lista med attribut som kan användas för att beskriva klassens instanser. Klassen Användare har till exempel attributen givenName, surname och streetAddress. Listan med attribut för en klass är uppdelad mellan de attribut som ett objekt i den klassen måste innehålla och ytterligare attribut som ett objekt kan innehålla. Definitionen av varje klass innehåller också en lista med klasser vars objekt kan vara överordnade andra objekt i en viss klass.

Följande lista visar till exempel definitionen för Användar-klassen i AD LDS.

Attribut Värde

Dn

CN=User,CN=Schema,CN=Configuration

objectClass

top; classSchema;

cn

User;

distinguishedName

CN=User,CN=Schema,CN=Configuration;

subClassOf

organizationalPerson;

mayContain

audio; carLicense; departmentNumber; displayName; employeeNumber; employeeType; givenName; homePostalAddress; jpegPhoto; labeledURI; photo; preferredLanguage; roomNumber; secretary; uid; userPKCS12; userSMIMECertificate; x500uniqueIdentifier;

rDNAttID

cn;

adminDisplayName

User;

adminDescription

User;

objectClassCategory

1;

lDAPDisplayName

user;

name

User;

objectGUID

dac9093a-d2aa-408a-81bb-0fe8179165da;

schemaIDGUID

bf967aba-0de6-11d0-a285-00aa003049e2;

objectCategory

CN=Class-Schema,CN=Schema,CN=Configuration;

defaultObjectCategory

CN=Person,CN=Schema,CN=Configuration;

Attribut

Schemat definierar också varje attribut. Definitionen av varje attribut innefattar unika ID:n för attributet, attributets syntax, valfria intervallbegränsningar för attributvärdena, huruvida attibutet kan ha endast ett värde eller flera värden samt om attributet är indexerat. Katalogschemat definierar varje attribut exakt en gång. Varje attribut kan sedan refereras av flera objektklasser. Attributet description definieras till exempel en gång och refereras sedan av många objektklasser.

I följande tabell visas attributdefinitionen för telephone number, ett representativt schemaattribut.

Attribut Värde

objectClass

top; attributeSchema;

cn

Telephone-Number;

distinguishedName

CN=Telephone-Number,CN=Schema,CN=Configuration;

instanceType

0x4 = ( IT_WRITE );

whenCreated

11/12/2002 13

22

14 Pacific Standard Time Pacific Daylight Time;

whenChanged

11/12/2002 13

22

14 Pacific Standard Time Pacific Daylight Time;

uSNCreated

217;

attributeID

2.5.4.20;

attributeSyntax

2.5.5.12;

isSingleValued

TRUE;

rangeLower

1;

rangeUpper

64;

uSNChanged

217;

showInAdvancedViewOnly

TRUE;

adminDisplayName

Telephone-Number;

adminDescription

Telephone-Number;

oMSyntax

64;

searchFlags

0;

lDAPDisplayName

telephoneNumber;

namn

Telephone-Number;

objectGUID

bf19d7eb-ea0f-4f2d-af67-f439a037d8a4;

schemaIDGUID

bf967a49-0de6-11d0-a285-00aa003049e2;

attributeSecurityGUID

77b5b886-944a-11d1-aebd-0000f80367c1;

systemOnly

FALSE;

systemFlags

0x10 = ( FLAG_SCHEMA_BASE_OBJECT );

isMemberOfPartialAttributeSet

TRUE;

objectCategory

CN=Attribute-Schema,CN=Schema,CN=Configuration;

Enkelvärdesattribut och flervärdesattribut

Attribut kan ha ett eller flera värden. En instans av ett enkelvärdesattribut kan endast innehålla ett värde. En instans av ett flervärdesattribut kan innehålla flera värden, som alla måste använda samma syntax. Varje värde i ett flervärdesattribut måste vara unikt.

OBS

Ett flervärdesattribut lagrar sina värden i slumpmässig ordning. Därför bör du inte fatta några katalogbeslut – programmatiska eller manuella – baserade på värdenas ordning i ett flervärdesattribut.

Indexerade attribut

Indexering av attribut hjälper till att förbättra prestandan för frågor som baseras på det indexerade attributet. Både enkelvärdesattribut och flervärdesattribut kan indexeras; klasser kan inte indexeras. Attribut kan markeras för indexering via deras schemadefinitioner. Indexering av attribut gör det också möjligt för användare att använda jokertecken (*) som prefix och suffix när söksträngen specificeras. När du markerar ett attribut som indexerat läggs alla instanser av attributet till i index, inte bara de instanser som tillhör en viss klass. Indexering av attribut, särskilt flervärdesattribut, kan ha negativ inverkan både på den tid som går åt till replikering och att skapa objekt samt storleken på databasen. Därför bör du bara indexera vanligt förekommande attribut.

Allmän information om scheman finns i avsnittet om Active Directory-schema (https://go.microsoft.com/fwlink/?LinkId=80809) Sidan kan vara på engelska.

Ytterligare referenser


Innehåll