CHAPTER 4

Creating Groups

Creating Group Entries  

46  

Distribution List Tasks  

49  

- Assigning Owners to Groups  

50  

- Adding Members to a Distribution List  

50  

- Making Distribution Lists User Joinable  

51  

- Designating Moderators  

51  

- Creating Posting Restrictions on Distribution Lists  

52  

- Designating Addresses for Requests  

54  

- Setting Error Handling Parameters  

55  




This section discusses creating distribution lists (also called groups). A distribution list is a collection of users to which mail can be sent with a single email address. Also discussed will be various tasks for creating group entries. For each task, the attribute will be shown, and an LDIF record example will be shown to illustrate the syntax.


Note - Some of the example code samples contain attribute-value pairs that span more than one line. If this is the case, every line after the first must begin with a blank space. This blank space is shown in the hard copy or PostScript files, but it may not show on the html browser.


Creating Group Entries

FIGURE  4-1 Creating a Group.

An e-mail distribution list is represented in the directory in the ou=groups container. Information about that group is defined in an entry within that container. An example is shown below.

CODE  EXAMPLE  4-1 LDIF Record for Creating a Group. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
uniqueMember: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Distribution List Attributes

dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
  The distinguished name of the group, basketball@stream.com.
 
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
  These are the object classes required for all distribution lists.
  groupOfUniqueNames object class contains attributes useful for describing a collection of user objects. This object class inherits from top and is the structural object class.
  inetMailRouting object class contains attributes required for the routing common to all internet email recipients. This class is for entries describing either email users (inetMailUser) or groups (inetMailGroup).
  inetMailGroup object class contains attributes useful for an e-mail distribution list.

groupOfUniqueNames Attributes

cn: basketball
  cn (commonname) is the distribution list's common name. There can be more than one cn attribute for a distribution list, however each cn must be unique within the domain.
 
uniqueMember: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet
  (Required.) This attribute specifies the distinguished names of members of this distribution list.

Note - All distribution lists are required to have at least one unique member.

inetMailGroup Attributes

rfc822MailMember: camden.kimura@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
  rfc822mailmember stores the e-mail addresses (RFC-822 format) defined for the external members of this list (members without resolvable DNs).
 
inetMailGroupVersion: 1.0
  inetmailgroupversion is a version tag of this object class. This attribute must be set when an entry is created using this object class. The starting version tag is 1.0.
 
inetMailGroupStatus: active
  inetmailgroupstatus specifies the status of a distribution list. The intent of this attribute is to allow the ISP to suspend and reactivate the distribution list. This attribute takes one of three values active, inactive, deleted (marked for deletion). If this attribute is missing, the semantics are the same as if it is active.
 
dataSource: Mail Server 4.0
  datasource is free form text entry of the original data source or migration tool for data in the group entry.
 
expandable: false
  expandable specifies whether if the distribution list is expandable or not. If set to true, then someone can read the addresses of the members of the distribution list by using the SMTP command expn <dl_name>. If not specified, default is true.

inetMailRouting Attributes

mail: basketball@stream.com
  The group's advertised e-mail address.
 
mailHost: buffalo.stream.com
  This is the fully qualified hostname of the IMTA where the distribution list is expanded.
 
rfc822MailAlias: b-ball_players@stream.com
  Stores alternate e-mail aliases (RFC-822 format), if any, defined for the distribution list. Mail to this address will be delivered to the group associated with this entry. The value must be unique for all mail and rfc822MailAlias attributes in a domain.


Distribution List Tasks

Assigning Owners to Groups  

50  

Adding Members to a Distribution List  

50  

Making Distribution Lists User Joinable  

51  

Designating Moderators  

51  

Creating Posting Restrictions on Distribution Lists  

52  

Designating Addresses for Requests  

54  

Setting Error Handling Parameters  

55  

This section describes how to implement common tasks on distribution list entries. The entire LDIF record is shown for most tasks. Usually, however, these tasks require only adding or modifying one or more attributes to an existing distribution list. Instead of using the entire record, use only the lines in italics. For example, to do the task described in the following section using ldapmodify, you would do:

# ./ldapmodify -D "<SIMS Admin DN>" -w <passwd> -f change.ldif

where the contents of change.ldif is:

dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
changetype: modify
add: owner
uniqueMember: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet


Assigning Owners to Groups

Group owners can add or delete members to the distribution list. To change an owner to a group, assign a distinguished name to the owner attribute from objectClass groupOfUniqueNames. There can be more than one owner for the group, but owners must have valid DNs in the directory where the distribution list is defined. Example code is shown below.

CODE  EXAMPLE  4-2 LDIF Record for Creating a Group with an Owner. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
owner: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet
uniqueMember: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Adding Members to a Distribution List

Add internal members (members with resolvable DNs) by assigning their DN to the attribute uniqueMember. Add external members by assigning their email address to the attribute rfc822MailMember.

CODE  EXAMPLE  4-3 LDIF Record for Adding Members to a Group. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
changetype: modify
add: uniqueMember
uniqueMember: cn=Wally Boi,ou=people,dc=stream,dc=com,o=internet
-
add: rfc822MailMember
rfc822MailMember: wilt@abalone.com


Making Distribution Lists User Joinable

You can allow members within the directory domain to add or remove themselves from a distribution list by setting the attribute joinable to true. The values for this task are TRUE and FALSE.



CODE  EXAMPLE  4-4 LDIF Record for a Group Joinable. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
uniqueMember: cn=Kevin Cox (Lighting),ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
joinable: true
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Designating Moderators

A group moderator(s) is someone who first receives a message to the distribution list, reads it, then forwards it to the rest of the members if desired. Any message submitted to the group will go to the moderator instead of the distribution list members. The moderator will then send the message to the distribution list as desired, where it will be delivered to the individual members. Set a valid DN or email address to the attribute moderator. Multiple moderators are allowed.


Format of inetMailGroup Attribute Values

There are several inetMailGroup attributes--errorsTo, requestsTo, moderator, authorizedSubmitter, unauthorizedSubmitter--that can contain both RFC-822 mail addresses and DNs of LDAP entries. This is permitted since inetMailGroup is both an LDAP and email entity. When preceded by ldap:/// the entry is taken as an LDAP entry with the remaining value treated as the distinguished name of the entry. For example:

moderator: ldap:///cn=Kevin Cox (White Lightening)
,ou=people,dc=stream,dc=com,o=internet

When preceded by mailto: the entry is interpreted as an RFC-822 address. A missing prefix of ldap:/// or mailto: for the entry is assumed to be an RFC-822 address.

Note that the moderator attribute-value pair spans two lines and that the second line must start with a blank space. (If you are reading this on-line, this space may not be displayed in your browser.)

CODE  EXAMPLE  4-5 LDIF Record for Creating Group Moderators. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
moderator: ldap:///cn=Kevin Cox (Lightening)
,ou=people,dc=stream,dc=com,o=internet
moderator: camden.miyoko@abalone.com
uniqueMember: cn=Kevin Cox (Lightening),ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Creating Posting Restrictions on Distribution Lists

Restrictions can be placed on what submitters or domains can or cannot send mail to the group. The restriction attributes are as follows:

authorizedSubmitter defines the list of addresses that are authorized to send messages to the distribution list. If this attribute is not included in the LDIF record, the list is unrestricted, meaning it will not contain the authorized/unauthorized submitters, or the authorized/unauthorized domains. The From: header address must match one of the addresses in the permitted list before the IMTA will route the message to a list of members.
unauthorizedSubmitter specifies addresses not permitted to post messages to the list. The sender's address is compared against those in this attribute. If there is a match then the message is rejected.
authorizedDomain specifies the domain names from which users are authorized to post messages to the distribution list. The wildcard character is "*". Using the wildcard character one may optionally replace a sub-domain to authorize the entire DNS hierarchy below a given top or sub-domain.
unauthorizedDomain defines the domain names from which users cannot post messages to the distribution list.

Note - Note that DNs values for authorizedSubmitter, unauthorizedSubmitter must have the prefix ldap:///. Refer to Section , "Format of inetMailGroup Attribute Values," on page 51.

Precedence Rules

The following precedence rules are followed by the IMTA when deciding whether it should accept the message for further processing or not ("From:" address is used in all the rules when looking for match):

  1. If unauthorizedSubmitter attribute exists in the LDAP entry, the sender's address must not match either the mail attribute or rfc822MailAlias attribute of any DN listed in the form of a ldap:///<DN> address and must not match the RFC-822 address listed in the form of a mailto:<RFC-822> address.
  2. if authorizedSubmitter attribute exists in the LDAP entry, the sender's address must match either the mail attribute or rfc822MailAlias attribute of any DN listed in the form of a ldap:///<DN> address and must not match the RFC-822 address listed in the form of a mailto:<RFC-822> address.
  3. if unauthorizedDomain exists in the LDAP entry, then sender's domain must not match the domain(s) listed in the unauthorizedDomain attribute.
  4. If authorizedDomain attribute exists in the LDAP entry, then the sender's domain must match the domain(s) listed in the authorizedDomain attribute.

CODE  EXAMPLE  4-6 LDIF Record for Creating Group Posting Restrictions. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
uniqueMember: cn=Kevin Cox (Lightening),ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
unauthorizedSubmitter: xxx@porno.com
unauthorizedDomain: spam.net
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Designating Addresses for Requests

You can set the requestTo attribute to forward the distribution list subscription requests to a particular address. Note that the requestsTo attribute-value pair spans two lines and that the second line must start with a blank space. (If you are reading this on-line, this space may not be displayed in your browser.)

CODE  EXAMPLE  4-7 LDIF Record for Creating a requestTo Attribute. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
requestsTo: ldap:///cn=Kevin Cox (Lightening)
,ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
uniqueMember: cn=Kevin Cox (White Lightening)
,ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com


Setting Error Handling Parameters

Mail delivery error handling is set in one of two ways:

Delivery errors are reported to the original sender.
Delivery errors go back to the address specified in the errorsTo attribute.

Set the errorsTo attribute to the address to which distribution list errors are sent. When a list is expanded, the original return address in the envelope is replaced by this address. The intent is for errors to be sent to the owner of the list, rather than the message originator who generally has no control over the contents of the list. If the errorsTo attribute is not specified, errors are sent to the originator.

The Requirements for Internet Hosts [RFC1123] specify that all IMTAs should support a mechanism where a list is expanded, but with the original return address preserved. This is referred to by the RFC as aliasing. This can be achieved by omitting the errorsTo attribute.

Note that the errorTo attribute-value pair spans two lines and that the second line must start with a blank space. (If you are reading this on-line, this space may not be displayed in your browser.)

CODE  EXAMPLE  4-8 LDIF Record for Setting errorTo Attribute. 
dn: cn=basketball,ou=groups,dc=stream,dc=com,o=internet
objectClass: groupOfUniqueNames
objectClass: inetMailRouting
objectClass: inetMailGroup
cn: basketball
errorsTo: ldap:///cn=Kevin Cox (White Lightening)
,ou=people,dc=stream,dc=com,o=internet
uniqueMember: cn=Kevin Cox (White Lightening)
,ou=people,dc=stream,dc=com,o=internet
rfc822MailMember: camden.miyoko@abalone.com
rfc822MailMember: bryn.yasuko@noodle.net
inetMailGroupVersion: 1.0
inetMailGroupStatus: active
dataSource: Mail Server 4.0
expandable: false
mail: basketball@stream.com
mailHost: buffalo.stream.com
rfc822MailAlias: b-ball_players@stream.com




Copyright © 1999 Sun Microsystems, Inc. All Rights Reserved.