3.2. 표준 스키마
디렉터리 스키마는 데이터 값의 크기, 범위 및 형식에 제약 조건을 설정하여 디렉터리에 저장된 데이터의 무결성을 유지 관리합니다. 스키마는 디렉터리에 포함된 다양한 유형의 항목(예: 사람, 장치, 조직)과 각 항목에 사용할 수 있는 속성을 식별합니다.
Directory Server의 사전 정의된 스키마에는 서버의 기능을 지원하는 표준 LDAP 스키마 및 애플리케이션별 스키마가 모두 포함되어 있습니다. 디렉터리의 고유한 요구 사항을 수용하도록 새 오브젝트 클래스 및 속성을 추가하여 스키마를 확장할 수 있습니다.
3.2.1. 스키마 형식
Directory Server의 스키마 형식은 LDAP 프로토콜의 버전 3을 기반으로 합니다. 이 프로토콜을 사용하려면 디렉터리 클라이언트 애플리케이션이 프로그래밍 방식으로 스키마를 검색하고 동작을 조정할 수 있도록 LDAP를 통해 스키마를 게시해야 합니다. cn=schema
항목에서 Directory Server의 글로벌 스키마 세트를 찾을 수 있습니다.
디렉터리 서버 스키마는 전용 개체 클래스 및 특성을 사용하므로 LDAPv3 스키마와 다릅니다. 또한 스키마 항목이 원래 정의된 위치를 설명하는 X-ORIGIN 389 Directory Server
라는 스키마 항목의 개인 필드를 사용합니다.
표준 LDAPv3 스키마에 스키마 항목을 정의할 때 X-ORIGIN 389 Directory Server
필드는 RFC 2252를 나타냅니다. Directory Server 사용을 위해 Red Hat에서 항목을 정의한 경우 X-ORIGIN 389 Directory Server
필드에 값 389 Directory Server
가 포함됩니다. 예를 들어 표준 person 오브젝트 클래스는 스키마에 표시됩니다.
# objectclasses: ( 2.5.6.6 NAME 'person' DESC 'Standard Person Object Class' SUP top MUST (objectclass $ sn $ cn) MAY (description $ seeAlso $ telephoneNumber $ userPassword) X-ORIGIN 'RFC 2252' )
이 스키마 항목 상태는 다음과 같습니다.
-
클래스의 개체 식별자(OID)입니다(
2.5.6.6
) -
오브젝트 클래스의 이름(
person
) -
클래스에 대한 설명 (
표준 사람
) -
필수 속성(
objectclass, sn 및 cn
) -
선택적 속성(
설명
,전화 번호
및userPassword
)을참조하십시오
.
3.2.2. 표준 속성
특성에는 이름 또는 고정 번호와 같은 특정 데이터 요소가 포함됩니다. Directory Server는 데이터를 특정 정보와 관련된 설명적인 스키마 속성인 attribute-data 쌍으로 나타냅니다. 이를 attribute-value assertions
또는 AVA 라고도 합니다
.
예를 들어 디렉터리는 사용자 이름과 같은 데이터를 표준 속성이 있는 쌍에 저장할 수 있습니다. Babs Jensen
이라는 이름의 항목에는 attribute-data 쌍 cn: Babs Jensen
이 있습니다.
전체 항목은 일련의 특성 데이터 쌍으로 표시됩니다. Babs Jensen의 전체 항목은 다음과 같습니다.
dn: uid=bjensen,ou=people,dc=example,dc=com objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson cn: Babs Jensen sn: Jensen givenName: Babs givenName: Barbara mail: bjensen@example.com
스키마의 각 속성 정의에는 다음 정보가 포함되어 있습니다.
- 고유한 이름
- 속성의 OID(오브젝트 식별자)
- 특성에 대한 설명A text description of the attribute
- 특성 구문의 OID
다음에 대한 표시:
- 속성은 단일 값 또는 다중 값입니다.
- 이 속성은 디렉터리의 자체 용도입니다.
- 속성의 원본입니다.
- 속성과 연결된 추가 일치 규칙입니다.
cn
속성 정의는 다음과 같이 스키마에 표시됩니다.
attributetypes: ( 2.5.4.3 NAME 'cn' DESC 'commonName Standard Attribute' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
특성의 구문을 사용하여 속성에 저장할 수 있는 값의 형식을 정의할 수 있습니다. Directory Server는 모든 표준 특성 구문을 지원합니다.
추가 리소스
3.2.3. 표준 오브젝트 클래스
개체 클래스는 사람 또는 성정기 시스템과 같은 실제 개체를 나타냅니다. 관련 정보를 그룹화하는 데 사용됩니다. 오브젝트 클래스를 사용하기 전에 스키마에서 오브젝트 클래스 및 해당 속성을 식별해야 합니다. 디렉터리는 기본적으로 표준 오브젝트 클래스 목록을 인식합니다.
각 디렉터리 항목은 하나 이상의 오브젝트 클래스에 속합니다. 항목의 스키마에 식별된 오브젝트 클래스를 배치하면 해당 항목에 특정 특성 값 세트가 있을 수 있으며 다른 더 작은 필수 특성 값 세트가 있어야 함을 디렉터리 서버에 알립니다.
오브젝트 클래스 정의에서 다음 정보를 사용할 수 있습니다.
- 고유한 이름
- OID(오브젝트 식별자)
- 필수 속성 세트
- 허용 또는 선택적 속성 세트
스키마의 표준 person 개체 클래스입니다.
objectclasses: ( 2.5.6.6 NAME 'person' DESC 'Standard Person Object Class' SUP top MUST (objectclass $ sn $ cn) MAY (description $ seeAlso $ telephoneNumber $ userPassword) X-ORIGIN 'RFC 2252' )
오브젝트 클래스가 정의되고 Directory Server에 직접 저장되므로 표준 LDAP 작업으로 디렉터리 스키마를 쿼리하고 변경할 수 있습니다.
추가 리소스