Sun Java System Messaging Server 6 2005Q4 管理ガイド

LDAP 結果を処理する

LDAP エイリアス結果は、順序依存性のあるいくつかの段階で処理されます。次の各項で、これらの段階について説明します。

オブジェクトクラスチェック

エイリアス検索が成功した場合、エントリのオブジェクトクラスがチェックされ、ユーザーまたはグループに適したオブジェクトクラスのセットを含んでいることが確認されます。ユーザーおよびグループに必要なオブジェクトクラスのセットは、通常、どのスキーマがアクティブであるかよって異なります。これは、local.imta.schematag 設定で決定されます。

表 9–1 に、さまざまな schematag 値から得られるユーザーおよびグループのオブジェクトクラスを示します。

表 9–1 さまざまな schematag 値から得られるオブジェクトクラス

schematag

ユーザーオブジェクトクラス 

グループオブジェクトクラス 

sims40

inetMailRouting+inetmailuser

inetMailRouting+inetmailgroup

nms41

mailRecipient + nsMessagingServerUser

mailGroup

ims50

inetLocalMailRecipient+inetmailuser

inetLocalMailRecipient + inetmailgroup

この表の情報は、ほかのスキーマタグの処理と同様に、ハードコード化されています。ただし、option.dat ファイルには、LDAP_USER_OBJECT_CLASSESLDAP_GROUP_OBJECT_CLASSES の 2 つの MTA オプションがあり、前者はユーザー用、後者はグループ用に、別のオブジェクトクラスのセットを指定するように設定することが可能です。

たとえば、ims50,nms41 のスキーマタグ設定は、次のオプション設定と同等です。

LDAP_USER_OBJECT_CLASSES=inetLocalMailRecipient+inetmailuser, mailRecipient+nsMessagingServerUser

LDAP_GROUP_OBJECT_CLASSES=inetLocalMailRecipient+inetmailgroup, mailGroup

LDAP 結果にユーザーまたはグループに適した正しいオブジェクトクラスのセットがない場合、LDAP 結果は無視されます。MTA は、ユーザーまたはグループを処理しているかどうかを判断し、この情報を保存します。保存された情報は、あとで繰り返し使用されます。

ここで説明したオブジェクトクラス設定は、ユーザーまたはグループに適した正しいオブジェクトクラスがエントリにあるかどうかをチェックするために使用できる、実際の LDAP 検索フィルタを構築するためにも使用されます。このフィルタは、$K メタキャラクタを経由してアクセスできます。また、コマンド imsimta cnbuild -option が使用されたときの LDAP_UG_FILTER と同様、チャネルプログラムで使用するために MTA の設定に内部的に保存され、MTA オプションファイル option.dat に書き込まれます。このオプションは、ファイルに書き込むだけです。MTA がオプションファイルから読み取ることはありません。

エントリステータスチェック

次のエントリのステータスがチェックされます。2 つのステータス属性があり、1 つは一般的なエントリ用、もう 1 つはメールサービス専用です。

表 9–2 に、有効化されているスキーマに応じてチェック対象になる、スキーマタグエントリ内の一般およびメール固有のユーザー属性またはグループ属性を示します。

表 9–2 チェック対象の属性

schematag

タイプ 

一般 

メール固有 

sims40 

ユーザー 

inetsubscriberstatus

mailuserstatus

sims40 

グループ 

なし 

inetmailgroupstatus

nms41 

ユーザー 

なし 

mailuserstatus

nms41 

グループ 

なし 

なし 

Messaging Server 5.0 

ユーザー 

inetuserstatus

mailuserstatus

Messaging Server 5.0 

グループ 

なし 

inetmailgroupstatus

必要に応じて、option.dat ファイルにある LDAP_USER_STATUS および LDAP_GROUP_STATUS MTA オプションを使用して、前者はユーザー用、後者はグループ用に、別の一般ステータス属性を選択することができます。メール固有のユーザーおよびグループのステータス属性は、LDAP_USER_MAIL_STATUS および LDAP_GROUP_MAIL_STATUS の各 MTA オプションで制御します。

このチェックで使用されるもう 1 つの要素は、ドメイン自体のステータス (LDAP_DOMAIN_ATTR_STATUS および LDAP_DOMAIN_ATTR_MAIL_STATUS) です。全部で 4 つのステータス属性があります。これらのステータスは、次に示す順序で考慮されることによって組み合わせられます。

  1. ドメインステータス

  2. ドメインメールステータス

  3. ユーザーまたはグループのステータス

  4. メールユーザーまたはメールグループのステータス

これらのうち、「active」以外のステータスを示す最初のステータスは、ほかのステータスより優先されます。これ以外に許容されるステータス値は、「inactive」、「deleted」、「removed」、「disabled」、「hold」、および「overquota」です。「hold」、「disabled」、および「removed」ステータスは、メールドメイン、メールユーザー、またはメールグループのみに指定されます。「overquota」ステータスは、メールドメインステータスまたはメールユーザーステータスとしてのみ指定されます。

特定のステータス属性が存在しない場合、すべてのステータスはデフォルトの「active」になります。不明なステータス値は、「inactive」として解釈されます。

4 つのステータスが組み合わせられると、ユーザーまたはグループに次のステータスが可能になります。「active」、「inactive」、「deleted」、「removed」、「disabled」、「hold」、および「overquota」。active ステータスの場合、エイリアス処理が続行されます。inactive または overquota ステータスの場合、4xx (一時的) エラーが発生し、アドレスはただちに拒否されます。deleted、removed、および disabled ステータスの場合、5xx (永続的) エラーが発生し、アドレスはただちに拒否されます。hold ステータスの場合、ステータス処理に関しては active として扱われますが、内部フラグが設定されます。これによって、あとで配信オプションが考慮される際、既存のオプションはいずれも、単一の「hold」エントリが含まれているオプションリストで上書きされます。

UID チェック

次に必要な処理は、エントリの UID を考慮することです。UID はさまざまな目的で使用されます。UID はユーザーエントリの一部である必要があり、グループエントリに含まれていることもあります。UID がないユーザーエントリは無視され、このエイリアス URL の処理はエラー終了します。ホストしているドメインのエントリの UID は、実 UID、区切り文字、およびドメインで構成できます。MTA では実 UID のみを必要とするので、ほかの構成要素が存在する場合は、option.dat ファイルにある LDAP_DOMAIN_ATTR_UID_SEPARATOR MTA オプションで取得したドメイン区切り文字を使用して削除されます。

あまりないことですが、uid 以外の属性で UID が保存される場合には、別の属性を使用するように LDAP_UID MTA オプションで設定できます。

メッセージの取得

次に、メッセージ取得アドレスを指定するために使用される LDAP 属性がチェックされます。この目的で使用される属性は、LDAP_CAPTURE MTA オプションで指定されている必要があります。デフォルトはありません。この属性の値はアドレスとして扱われます。特殊な「取得」通知が生成され、このアドレスに送信されます。この通知には、現在のメッセージが添付されています。また、取得アドレスは、アドレスが以後、エンベロープ from: アドレスとして表示される場合に、アドレスリバースキャッシュをシードするために使用されます。

リバースキャッシュをシードする

次に、プライマリアドレスおよびユーザーエントリに添付されたエイリアスが考慮されます。この情報は、アドレスリバースキャッシュをシードするために使用されます。この情報は、現在のアドレス変換プロセスでは使用されません。最初に、プライマリアドレス、個人名、受取人制限、受取人の遮断、およびソースブロック制限の各属性が考慮されます。プライマリアドレスは通常、「mail」属性に保存されていますが、LDAP_PRIMARY_ADDRESS MTA オプションを適切に設定することによって別の属性を指定できます。当然、プライマリアドレスはそれ自身にリバースされます。これ以外の属性には、デフォルトの属性はありません。これらの属性を使用する場合は、LDAP_PERSONAL_NAME (「不在返信メッセージの自動返信の属性」を参照)、LDAP_RECIPIENTLIMITLDAP_RECIPIENTCUTOFF (「メッセージの受取人を制限する」を参照) 、および LDAP_SOURCEBLOCKLIMIT (「絶対的なメッセージサイズ制限を指定する」を参照) の各 MTA オプションで指定する必要があります。このときに、対応するドメインレベルの受取人制限、受取人の遮断、ソースブロック制限の各属性も考慮されます。ユーザーレベルの設定は、ドメインレベルの設定より完全に優先されます。

次に、セカンダリアドレスが考慮され、各セカンダリアドレスのキャッシュエントリが作成されます。セカンダリアドレスには 2 種類あります。アドレスリバースの対象になるものと、ならないものです。アドレスリバースキャッシュを適切にシードするためには両者とも考慮する必要があります。メッセージ取得要求があるかどうかをあらゆる場合にチェックする必要があるためです。

リバース対象になるセカンダリアドレスは通常、mailAlternateAddress 属性に保存されています。別の属性は、LDAP_ALIAS_ADDRESSES MTA オプションで指定できます。リバース対象にならないセカンダリアドレスは通常、mailEquivalentAddress 属性に保存されています。別の属性は、LDAP_EQUIVALENCE_ADDRESSES MTA オプションで指定できます。

メールホストおよびルーティングアドレス

ここでは、mailhost および mailRoutingAddress の各属性が考慮されます。考慮される実際の属性は、LDAP_MAILHOST および LDAP_ROUTING_ADDRESS の各 MTA オプションで変更できます。これらの属性は同時に機能し、現時点でアドレスを有効化するべきかどうか、または別のシステムに転送するべきかどうかを決定します。

最初に、mailhost がこのエントリにとって有効であるかどうかが判断されます。エントリに対してアクティブな配信オプションの事前チェックは、エントリがメールホスト固有であるかどうかを確認するために実行されます。メールホスト固有でない場合、mailhost チェックは省略されます。このチェック方法については、「配信オプションの処理」を参照し、特に # フラグについての説明を確認してください。

ユーザーエントリの場合、mailhost 属性を有効にするには、この属性がローカルシステムを特定している必要があります。mailhost 属性は、local.hostname configutil パラメータの値および local.imta.hostnamealiases configutil パラメータによって指定されている値のリストと比較されます。mailhost 属性は、これらのいずれかと一致した場合、ローカルホストを特定していると見なされます。

一致が見つかった場合、エイリアスをローカルで有効にすることができ、エイリアス処理は続行されます。一致が見つからない場合、メッセージを有効にするには、メールホストに転送する必要があります。次の形式の新しいアドレスが構築されます。

@mailhost:user @domain

これがエイリアス展開操作の結果になります。

欠落している mailhost 属性の処理は、エントリがユーザーであるかグループであるかによって異なります。ユーザーの場合、メールホストは不可欠であり、mailhost 属性が存在しない場合は次の形式の新しいアドレスが構築されます。

@smarthost: user@domain

このとき、 LDAP_DOMAIN_ATTR_SMARTHOST MTA オプションによって決定されたドメインのスマートホストが使用されます。ドメインのスマートホストが存在しない場合は、エラーが表示されます。

グループの場合、メールホストは必須ではなく、メールホストの欠落は、任意の場所でグループが拡張可能であるという意味に解釈されます。したがって、エイリアス処理は続行されます。

mailRoutingAddress 属性によって、最後に 1 つ問題が追加されます。この属性が存在する場合、エイリアス処理は mailRoutingAddress を結果として終了します。ただし、メールホストが存在する場合、そのメールホストが mailRoutingAddress にソースルートとして追加されます。

その他の属性のサポート

次に、mailMsgMaxBlocks 属性が考慮されます。最初に、この属性は、LDAP_DOMAIN_ATTR_BLOCKLIMIT MTA オプションから返されたドメインのブロック制限で最小化されます。現在のメッセージのサイズが制限を超過していると認識された場合、エイリアス処理はサイズ超過エラーで終了します。サイズが不明である場合、または制限を超過していない場合、この制限は保存され、あとでメッセージ自体がチェックされるときに再チェックされます。mailMsgMaxBlocks の使用は、LDAP_BLOCKLIMIT MTA オプションで変更できます。

次に、いくつかの属性に対してアクセスと保存が行われます。最終的には、これらの属性はキューファイルエントリに書き込まれ、ims_master チャネルプログラムによって使用されます。このプログラムはその後、この属性を使用してストアのユーザー情報キャッシュを更新します。個々のユーザーの属性が見つからない場合、ドメインレベルの属性を使用してデフォルトを設定できます。

この処理は、LDAP エントリがユーザーではなくグループのものである場合、または LDAP エントリが LDAP ディレクトリではなくエイリアスキャッシュに由来する場合は、スキップされます。後者の基準の背後にある論理は、この情報を頻繁に更新することは不必要であるということと、エイリアスキャッシュを使用すれば、更新が行われるべき時期についての合理的な基準が提供されるということです。取得される属性の名前は、さまざまな MTA オプションによって設定されます。

表 9–3 に、取得されるディスク制限容量とメッセージ制限容量の各属性を設定する MTA オプションを示します。

表 9–3 取得されるディスク制限容量とメッセージ制限容量の各属性を設定する MTA オプション

MTA オプション 

属性 

LDAP_DISK_QUOTA

mailQuota

LDAP_MESSAGE_QUOTA

mailMsgQuota

次に、いくつかの属性があとでメタキャラクタの置換との関連で使用できるように保存されます。

表 9–4 に、MTA オプション、デフォルトの属性、およびメタキャラクタを示します。

表 9–4 MTA オプション、デフォルトの属性、メタキャラクタ

MTA オプション 

デフォルトの属性 

メタキャラクタ 

LDAP_PROGRAM_INFO

mailProgramDeliveryInfo

$P

LDAP_DELIVERY_FILE

mailDeliveryFileURL

$F

LDAP_SPARE_1

デフォルトなし 

$1E $1G $E

LDAP_SPARE_2

デフォルトなし 

$2E $2G $G

LDAP_SPARE_3

デフォルトなし 

$3E $3G

LDAP_SPARE_4

デフォルトなし 

$4E $4G

LDAP_SPARE_5

デフォルトなし 

$5E $5G

追加の属性用のスペアスロットが含まれています。これらを使用することによってカスタマイズされたアドレス拡張機能を構築できます。

次に、mailconversiontag 属性に関連付けられている値がすべて、現在の変換タグのセットに追加されます。この属性の名前は、LDAP_CONVERSION_TAG MTA オプションで変更できます。ドメインの mailDomainConversionTag 属性に値が関連付けられている場合は、その値も同様に追加されます。

配信オプションの処理

次に、mailDeliveryOption 属性がチェックされます。この属性の名前は、LDAP_DELIVERY_OPTION MTA オプションで変更できます。これは複数の値を指定できるオプションであり、この値によってエイリアス変換プロセスで生成されたアドレスが決まります。また、許可される値は、ユーザーとグループで異なります。両者に許可される値は、programforward、および hold です。ユーザーにのみ許可される値は、mailboxnativeunix、および autoreply です。グループにのみ許可される値は、membersmembers_offline、および file です。

mailDeliveryOption 属性から適切なアドレスへの変換は、DELIVERY_OPTIONS MTA オプションによって制御されます。このオプションは、許可される mailDeliveryOption 値それぞれがどんなアドレスを生成するかだけではなく、mailDeliveryOption に許可される値は何か、またそれぞれの値がユーザー、グループ、あるいはその両方に該当するかどうかを指定します。

このオプションの値は、deliveryoption=template ペアのコンマ区切りのリストで構成され、各ペアにはオプションの単一文字のプレフィックスが 1 つまたは複数付いています。

DELIVERY_OPTIONS オプションのデフォルト値は次のとおりです。

DELIVERY_OPTIONS=*mailbox=$M%$\\$2I$_+$2S@ims-ms-daemon, \
     &members=*,                                           \
     *native=$M@native-daemon,                             \
     /hold=@hold-daemon:$A,                                \
     *unix=$M@native-daemon,                               \
     &file=+$F@native-daemon,                              \
     &@members_offline=*,                                  \
     program=$M%$P@pipe-daemon,                            \
     #forward=**,                                          \
     *^!autoreply=$M+$D@bitbucket

各配信オプションは、可能な mailDeliveryOption 属性値に対応します。対応するテンプレートは、URL 処理の場合と同じメタキャラクタの置換スキームを使用して結果のアドレスを指定します。

表 9–5 に、DELIVERY_OPTIONS オプションで使用可能な単一文字のプレフィックスを示します。

表 9–5 DELIVERY_OPTIONS MTA オプション内のオプションで使用する単一文字のプレフィックス

文字プレフィックス 

説明 

@

メッセージを再処理チャネルにリダイレクトする必要があることを示すフラグを設定します。現在のユーザーやグループの処理は中止されます。再処理チャネルから発信されるメッセージについては、このフラグは無視されます。 

*

ユーザーに適用される配信オプションです。 

&

グループに適用される配信オプションです。 

$

このユーザーまたはグループの展開は遅延されることを示すフラグを設定します。 

^

不在期間の開始と終了をチェックして配信オプションが有効化されているかどうかを確認する必要があることを示すフラグを設定します。 

#

エントリの指定メールホストに対してこの配信オプションの展開を行う必要がないことを示すフラグを設定します。つまり、続くエントリはメールホストとは無関係です。これによって、MTA は、指定されたユーザーまたはグループのすべての配信オプションがメールホストと無関係かどうかを確認します。無関係である場合、MTA はメールホストにメッセージを送信する必要はなく、エントリで即座に動作できます。 

/

この配信オプションによって生成されたすべてのアドレスを保留にするフラグを設定します。これらの受取人アドレスが記述されているメッセージファイルには、.HELD 拡張が追加されます。

!

自動返信が MTA によって内部的に処理される必要があることを示すフラグを設定します。このプレフィックスは、自動返信の配信オプションに使用した場合にのみ意味を持ちます。このオプションの値は、メッセージを bitbucket チャネルに送信するものである必要があります。 

*& のいずれも存在しない場合、配信オプションは、ユーザーとグループの両方に適用されるものと見なされます。

配信オプションで使用するその他のメタキャラクタ

MTA の URL テンプレート機能の新しい使用方法をサポートするために、その他のメタキャラクタがいくつか追加されています。次のようなタスクがあります。

表 9–6 に、配信オプションで使用するその他のメタキャラクタとその説明を示します。

表 9–6 配信オプションで使用するその他のメタキャラクタ

メタキャラクタ 

説明 

$\

後続のテキストを小文字にします。 

$^

後続のテキストを大文字にします。 

$_

後続のテキストの大文字と小文字を変換しません。 

$nA

アドレスの n 番目の文字を挿入します。最初の文字は文字 0 です。n が省略されている場合は、アドレス全体が置換されます。このメタキャラクタは、自動返信ディレクトリパスを構築するために使用されます。

$D

アドレスのドメイン部分を挿入します。 

$nE

n 番目のスペア属性の値を挿入します。n が省略されている場合は、最初の属性が使用されます。

$F

配信ファイル名 (mailDeliveryFileURL 属性) を挿入します。

$nG

n 番目のスペア属性の値を挿入します。n が省略されている場合は、2 番目の属性が使用されます。

$nH

元のアドレスのドメインの、0 から数えて n 番目のコンポーネントを挿入します。n が省略されている場合、デフォルトは 0 です。

$nI

エイリアスに関連付けられているホストしているドメインを挿入します。このメタキャラクタは、整数パラメータ n を受け入れます。このパラメータのセマンティクスについては、表 9–7 を参照してください。

$nJ

ホストドメインの、0 から数えて n 番目の部分を挿入します。n のデフォルトは 0 です。

$nO

現在のアドレスに関連付けられているソースルートを挿入します。このメタキャラクタは、整数パラメータ n を受け入れます。このパラメータのセマンティクスについては、表 9–7 を参照してください。

$K

ユーザーまたはグループのオブジェクトクラスと一致する LDAP フィルタを挿入します。出力専用の MTA オプション LDAP_UG_FILTER の説明を参照してください。

$L

アドレスのローカル部分を挿入します。 

$nM

UID の n 番目の文字を挿入します。最初の文字は文字 0 です。n が省略されている場合は、UID 全体が置換されます。

$P

プログラム名 (mailProgramDeliveryInfo 属性) を挿入します。

$nS

現在のアドレスに関連付けられているサブアドレスを挿入します。このメタキャラクタは、整数パラメータ n を受け入れます。このパラメータのセマンティクスについては、表 9–7 を参照してください。

$nU

現在のアドレスのメールボックス部分から引用符が削除された形式での、n 番目の文字を挿入します。最初の文字は文字 0 です。n が省略されている場合は、引用符なしのメールボックス全体が置換されます。 

$nX

メールホストの n 番目のコンポーネントを挿入します。n が省略されている場合は、メールホスト全体が挿入されます。

表 9–7 に、各整数パラメータに対応する $nI および $nS のメタキャラクタの動作を示します。

表 9–7 $nI および $nS のメタキャラクタの動作変更を制御する整数

整数 

動作の説明 

0

値が使用不可である場合に失敗します (デフォルト)。 

ある値が使用可能である場合に値を挿入します。それ以外の場合は何も挿入しません。 

ある値が使用可能である場合に値を挿入します。それ以外の場合は何も挿入せず、前の文字を削除します (この特殊な動作は、ims-ms チャネルによって必要とされる)。

ある値が使用可能である場合に値を挿入します。それ以外の場合は何も挿入せず、後続の文字を無視します。 

メタキャラクタに加えて、表 9–8 で示すように、2 つの特殊なテンプレート文字列があります。

表 9–8 特殊なテンプレート文字列

特殊なテンプレート文字列 

説明 

*

グループの拡張を実行します。この値はユーザーエントリに対しては無効です。 

**

LDAP_FORWARDING_ADDRESS MTA オプションによって指定されている属性を拡張します。これによってデフォルトの mailForwardingAddress になります。

たとえば、グループ拡張の場合、ユーザーの mailDeliveryOption 値が mailbox に設定されていると、UID、パーセント記号 (適用可能な場合はこのあとにホストしているドメインが続く)、プラス記号 (指定されている場合はこのあとにサブアドレスが続く)、および @ims-ms-daemon で構成される新規アドレスが作成されます。

配信オプションのデフォルト

この時点でアクティブな配信オプションのリストが空である場合、リストの最初のオプション (通常はメールボックス) がユーザー用にアクティブ化され、リストの 2 番目のオプション (通常はメンバー) がグループ用にアクティブ化されます。

開始日と終了日のチェック

配信オプションリストが読み取られた後、開始日と終了日のチェックが実行されます。それぞれの属性名は、LDAP_START_DATE (デフォルトは vacationStartDate ) および LDAP_END_DATE (デフォルトは vacationEndDate) の各 MTA オプションで制御します。1 つ以上のアクティブな配信オプションで ^ プレフィックス文字を指定した場合、これらのオプションの値は、現在の日付と照らしてチェックされます。現在の日付がこれらのオプションで指定されている範囲に含まれていない場合、プレフィックス ^ 付きの配信オプションは、アクティブなセットから削除されます。詳細は、「不在返信メッセージの自動返信の属性」を参照してください。

Optin 属性と Presence 属性

LDAP_OPTIN MTA オプションを使用すると、スパムフィルタの opt-in 値のリストを含んでいる LDAP 属性を指定できます。このオプションが指定されている場合で、かつ属性が存在する場合は、現在のスパムフィルタの opt-in リストに追加されます。LDAP_DOMAIN_ATTR_OPTIN MTA オプションで設定されているドメインレベルの属性によって設定されている値もリストに追加されます。

LDAP_PRESENCE MTA オプションを使用すると、ユーザーの存在情報を返すように解決可能な URL を指定できます。このオプションが指定されている場合で、かつ属性が存在する場合、その値は Sieve による存在テストに関連して使用できるように保存されます。LDAP_DOMAIN_ATTR_PRESENCE MTA オプションによって設定されるドメインレベル属性は、ユーザーエントリの値がない場合に、この URL のソースとして使用されます。

Sieve フィルタの処理

次に、このエントリに適用される Sieve フィルタがあるかどうかについて mailSieveRuleSource 属性がチェックされます。この属性が存在する場合、属性はこの時点でパースされ、保存されます。この属性の値としては、完全な Sieve スクリプトが含まれている単一の値または各値に 1 個の Sieve スクリプトが含まれている複数の値の 2 つの形式が可能です。後者の形式は、Web フィルタ作成インタフェースによって作成されます。それぞれの値を順番に並べて適切につなげるための特別なコードが使用されます。

mailSieveRuleSource 属性の使用は、LDAP_FILTER MTA オプションで変更できます。

据え置き処理の制御

次に、mailDeferProcessing 属性がチェックされます。この属性は、LDAP_REPROCESS MTA オプションで変更できます。この属性が存在し、no に設定されている場合、処理は通常どおりに続行されます。属性が yes に設定されていて、現在のソースチャネルが再処理チャネルではない場合、このエントリの拡張は異常終了し、元の user@domain アドレスが再処理チャネルのキューに入れられます。この属性が存在しない場合、配信オプションの処理に関連付けられている据え置き処理の文字プレフィックスの設定がチェックされます。「配信オプションの処理」を参照してください。ユーザーのデフォルトは no です。グループのデフォルトは、MTA オプション DEFER_GROUP_PROCESSING で制御されます。このオプションのデフォルトは 1 (yes) です。この時点で、ユーザーエントリのエイリアス処理は終了します。

グループ拡張属性

その他のいくつかの属性はグループ拡張に関連付けられており、この時点で処理される必要があります。これらの属性の名前はすべて、さまざまな MTA オプションで設定可能です。

表 9–9 に、デフォルトの属性名、属性名を設定する MTA オプション、および MTA による属性の処理方法を示します。この表での要素の順序は、各グループ属性が処理される順序を示しています。正しく動作するには、この順序が不可欠です。

表 9–9 グループ拡張のデフォルト属性および設定用 MTA オプション

デフォルトの属性 

(属性名を設定する MTA オプション) 属性の処理方法 

mgrpMsgRejectAction

(LDAP_REJECT_ACTION) 後続のアクセスチェックのいずれかが失敗した場合の処理を制御する単一値の属性。1 つの値 TOMODERATOR だけが定義されており、設定すると、mgrpModerator 属性で指定したモデレータにアクセスのエラーをすべてリダイレクトするように MTA に指示します。デフォルト (およびこの属性のほかの値すべて) では、エラーを報告し、メッセージは拒否されます。

mailRejectText

(LDAP_REJECT_TEXT) この属性の最初の値に格納された最初の行が保存されます。後続の認証属性のいずれかが原因でメッセージが拒否された場合、このテキストが返されます。テキストは SMTP 応答に表示されるため、現在のメッセージング規格に準拠するには、値は US-ASCII に制限する必要があります。

mgrpBroadcasterPolicy

(LDAP_AUTH_POLICY) グループへの送信を行うために必要な認証のレベルを指定します。可能なトークンは SMTP_AUTH_REQUIRED または AUTH_REQ であり、どちらも、グループへの送信を行う場合に差出人を特定するために SMTP AUTH コマンドを使用する必要があることを意味します。また、PASSWORD_REQUIREDPASSWD_REQUIRED、または PASSWD_REQ も可能なトークンであり、これらはどれも、mgrpAuthPassword 属性で指定されているリストのパスワードがメッセージの Approved: ヘッダーフィールドに存在する必要があることを意味します。OR は、このリストの OR_CLAUSES MTA オプションの設定を 1 に変更します。AND は、このリストの OR_CLAUSES MTA オプションの設定を 0 に変更します。NO_REQUIREMENTS は演算を行いません。複数の値を指定でき、各値を、コンマ区切りのトークンのリストにすることも可能です。

SMTP AUTH が呼び出された場合は、後続の認証チェックが、MAIL FROM アドレスではなく、SASL レイヤーによって提供された電子メールアドレスに照らして実行されることも意味します。 

mgrpAllowedDomain

(LDAP_AUTH_DOMAIN) このグループへのメッセージの送信を許可されたドメイン。OR_CLAUSES MTA オプションが 0 (デフォルト) に設定されているとき、一致がない場合はアクセスチェックが失敗したことを意味し、後続のテストはすべて省略されます。OR_CLAUSES MTA オプションが 1 に設定されているとき、一致がない場合は「failure pending」フラグが設定されます。アクセスチェックが成功するためには、ほかのいくつかのアクセスチェックが成功する必要があります。送信者が LDAP_AUTH_URL と一致することがすでに確認されている場合、このチェックは省略されます。複数の値を指定でき、グローバルな形式のワイルドカードも使用できます。

mgrpDisallowedDomain

(LDAP_CANT_DOMAIN) このグループへのメッセージの送信を許可されていないドメイン。一致がある場合は、アクセスチェックが失敗したことを意味し、後続のテストはすべて省略されます。送信者が LDAP_AUTH_URL と一致することがすでに確認されている場合、このチェックは省略されます。複数の値を指定でき、グローバルな形式のワイルドカードも使用できます。

mgrpAllowedBroadcaster

(LDAP_AUTH_URL) このグループへのメールの送信を許可されているメールアドレスを特定する URL。複数の値を指定できます。各 URL はアドレスのリストに拡張され、各アドレスは現在のエンベロープ from: アドレスに照らしてチェックされます。OR_CLAUSES MTA オプションが 0 (デフォルト) に設定されているとき、一致がない場合はアクセスチェックが失敗したことを意味し、後続のテストはすべて省略されます。OR_CLAUSES MTA オプションが 1 に設定されているとき、一致がない場合は「failure pending」フラグが設定されます。アクセスチェックが成功するためには、ほかのいくつかの許可されているアクセスチェックが成功する必要があります。一致がある場合は、後続のドメインアクセスチェックも省略されます。実行される展開は、すべてのアクセス制御チェックを無効にした場合の SMTP EXPN に似ています。

mgrpDisallowedBroadcaster

(LDAP_CANT_URL) このグループへのメールの送信を許可されていないメールアドレスを特定する URL。複数の値を指定できます。各 URL はアドレスのリストに拡張され、各アドレスは現在のエンベロープ from: アドレスに照らしてチェックされます。一致がある場合は、アクセスチェックが失敗したことを意味し、後続のテストはすべて省略されます。実行される展開は、すべてのアクセス制御チェックを無効にした場合の SMTP EXPN に似ています。

mgrpMsgMaxSize

(LDAP_ATTR_MAXIMUM_MESSAGE_SIZE) グループへ送信できる最大のメッセージサイズ (バイト数)。この属性は廃止されましたが、下位互換性を保つためにサポートされています。代わりに新しい mailMsgMaxBlocks 属性を使用する必要があります。

mgrpAuthPassword

(LDAP_AUTH_PASSWORD) リストに投稿するために必要なパスワードを指定します。mgrpAuthPassword 属性が存在することによって、再処理は通過します。メッセージが再処理チャネルのキューに入れられると、ヘッダーからパスワードが取得され、エンベロープに配置されます。その後、再処理中に、パスワードはエンベロープから取得され、この属性に照らしてチェックされます。また、実際に使用されているパスワードのみがヘッダーフィールドから削除されます。

OR_CLAUSES MTA オプションは、この属性に対しても、ほかのアクセスチェック属性に対する場合と同様に機能します。 

mgrpModerator

(LDAP_MODERATOR_URL) この属性によって指定される URL のリスト。一連のアドレスに拡張されます。このアドレスリストの解釈は、LDAP_REJECT_ACTION MTA オプションの設定によって異なります。LDAP_REJECT_ACTIONTOMODERATOR に設定されている場合、この属性によって、アクセスチェックのいずれかが失敗した場合のメッセージ送信先となるモデレータのアドレスが指定されます。LDAP_REJECT_ACTION が設定されていない場合、または別の値が設定されている場合は、アドレスリストはエンベロープ from アドレスと比較されます。一致が存在する場合、処理は続行されます。一致が存在しない場合、メッセージはこの属性で指定されているすべてのアドレスに再送信されます。この属性の拡張は、この属性の値をグループの URL リストにすることによって実装されます。RFC822 アドレスのリストまたはグループに関連付けられた DN のリストはすべて消去され、グループ用の配信オプションは、members に設定されます。また、この表にリストされている後続のグループ属性は無視されます。

mgrpDeliverTo

(LDAP_GROUP_URL1) URL のリストであり、展開すると、メーリングリストのメンバーのアドレスが一覧表示されます。

memberURL

(LDAP_GROUP_URL2) URL のリストであり、展開すると、メーリングリストのメンバーのアドレスが一覧表示されます。

uniqueMember

(LDAP_GROUP_DN) グループメンバーの DN のリスト。DN はサブツリー全体を示す場合があります。一意のメンバー DN は、LADP URL に埋め込むことによって拡張されます。使用する URL は、GROUP_DN_TEMPLATE MTA オプションで正確に指定します。このオプションのデフォルト値は、次のとおりです。ldap:///$A?mail?sub?(mail=*)

$A は、uniqueMember DN の挿入点を指定しています。

mgrpRFC822MailMember

(LDAP_GROUP_RFC822) このリストのメンバーのメールアドレス。

rfc822MailMember

(LDAP_GROUP_RFC822) rfc822MailMember は下位互換性のためにサポートされています。任意の指定グループで rfc822MailMember または mgrpRFC822MailMember のいずれかを使用できますが、両方同時には使用できません。

mgrpErrorsTo

(LDAP_ERRORS_TO) エンベロープ発信元 (MAIL FROM) アドレスを、属性によって指定されている任意の値に設定します。

mgrpAddHeader

(LDAP_ADD_HEADER) 属性で指定されているヘッダーを、ヘッダートリミング ADD オプションにします。

mgrpRemoveHeader

(LDAP_REMOVE_HEADER) 指定されているヘッダーを、ヘッダートリミング MAXLINES=-1 オプションにします。

mgrpMsgPrefixText

(LDAP_PREFIX_TEXT) 指定テキストがある場合は、それをメッセージテキストの先頭に追加します。

mgrpMsgSuffixText

(LDAP_SUFFIX_TEXT) 指定テキストがある場合は、それをメッセージテキストの末尾に追加します。

No Default

(LDAP_ADD_TAG) 指定されたテキストが件名に存在するかどうかをチェックします。存在しない場合は、テキストを件名のフィールドの先頭に追加します。

次の最終的な属性は、SMTP の EXPN コマンドの一部として、特殊なグループ拡張の場合にチェックされます。mgmanMemberVisibility または expandable です。LDAP_EXPANDABLE MTA オプションを使用すると、チェック対象としてさまざまな属性を選択できます。指定可能な値は次のとおりです。anyone (だれでもグループを拡張できる)、all または true (ユーザーは SASL で認証されていないと、拡張が許可されない)、および none (拡張は許可されていない) です。認識不能な値は、none と解釈されます。属性が存在しない場合、EXPANDABLE_DEFAULT MTA オプションによって拡張を許可するかどうかが制御されます。

エイリアスエントリは、ドメインエントリと似た方法でキャッシュされます。エイリアスキャッシュを制御する MTA オプションは、ALIAS_ENTRY_CACHE_SIZE (デフォルト 1000 エントリ) および ALIAS_ENTRY_CACHE_TIMEOUT (デフォルト 600 秒) です。このエイリアス用に LDAP から返される値は、キャッシュに保管されます。

エイリアスエントリのネガティブキャッシングは、ALIAS_ENTRY_CACHE_NEGATIVE MTA オプションで制御します。ゼロ以外の値の場合、エイリアス一致エラーのキャッシュが有効になります。値がゼロの場合は無効になります。デフォルトでは、エイリアスエントリのネガティブキャッシングは無効になっています。無効なアドレスが繰り返し指定されることは、実際は頻繁には起こり得ないという理論です。また、ネガティブキャッシングが実行されることによって、ディレクトリに追加された新規ユーザーをタイムリーに認識できなくなる場合があります。ただし、バニティードメインが多用されている状況では、サイトはエイリアスのネガティブキャッシングを有効にすることを検討する必要があります。ALIAS_URL0 で指定されている URL によって実行される検索は、成功する可能性が低くなります。