Maja Górecka-Wolniewicz
UCI UMK Toruń
Maja.Wolniewicz@uni.torun.pl

Specyfikacja nowych klas obiektów oraz atrybutów projektu LDAP

Wprowadzenie

W projekcie LDAP realizowanym w akademicko-naukowych sieciach komputerowych w Polsce zaadaptowano klasy obiektów eduPerson oraz eduOrg w wersji z października 2002.
Klasy ta nie pokrywają wszystkich potrzeb polskiego środowiska akademickiego. Specyficzne wymagania, wspólne dla większości ośrodków zostały uwzględnione w trzech dodatkowych klasach obiektów oraz w dodatkowych atrybutach.

Atrybuty używanych w projekcie klas eduPerson oraz eduOrg są zdefiniowane w dokumentach:

Dodatkowe klasy obiektów

Nowy schemat danych wprowdza trzy klasy obiektów: pleduPerson, pleduOrganizationalRole, pleduOrg o poniższej definicji:
objectIdentifier pledu  1.3.6.1.4.1.13685.1.1.1.1
objectIdentifier pleduObjectClass pledu:1
objectclass     ( pleduObjectClass:1
        NAME 'pleduPerson'
        DESC 'PL-Education Organizational Person'
        AUXILIARY
        SUP eduPerson
        MAY (
		pleduPersonPosition $ pleduPersonLId $ pleduPersonGId $ 
		pleduStatus $ pleduPersonDegree $ pleduPersonPublic $ 
		personalTitle )
        )
objectclass     ( pleduObjectClass:2
        NAME 'pleduOrg'
        DESC 'PL-Education Organization / Organizational Unit'
        AUXILIARY
        SUP eduOrg
        MAY (
		pleduOrgUnitUniqueNumber $ pleduStatus $ 
		associatedDomain $ displayName $ mail $ jpegPhoto )
        )
objectclass     ( pleduObjectClass:3
        NAME 'pleduOrganizationalRole'
        DESC 'PL-Education Organizational Role'
        SUP eduPerson
        AUXILIARY
        MAY (
		pleduPersonLId $ pleduStatus $ displayName $ 
		mail $ roomNumber $ labeledURI )
        )
W celu definicji identyfikatorów OID klas obiektów i atrybutów skorzystano z przydzielonej Uniwersytetowi Mikołaja Kopernika przez organizację IANA podgałęzi iso.org.dod.internet.private.enterprise (1.3.6.1.4.1) o numerze 13685.

Wszystkie trzy nowe klasy są klasami dodatkowymi (AUXILIARY), rozszerzającymi możliwości klasy nadrzędnej eduPerson lub eduOrg. Żadna z tych klas nie wprowadza atrybutów obowiązkowych (brak klauzuli MUST). Definicje klas zawierają wykaz dozwolonych atrybutów. Część z tych atrybutów została zaczerpnięta z innych rekomendacji, część jest definiowana w niniejszej specyfikacji.

Atrybuty używane w nowych klasach obiektów

Nowe atrybuty dla klas pledu używają następującego przedrostka do tworzenia identyfikatora OID:
objectIdentifier pleduAttributeType pledu:2

1. personalTitle

Źródło definicji: RFC 1274
attributetype ( 0.9.2342.19200300.100.1.40 NAME 'personalTitle'
	DESC 'RFC1274: personal title'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
Definicja

Atrybut ten wywodzi się z projektu COSINE. Zgodnie z RFC 1274 określa personal title - "osobisty tytuł" związany z daną osobą. Specyfika stosowania stopni i tytułów naukowych w polskim środowisku akademickim sprawiła, że w tym atrybucie jest umieszczany tytuł zawodowy (np. mgr, inż, mgr inż.), lub stopień naukowy (dr, dr hab.), lub tytuł naukowy (profesor). Dotyczy obiektów klasy pleduPerson.

Uwagi

Docelowo powinien być stosowany zamknięty słownik dopuszczalnych wartości atrybutu.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość atrybutu dostępna, jeśli dany wpis nie podlega ochronie.

2. pleduPersonDegree

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:4
	NAME 'pleduPersonDegree'
	DESC 'Degree at a university'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Jest to atrybut wspomagający umieszczanie informacji o stopniu naukowym. Został wprowadzony jako uzupełnienie atrybutu personalTitle, gdyż w przypadku niektórych specjalności nie jest możliwe przedstawienie wszystkich informacji w atrybucie personalTitle.

Uwagi

Aktualnie atrybut jest stosowany do umieszcznia informacji dotyczącej przewodów kwalifikacyjnych pracowników naukowych kierunków artystycznych. Dotyczy obiektów klasy pleduPerson.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość atrybutu dostępna, jeśli dany wpis nie podlega ochronie.

3. pleduPersonposition

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:3
        NAME 'pleduPersonposition'
        DESC 'Position at a university'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut przeznaczony dla obiektów klasy pleduPerson, służy do umieszczenia stanowiska danej osoby, np. młodszy programista, referent, starszy technik. Dotyczy obiektów klasy pleduPerson.

Uwagi

Liczba wartości

Atrybut wielowarościowy.

Stopień poufności

Wartość atrybutu dostępna, jeśli dany wpis nie podlega ochronie.

4. pleduPersonpublic

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:11
	NAME 'pleduPersonPublic'
	DESC 'Entry access control status'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut o charakterze operacyjnym, wspomagający sterowanie dostępem do danych. Wartość 1 tego atrybutu oznacza, że wpis jest udostępniany bez ograniczeń. Dotyczy obiektów klasy pleduPerson.

Uwagi

Brak tego atrybutu oznacza ograniczenie dostępu do wpisu.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Atrybut operacyjny, nie jest udostępniany użytkownikowi.

5. pleduPersonStatus

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:10
	NAME 'pleduStatus'
	DESC 'Entry status'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut o charakterze operacyjnym, wspomagający zarządzanie danymi. Jeśli wpis w bazie z jakiś powodów nie posiada kompletnych danych, to ma ustawiony ten atrybut na wartość "pending". Wartość "OK" oznacza, że wpis ma ostateczną postać. Atrybut dotyczy klas pleduPerson, pleduOrg oraz pleduOrganizationalRole.

Uwagi

Brak tego atrybutu oznacza, że wpis jest kompletny.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Atrybut operacyjny, nie jest udostępniany użytkownikowi.

6. pleduPersonGId

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:1
	NAME 'pleduPersonGId'
	DESC 'University person global identification number'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut przeznaczony do umieszczenia identyfikatora osoby, przy czym zasięg takigo identyfikatora powinien być globalny, szerszy niż np. uniwersytet (np. PESEL czy inny numer socjalny). Stosowany dla obiektów klasy pleduPerson.

Uwagi

Obecnie nie jest wykorzystywany.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość chroniona.

7. pleduPersonLId

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:2
	NAME 'pleduPersonLId'
	DESC 'University person local identification number'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut przeznaczony do umieszczania lokalnego identyfikatora osoby, stosowanego w ramach uniwersytetu (np. identyfikator w bazie kadrowej instytucji). Określany dla obiektów klasy pleduPerson.

Uwagi

Używany do synchronizacji bazy LDAP i bazy kadrowej. Podczas wyszukiwania daje również możliwość uzyskania informacji, że dwa różne wpisy dotyczą tej samej osoby (gdy np. osoba zatrudniona jest w dwóch jednostkach organizacyjnych).

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość chroniona.

8. pleduOrgUnitUniqueNumber

Źródło definicji: niniejsza specyfikacja
attributetype ( pleduAttributeType:20
	NAME 'pleduOrgUnitUniqueNumber'
	DESC 'University orgunit unique number'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
Definicja

Atrybut służy do przechowywania identyfikatora jednostki organizacyjnej.

Uwagi

Powinien istnieć słownik wartości atrybutu (zgodny z kluczem przypisywania identyfikatorów jednostkom organizacyjnym, obowiązującym w danej instytucji akademickiej). Atrybut jest pomyślany jako wsparcie narzędzi zarządzania danymi.

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość chroniona.

9. associatedDomain

Źródło definicji: RFC 1274
attributetype ( 0.9.2342.19200300.100.1.37
	NAME 'associatedDomain'
	DESC 'RFC1274: domain associated with object'
	EQUALITY caseIgnoreIA5Match
	SUBSTR caseIgnoreIA5SubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
Definicja

Związanie tego atrybutu z klasą pleduOrg umożliwia wskazanie domeny przypisanej jednostce.

Uwagi

Liczba wartości

Atrybut jednowartościowy.

Stopień poufności

Wartość niechroniona.

10. displayName

Źródło definicji: RFC 2798
attributetype ( 2.16.840.1.113730.3.1.241
	NAME 'displayName'
	DESC 'RFC2798: preferred name to be used when displaying entries'
	EQUALITY caseIgnoreMatch
	SUBSTR caseIgnoreSubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
	SINGLE-VALUE )
Definicja

Związanie tego atrybutu z klasami pleduOrg i pleduOrganizatinalRole umożliwia umieszcznie popularnej nazwy jednostki organizacyjnej (dla obiektu klasy pleduOrg) lub popularnej nazwy funkcji (dla obiektu klasy pleduOrganizatinalRole.

Uwagi

Wartość atrybutu może być inna niż podstawowa nazwa jednostki.

Liczba wartości

Atrybut jednowarościowy.

Stopień poufności

Wartość niechroniona.

11. mail

Źródło definicji: RFC 1274
attributetype ( 0.9.2342.19200300.100.1.3
	NAME ( 'mail' 'rfc822Mailbox' )
	DESC 'RFC1274: RFC822 Mailbox'
	EQUALITY caseIgnoreIA5Match
	SUBSTR caseIgnoreIA5SubstringsMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
Definicja

Związanie tego atrybutu z klasami pleduOrg i pleduOrganizatinalRole umożliwia umieszcznie adresu e-mail jednostki lub osoby pełniącej funkcję.

Uwagi

Liczba wartości

Atrybut wielowartościowy.

Stopień poufności

Wartość niechroniona.

12. jpegPhoto

Źródło definicji: RFC 2798
attributetype ( 0.9.2342.19200300.100.1.60
	NAME 'jpegPhoto'
	DESC 'RFC2798: a JPEG image'
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.28 )
Definicja

Związanie tego atrybutu z klasą pleduOrgumożliwia umieszcznie zdjęć w formacie JPEG.

Uwagi

Liczba wartości

Atrybut wielowarościowy.

Stopień poufności

Wartość niechroniona.

13. roomNumber

Źródło definicji: RFC 1274
attributetype ( 0.9.2342.19200300.100.1.6 NAME 'roomNumber'
        DESC 'RFC1274: room number'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )

Definicja

Związanie tego atrybutu z klasą pleduOrganizatinalRole umożliwia umieszczenie numeru pokoju, w którym przyjmuje osoba sprawująca funkcję.

Uwagi

Liczba wartości

Atrybut wielowartościowy.

Stopień poufności

Wartość niechroniona.

14. labeledURI

Źródło definicji: RFC 2079
attributetype ( 1.3.6.1.4.1.250.1.57 NAME 'labeledURI'
	DESC 'RFC2079: Uniform Resource Identifier with optional label'
	EQUALITY caseExactMatch
	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

Definicja

Związanie tego atrybutu z klasą pleduOrganizatinalRole umożliwia umieszczenie adresu WWW związanego z osobą sprawującą funkcję.

Uwagi

Liczba wartości

Atrybut wielowartościowy.

Stopień poufności

Wartość niechroniona.