RFC 1684

Introduction to White Pages Services based on X.500

๐Ÿ“… published August 1994, from ietf

Okay bestie, let's get into it ๐Ÿ’– This is RFC 1684, called Introduction to White Pages Services based on X.500. It's from the Network Working Group ๐ŸŒธ, written by P. Jurg of SURFnet bv, and dated August 1994. It's filed as Informational, which means it's giving info to the Internet community and isn't a standard (more on that below ๐ŸŽ€). It doesn't obsolete or update any other RFC, since the header doesn't list any. This is part 1 of 2, so more is coming!


Status of this Memo โœจ

This memo is here to provide information for the Internet community ๐Ÿฆ‹. It does not specify an Internet standard of any kind, so it's not a standard, bestie. Distribution of this memo is unlimited, so share it with everyone ๐Ÿ’œ.

Abstract ๐ŸŽ€

This one's for organisations that use local and global electronic communication every single day, for whom an electronic White Pages Service is basically indispensable ๐Ÿ˜ญ.

The document gives you an intro to the international ITU-T (formerly CCITT) X.500 and ISO 9594 standard, which is especially suited for providing an integrated local and global electronic White Pages Service ๐Ÿงš.

We also get a short overview of the experience gained from the Paradise X.500 pilot, plus references to more detailed information ๐Ÿ“š.

It's useful for managers of those organisations who need the executive commitment to make their organisation's address information available by means of X.500 ๐Ÿ’….

Table Of Contents ๐Ÿ“‹

   1. Introduction ................................................  2
   2. Concept of X.500 ............................................  3
     2.1  Directory Model .........................................  3
     2.2  Information Model .......................................  4
   3.  Benefits of X.500 ..........................................  5
   4.  Organisational aspects of X.500(experience from Paradise) ..  6
   5.  Applications of X.500 ......................................  8
   6.  References .................................................  9
   7.  Security Considerations .................................... 10
   8.  Author's Address ........................................... 10

1. Introduction ๐ŸŒˆ

Huge international computer networks mean we can now overcome geographical distances without having to travel at all โœˆ๏ธ (we get to work with people anywhere, from our own desks ๐Ÿ™Œ). Besides the phone, we can swap electronic data to discuss working documents, new ideas, plans or literally whatever. One of the most popular ways to do this is electronic mail, which can carry every kind of electronic data, from informal plain text messages all the way to formatted and multi-media documents ๐Ÿ’Œ.

As more and more people connect to computer networks (and it's growing continuously, at least doubling each year!! ๐Ÿ˜ญ), it gets harder to track down people's electronic (mail) addresses ๐Ÿ”. So if we want global communication over computer networks to work, a global White Pages service is absolutely indispensable ๐Ÿ’ฏ. It should definitely provide people's electronic mail addresses, but it could also easily contain telephone and fax numbers and postal addresses ๐Ÿ“ฌ.

Right now, one technical solution for a globally distributed White Pages service is X.500, and there's an international infrastructure based on X.500 technology called 'Paradise' (Piloting An inteRnationAl DIrectory SErvice) ๐Ÿ๏ธ. It contains about 1.5 million entries belonging to persons and 3,000 belonging to organisations, and 35 countries are involved worldwide. Paradise is also an EC project. The project runs until September 1994. After that, its operational tasks will be taken over by a European service provider for the R&D community, called DANTE ๐ŸŒ.

The goal of Paradise and related national initiatives is to stimulate and extend the use of the X.500 White Pages service ๐Ÿš€. Within the pilot, attention is paid to technical and organisational aspects. The Paradise infrastructure is mainly based on the Internet Protocol. The specific issues related to using the Internet Protocol for X.500 can be found in [5] ๐Ÿ“–.

When an organisation decides whether to join the international X.500 infrastructure and open up (part of) its local address information to the outside world, it's important that it fully understands the technical and organisational issues involved ๐Ÿค”.

This document helps with this by first explaining the main concepts of X.500 (section 2), then pointing out its benefits (section 3), the organisational aspects involved (section 4), and which other applications the X.500 infrastructure may be used for in the near future (section 5) ๐Ÿ—บ๏ธ.

2. Concept of X.500 ๐ŸŽ€

X.500 describes a so-called 'Directory Service', which can be used for all types of electronic directories ๐Ÿ’…. This document focuses on using X.500 for a global White Pages Directory. The concept of X.500 can roughly be divided into the 'Directory model' and the 'Information model' โœจ.

2.1 Directory model ๐ŸŒณ

X.500 takes a distributed approach to reach its goal of a global Directory Service ๐ŸŒ. The idea is that an organisation's local (communication oriented) information is maintained locally, in one or more so-called Directory System Agents (DSA's). 'Locally' is a flexible word here: one DSA can keep information for more than one organisation ๐Ÿ™ˆ. A DSA is essentially a database that:

  • stores the information according to the X.500 standard (see section 2.2),
  • has the ability, where necessary, to exchange data with other DSA's.

Through communicating with each other, the DSA's form the Directory Information Tree (DIT) ๐ŸŒฒ. The DIT is a virtual hierarchical datastructure with a 'root' at the top, below which 'countries' are defined. Below the countries (usually) 'organisations' are defined, and below an organisation come 'persons', or first additional 'organisational units' ๐Ÿข. Here's a simplified illustration where only three countries and no organisational units are shown:

             root                      o
                                      /|\
                                     / | \
                                    /  |  \
             countries            uk   de  fr
                                 / |   /\   |\
                                /  |  /  \  | \
             organisations     a   b c    d e  f
                               |   | |    | |  |
             persons          ..  .. ...  .... ...

The DIT is a representation of the global Directory ๐ŸŒ.

Each DSA holds a part of the global Directory and can figure out, through the hierarchical DIT structure, which DSA holds which parts of the Directory ๐Ÿงญ.

The standard doesn't describe how to distribute different parts of the Directory among DSA's. What it does say is that the information corresponding to a single node of the DIT (i.e., a country, organisation, person) cannot be distributed over several DSA's ๐Ÿšซ. In practice, a large organisation will maintain one or more DSA's to hold its part of the Directory, while smaller organisations may share a DSA with other organisations ๐Ÿค. Either way, the distribution among the DSA's is totally transparent to the users of the Directory โœจ.

A user of the Directory can be a person or a computer ๐Ÿค–. A user accesses the Directory through a so-called Directory User Agent (DUA). The DUA automatically contacts a nearby DSA, which lets the user search or browse through the DIT and retrieve the corresponding information ๐Ÿ”Ž. A DUA can be built into all sorts of user interfaces, so users may access the Directory through dedicated DUA interfaces or through e-mail applications, for example ๐Ÿ“จ. Currently most DUA interfaces used by persons are dedicated, but it's expected that in the near future a lot of DUA interfaces will be integrated with other applications ๐Ÿ”ฎ.

2.2 Information Model ๐Ÿงพ

Besides the Directory model, the X.500 standard also defines the information model used in the Directory Service ๐Ÿ“‹.

All information in the Directory is stored in 'entries', and each one belongs to at least one so-called 'object class' ๐Ÿ—‚๏ธ. In the White Pages application of X.500, which is what we're focusing on here, object classes are defined such as 'country', 'organisation', 'organisational unit' and 'person' ๐Ÿ’œ.

The actual information in an entry is determined by so-called 'attributes' contained in that entry. The object classes an entry belongs to define what types of attributes the entry may use, and therefore what information is specific to entries of that object class ๐Ÿงฉ. For example, the object class 'person' allows attribute types like 'common name', 'telephone number', and 'e-mail address' to be used, while the object class 'organisation' allows attribute types like 'organisation name' and 'business category' ๐Ÿ’…. Depending on its type, an attribute can take one or more values ๐ŸŒˆ.

To specify the name of an entry in the DIT, at least one attribute value of the entry is used ๐Ÿท๏ธ. The entry of a person is usually named after the value of the attribute type 'common name'. The name of an entry must be unique on the same level in the subtree of the DIT to which the entry belongs ๐Ÿซถ.

Check out this example of an entry belonging to the object class 'person' ๐Ÿ‘€:

       Attribute type              Attribute value
       --------------              --------------

       Object Class:               top
                                   person
       Common Name:                Thomas Lenggenhager
                                   T. Lenggenhager
       Surname:                    Lenggenhager
       Postal Address:             SWITCH
                                   Limmatquai 138
                                   CH-8001 Zuerich
       Telephone Number:           +41 1 268 1540
       Facsimile Telephone Number: +41 1 268 1568
       Mail:                       lenggenhager@switch.ch

This entry corresponds to the node in the DIT that sits below the node of the organisation 'SWITCH', and it's named after the first value of the attribute type 'common name': 'Thomas Lenggenhager' ๐Ÿฆ‹.

3. Benefits of X.500 โœจ

okay so, why would anyone pick X.500 for a local White Pages service? ๐Ÿค” here are some really good arguments, bestie ๐Ÿ’–

  • the distributed character of the service ๐ŸŒธ a big organisation can split up the responsibility for managing the info it publishes through X.500 by spreading that info over several DSAs. and the overall structure? still totally intact ๐Ÿงš
  • the flexibility of the service ๐Ÿฆ‹ X.500 isn't just for public stuff, it can also power specific private Directory Service apps. so the public White Pages info in an org has to match the DIT, object class and attribute type definitions used by the rest of the world ๐ŸŒ but internal apps can use their own DIT structure and their own object classes and attributes (and those values only show up within (a part) of the org) ๐Ÿ‘€ and yes, one local setup can serve both public and private computers at once ๐Ÿ’…
  • a good alternative to paper directories ๐Ÿ“„ paper ones are rarely up-to-date (printing costs, ugh) and X.500 isn't only for humans, applications can use it too ๐Ÿซถ

some super important arguments for global use:

  • distributed = perfect for a huge global White Pages ๐ŸŒ maintenance can happen in a distributed way, which is iconic ๐Ÿ‘‘
  • the searching is elite ๐Ÿ” X.500 lets you search at any level or in any subtree of the DIT. you specify an attribute type together with a value, and the Directory finds all the entries that contain an attribute of that type with that value. for example, you could look up every person in an org with a particular common name, or every org in a country whose business category is telecommunications. the organisations that maintain the DSAs decide who gets to do which searches, and how many levels deep a search is allowed to go ๐Ÿ™ƒ

searches can be an exact match or an approximate one. ngl, distributed searches (the ones that need connections to a lot of DSAs) can get expensive and generally aren't encouraged ๐Ÿ’€

  • DUA interfaces for all the workstations ๐Ÿ’ป there are DUA interfaces for the White Pages service available for all types of workstations (DOS, Macintosh OS, Unix). for an overview of X.500 software, check RFC 1292 [2] or updates of this document ๐Ÿ“š
  • it's an international standard ๐ŸŒ using a standard obviously means fewer problems with interoperability and interworking. and the standard gets updated based on practical experience too ๐Ÿ™Œ

4. Organisational aspects of X.500 (experience from Paradise) โœจ

running a local X.500 (or any other electronic) Directory comes with organisational aspects, and they can roughly be split into three sub-aspects: data management, legal issues and cost aspects. with cost aspects, there's no publicly known model or experience at the moment ๐Ÿคทโ€โ™€๏ธ

so the focus in this document is on data management and legal issues ๐ŸŽฏ

data management is all about getting the right info into the Directory and keeping it up to date ๐Ÿ“

from the experience of Paradise participants, these items are of first importance ๐Ÿ‘‘:

  • executive commitment ๐Ÿ’ผ without this, it's almost impossible to create an organisation-wide, up-to-date electronic Directory ๐Ÿ˜ญ
  • structure of the local DIT ๐Ÿ—‚๏ธ joining the international infrastructure means an organisation has to conform to some rules for the local DIT structure as presented to the global X.500 infrastructure. a recommendation on how to structure a local DIT and use the available attributes can be found in [7]. the most important recommendation in that document is to keep the local part of the DIT as simple (flat) as possible, because users from outside the organisation may have a hard time finding entries of persons inside it (searches in the DIT are often only allowed one level deep) ๐Ÿ™ˆ
  • attributes to be used ๐Ÿท๏ธ for the existing infrastructure, the objects and associated attributes that are globally used are documented in [1] ๐Ÿ“–
  • sources of the data ๐Ÿ”Ž an organisation has to find out where to get what kind of data, and develop procedures for uploading it to its DSA('s) โฌ†๏ธ
  • delegating responsibilities for updates ๐Ÿค procedures have to be developed for updates of the local Directory, and those procedures have to include delegation of responsibilities ๐Ÿ“‹
  • security procedures ๐Ÿ” rules have to be set for access and security. who may contact the DSA? who gets access to which subtrees and what attributes? ๐Ÿ‘€

a study of the legal consequences of presenting (address) info via X.500 led to the main conclusion that in Europe, an organisation has to formally register its data collections (yes, this one is serious, babe). registration implies defining a goal for the application ๐ŸŽฏ this has to be done for the White Pages service as well as for any deviating local application of X.500. however, the different national laws may differ when it comes to legal restrictions. for more info on this subject, check out "Building a Directory Service, Final Report test phase SURFnet X.500 pilot project", E. Huizer, SURFnet B.V., Utrecht NL, 1994. (copies available from SURFnet B.V.) ๐Ÿ“š

several Paradise members have pilots running right now to evaluate the organisational aspects ๐Ÿงช and case studies coming from those pilots will be documented โœจ

small or medium size organisations that don't have too many entries to insert can use one of the different national initiatives concerning a 'central DSA' ๐Ÿข these central DSAs are operated by national service providers and contain the White Pages info of a lot of small and medium size organisations. for organisations in countries without such a national service, there's a European central DSA (Paradise) and an American central DSA (InterNIC) ๐ŸŒ it's worth noting that central DSA services are only technical services, so a participating organisation still has to cover the organisational issues ๐Ÿ˜ค but part of a central DSA service may be consultancy with respect to data management and legal issues ๐Ÿ’โ€โ™€๏ธ


5. Applications of X.500 โœจ

besides White Pages, X.500 can be useful for all kinds of distributed info storage that humans or machines can benefit from ๐Ÿง  examples that are likely to use X.500 in the near future are: the distribution list mechanism, public key distribution for Privacy Enhanced Mail (PEM), routing of X.400 messages, distribution of EDI identifiers, etc. for more, see [7]. the first three get a quick look below ๐Ÿ‘‡

distribution lists ๐Ÿ“ฌ the distribution list mechanism uses X.500 to find the e-mail addresses of the persons who have subscribed to a list. the distributed approach means people can change their e-mail address without having to change their subscriptions to distribution lists ๐Ÿ™Œ

PEM ๐Ÿ” (see a.o. [8] or [4]) PEM uses a public key mechanism for exchanging secure e-mail messages. for example, you can send a secure message by encrypting it with the publicly known (public) key of the recipient ๐Ÿ—๏ธ only the recipient can decipher the message, using his/her private key. to make this mechanism work, you need access to the public keys of all possible recipients, and X.500 can be used for that ๐Ÿ’œ

X.400 routing ๐ŸŒ a world-wide pilot is running in which X.400 routing is done by means of X.500. X.400 MTAs use special DUAs to find, via the Directory, the MTAs to which the recipients of a message want their mail to be delivered. the distributed approach of X.500 will mean much less routing management, since right now tables are used that have to be updated/exchanged periodically ๐Ÿฆ‹


6. References ๐Ÿ“š

[1] Barker, P., and S. Kille,"The COSINE and Internet X.500 Schema", RFC 1274, University College London, November 1991.

[2] Getchell, A., and S. Sataluri, Editors, "A Revised Catalog of Available X.500 Implementations", FYI 11, RFC 1632, Lawrence Livermore National Laboratory, AT&T Bell Laboratories, May 1994.

[3] Weider, C., and J. Reynolds, "Executive Introduction to Directory Services using the X.500 Protocol", FYI 13, RFC 1308, ANS, USC/Information Sciences Institute, March 1992.

[4] Linn, J., "Privacy Enhancement for Internet Electronic Mail:Part I: Message Encryption and Authentication Procedures", RFC 1421, IAB IRTF PSRG, IETF PEM WGs, Feblruary 1993.

[5] Hardcastle-Kille, S., Huizer, E., Cerf, V., Hobby, R., and S. Kent, "A Strategic Plan for Deploying an Internet X.500 Directory Service", RFC 1430, ISODE Consortium, SURFnet bv, Corporation for National Research Initiatives, University of California, Davis, Bolt, Beranek and Newman, February 1993.

[6] Yeong, W., Howes, T., and S. Kille, "Lightweight Directory Access Protocol", RFC 1487, Performance Systems International, University of Michigan, ISODE Consortium, July 1993.

[7] Weider, C., and R. Wright, R., "A Survey of Advanced Usages of X.500", FYI 21, RFC 1491, Merit Network, Inc, Lawrence Berkeley Laboratory, July 1993.

[8] "Privacy Enhanced Mail in more detail", Zegwaart, E., Computer Networks for Research in Europe Vol. 2, pp. 63-71.

[9] Barker, P., Kille, S., and T. Lenggenhager, T., "Naming and Structuring Guidelines for X.500 Directory Pilots", RTR 11/RFC 1617, University College London, ISODE Consortium, SWITCH, May 1994.

For a good technical introduction to X.500 we also recommend:

[10] Rose, M., "The Little Black Book", PSI Inc., Prentice Hall Inc., New Jersey, 1992.

[11] Steedman, D., "The Directory standard and its application", Technology Appraisals, Twickenham (U.K.), 1993.


7. Security Considerations ๐Ÿ˜ฑ

Security issues are not explicitly discussed in this memo. Yes, you read that right, bestie. ๐Ÿ’€

8. Author's Address ๐Ÿ’Œ

Peter Jurg
SURFnet bv
Postbus 19035
NL-3501 DA Utrecht
The Netherlands

Phone: +31 30 310290
Fax: +31 20 340903
RFC822: Peter.Jurg@surfnet.nl
X.400: C=nl; ADMD=400net; PRMD=surf; O=surfnet; S=jurg
๐Ÿ“ฆ where this page comes from