RFC5229 日本語訳
5229 Sieve Email Filtering: Variables Extension. K. Homme. January 2008. (Format: TXT=20023 bytes) (Updates RFC5228) (Updated by RFC5173) (Status: PROPOSED STANDARD)
プログラムでの自動翻訳です。
RFC一覧
英語原文
Network Working Group K. Homme Request for Comments: 5229 University of Oslo Updates: 5228 January 2008 Category: Standards Track
コメントを求めるワーキンググループK.オム要求をネットワークでつないでください: 5229のオスロ大学アップデート: 5228 2008年1月のカテゴリ: 標準化過程
Sieve Email Filtering: Variables Extension
ふるいのメールフィルタリング: 変数拡大
Status of This Memo
このメモの状態
This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.
このドキュメントは、インターネットコミュニティにインターネット標準化過程プロトコルを指定して、改良のために議論と提案を要求します。 このプロトコルの標準化状態と状態への「インターネット公式プロトコル標準」(STD1)の現行版を参照してください。 このメモの分配は無制限です。
Abstract
要約
In advanced mail filtering rule sets, it is useful to keep state or configuration details across rules. This document updates the Sieve filtering language (RFC 5228) with an extension to support variables. The extension changes the interpretation of strings, adds an action to store data in variables, and supplies a new test so that the value of a string can be examined.
規則セットをフィルターにかける高度なメールでは、規則の向こう側に状態か構成の詳細を維持するのは役に立ちます。 このドキュメントは変数をサポートするために、拡大で言語(RFC5228)をフィルターにかけるSieveをアップデートします。 拡大は、ストリングの解釈を変えて、変数におけるデータを保存するために動作を加えて、ストリングの値を調べることができるように新しいテストを供給します。
Homme Standards Track [Page 1] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[1ページ]: 変数拡大2008年1月
1. Introduction
1. 序論
This is an extension to the Sieve language defined by [SIEVE]. It adds support for storing and referencing named data. The mechanisms detailed in this document will only apply to Sieve scripts that include a require clause for the "variables" extension. The require clauses themselves are not affected by this extension.
これは[SIEVE]によって定義されたSieve言語への拡大です。 それは命名されたデータに保存して、参照をつけるサポートを加えます。 意志がaを含んでいるSieveスクリプトに適用するだけであるこのドキュメントで詳細なメカニズムは「変数」拡大のために節を必要とします。 節自体を必要としてください。この拡大で、影響を受けません。
Conventions for notations are as in [SIEVE] section 1.1, including use of [KEYWORDS] and [ABNF]. The grammar builds on the grammar of [SIEVE]. In this document, "character" means a character from the ISO 10646 coded character set [ISO10646], which may consist of multiple octets coded in [UTF-8], and "variable" is a named reference to data stored or read back using the mechanisms of this extension.
記法のためのコンベンションはセクション1.1、[SIEVE]使用を含んでいるように[KEYWORDS]と[ABNF]のものです。 [SIEVE]の文法の文法体格。 本書では、「キャラクタ」はISO10646コード化文字集合[ISO10646]からキャラクタを意味します、そして、「変数」はこの拡大のメカニズムを使用することで保存されたか、または読み返されたデータの命名された参照です。(コード化文字集合は[UTF-8]でコード化された複数の八重奏から成るかもしれません)。
2. Capability Identifier
2. 能力識別子
The capability string associated with the extension defined in this document is "variables".
定義される拡大に関連している能力ストリングは本書では「変数」です。
3. Interpretation of Strings
3. ストリングの解釈
This extension changes the semantics of quoted-string, multi-line- literal and multi-line-dotstuff found in [SIEVE] to enable the inclusion of the value of variables.
この拡大は引用文字列の意味論を変えます、とマルチ系列リテラルとマルチ系列dotstuffは変数の価値の包含を可能にするために[SIEVE]でわかりました。
When a string is evaluated, substrings matching variable-ref SHALL be replaced by the value of variable-name. Only one pass through the string SHALL be done. Variable names are case insensitive, so "foo" and "FOO" refer to the same variable. Unknown variables are replaced by the empty string.
ストリングであるときに、評価のサブストリングマッチングは可変審判SHALLです。変数名の値に取り替えます。 人はストリングSHALLを通り抜けるだけです。します。 変数名が大文字と小文字を区別しないので、"foo"と"FOO"は同じ変数を示します。 未知の変数を空のストリングに取り替えます。
variable-ref = "${" [namespace] variable-name "}" namespace = identifier "." *sub-namespace sub-namespace = variable-name "." variable-name = num-variable / identifier num-variable = 1*DIGIT
「可変審判は」 $「[名前空間]変数名」と等しい」という名前空間=識別子、」、」 *「サブ名前空間サブ名前空間=変数名」 」 変数名=ヌム-変数/識別子ヌム可変な=1*ケタ
Examples: "&%${}!" => unchanged, as the empty string is an illegal identifier "${doh!}" => unchanged, as "!" is illegal in identifiers
例: "&%${}!" =ド!」 “!"として変わりのない「空のストリングとして変わりのない>は不法な識別子です」という$=>は識別子で不法です。
The variable "company" holds the value "ACME". No other variables are set.
可変「会社」は値の「頂上」を保持します。 他の変数は全く設定されません。
"${full}" => the empty string "${company}" => "ACME"
「「」 空が結ぶ$完全=>」$会社」は>「頂上」と等しいです。
Homme Standards Track [Page 2] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[2ページ]: 変数拡大2008年1月
"${BAD${Company}" => "${BADACME" "${President, ${Company} Inc.}" => "${President, ACME Inc.}"
「「$、」 悪い$会社=>、」 $、BADACME、」 」 $、$会社の社長、株式会社、」 =>、」 $、頂上株式会社の社長、」
The expanded string MUST use the variable values that are current when control reaches the statement the string is part of.
拡張ストリングはコントロールがストリングが部分であるという声明に達するとそれがよく見られる可変値を使用しなければなりません。
Strings where no variable substitutions take place are referred to as constant strings. Future extensions may specify that passing non- constant strings as arguments to its actions or tests is an error.
どんな可変代替も行われないストリングは一定のストリングと呼ばれます。 今後の拡大は、議論として非一定のストリングをその動作かテストに渡すのが、誤りであると指定するかもしれません。
Namespaces are meant for future extensions that make internal state available through variables. These variables SHOULD be put in a namespace whose first component is the same as its capability string. Such extensions SHOULD state which, if any, of the variables in its namespace are modifiable with the "set" action.
名前空間は内部の状態を変数を通して利用可能にする今後の拡大のために意味されます。 能力と最初のコンポーネントがある名前空間に入れられた同じくらいが結ぶこれらの変数SHOULD。 中の変数では、名前空間が「セット」動作でいくらか修正できるなら、そのような拡大SHOULDはどれを述べるか。
References to namespaces without a prior require statement for the relevant extension MUST cause an error.
関連拡大が誤りを引き起こさなければならないので、先であることのaのない名前空間の参照は声明を必要とします。
Tests or actions in future extensions may need to access the unexpanded version of the string argument and, e.g., do the expansion after setting variables in its namespace. The design of the implementation should allow this.
今後の拡大におけるテストか動作が、ストリング議論の「非-広げ」られたバージョンにアクセスする必要があるかもしれません、そして、例えば、名前空間に変数をはめ込んだ後に、拡張してください。 実装のデザインはこれを許容するべきです。
3.1. Quoting and Encoded Characters
3.1. 引用していてコード化されたキャラクター
The semantics of quoting using backslash are not changed: backslash quoting is resolved before doing variable substitution. Similarly, encoded character processing (see Section 2.4.2.4 of [SIEVE]) is performed before doing variable substitution, but after quoting.
バックスラッシュを使用する引用の意味論は変えられません: 可変代替をする前に、バックスラッシュ引用は決議されています。 同様である、文字処理をコード化する、(.4[SIEVE)が実行されるセクション2.4.2が可変代替をしているのを見ますが引用の後に。
Examples: "${fo\o}" => ${foo} => the expansion of variable foo. "${fo\\o}" => ${fo\o} => illegal identifier => left verbatim. "\${foo}" => ${foo} => the expansion of variable foo. "\\${foo}" => \${foo} => a backslash character followed by the expansion of variable foo.
例: >「$fo\o」=$fooは変数の拡張がfooする>と等しいです。 「$fo\\o」は>の不法なfo\o=識別子=>が残した>$と逐語的に等しいです。 >「\$foo」=$fooは変数の拡張がfooする>と等しいです。 >「\\$foo」=\$fooはバックスラッシュキャラクタが可変fooの拡張で後をつけた>と等しいです。
If it is required to include a character sequence such as "${beep}" verbatim in a text literal, the user can define a variable to circumvent expansion to the empty string.
テキストの逐語的に「それが」 $などのキャラクタシーケンスを含むのに必要であるなら、鳴ってください」というリテラル、ユーザは空のストリングへの拡張を回避するために変数を定義できます。
Example: set "dollar" "$"; set "text" "regarding ${dollar}{beep}";
例: 「ドル」「$」を設定してください。 「ドルが鳴らす$」に関するセット「テキスト」。
Homme Standards Track [Page 3] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[3ページ]: 変数拡大2008年1月
Example: require ["encoded-character", "variables"]; set "name" "Ethelbert" if header :contains "Subject" "dear${hex:20 24 7b 4e}ame}" { # the test string is "dear Ethelbert" }
例: [「コード化されたキャラクタ」、「変数」]を必要としてください。 ヘッダー:contains「対象」であるなら「名前」"Ethelbert"を設定してください、「十六進法: 20 24 7b 4eがameする親愛な$、」#テストストリングは「親愛なるEthelbert」です。
3.2. Match Variables
3.2. 変数を合わせてください。
A "match variable" has a name consisting only of decimal digits and has no namespace component.
「マッチ変数」は、10進数字だけから成る名前を持っていて、名前空間コンポーネントは全く持っていません。
The decimal value of the match variable name will index the list of matching strings from the most recently evaluated successful match of type ":matches". The list is empty if no match has been successful.
「可変名前が合いながらリストに索引をつけるマッチのデシマル値はタイプの最も最近評価のうまくいっているマッチから」 : マッチを結びます。」 どんなマッチもうまくいっていないなら、リストは空です。
Note: Extra leading zeroes are allowed and ignored.
以下に注意してください。 付加的な主なゼロは、許容されていて、無視されます。
The list will contain one string for each wildcard ("?" and "*") in the match pattern. Each string holds the substring from the source value that the corresponding wildcard expands to, possibly the empty string. The wildcards match as little as possible (non-greedy matching).
リストはマッチパターンに各ワイルドカード(“?"と「*」)あたり1個のストリングを入れてあるでしょう。 それぞれが対応するワイルドカードが広がるソースからのサブストリングが評価する船倉、ことによると空のストリングを結びます。 ワイルドカードはできるだけ少ししか(非貪欲なマッチング)合わせません。
The first string in the list has index 1. If the index is out of range, the empty string will be substituted. Index 0 contains the matched part of the source value.
リストにおける最初のストリングには、インデックス1があります。 インデックスが範囲から脱していると、空のストリングは置換されるでしょう。 インデックス0はソース価値の取り組んでいる一部分を含んでいます。
The interpreter MUST short-circuit tests, i.e., not perform more tests than necessary to find the result. Evaluation order MUST be left to right. If a test has two or more list arguments, the implementation is free to choose which to iterate over first.
すなわち、インタプリタがテストを短絡させなければならない、結果を見つけるために必要とするより多くのテストを実行してください。 評価命令を右に残さなければなりません。 テストで2つ以上のリスト議論があるなら、実装は、最初に上でどれを繰り返すかを自由に選ぶことができます。
An extension describing a new match type (e.g., [REGEX]) MAY specify that match variables are set as a side effect when the match type is used in a script that has enabled the "variables" extension.
新しいマッチタイプ(例えば、[REGEX])について説明する拡大は、マッチタイプが「変数」拡大を可能にしたスクリプトで使用されるとき、マッチ変数が副作用として設定されると指定するかもしれません。
Example:
例:
require ["fileinto", "variables"];
["fileinto"、「変数」]を必要としてください。
if header :matches "List-ID" "*<*@*" { fileinto "INBOX.lists.${2}"; stop; }
ヘッダー:matches「リストID」" *<*@* "です。fileintoに、「INBOX.lists2ドル」; 止まってください。
Homme Standards Track [Page 4] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[4ページ]: 変数拡大2008年1月
# Imagine the header # Subject: [acme-users] [fwd] version 1.0 is out if header :matches "Subject" "[*] *" { # ${1} will hold "acme-users", # ${2} will hold "[fwd] version 1.0 is out" fileinfo "INBOX.lists.${1}"; stop; }
# ヘッダー#Subject:を想像してください。 [頂上ユーザ] [fwd]バージョン1.0はヘッダー:matches「対象」「[*]*」であるなら出ています。#1ドルは「頂上ユーザ」を保って、#2ドルは「[fwd]バージョン1.0は出ていること」をfileinfoに「INBOX.lists1ドル」保つでしょう; 止まってください;。
# Imagine the header # To: coyote@ACME.Example.COM if address :matches ["To", "Cc"] ["coyote@**.com", "wile@**.com"] { # ${0} is the matching address # ${1} is always the empty string # ${2} is part of the domain name ("ACME.Example") fileinto "INBOX.business.${2}"; stop; } else { # Control wouldn't reach this block if any match was # successful, so no match variables are set at this # point. }
# ヘッダー#To:を想像してください。 coyote@ACME.Example.COM 、#アドレス:matches[“To"、「cc」][" coyote@**.com "、「たくらみ@**.com」]であるなら0ドルであることが、いつも合っている1アドレス#ドルが「INBOX.business2ドル」ドメイン名の一部が("ACME.Example")であるという空の2ストリング#ドルのfileinto; 止まる;であるということである、ほか#どれかマッチが#うまくいくならコントロールがこのブロックに達しないので、マッチ変数は全くこの#ポイントに設定されません。
if anyof (true, address :domain :matches "To" "*.com") { # The second test is never evaluated, so there are # still no match variables set. stop; }
「anyofである、(本当に、:domain:matches“To"が」 *.comであると扱ってください、」、)#2番目のテストが決して評価されないので、マッチ変数セットが全く#まだありません。止まってください。
4. Action set
4. 動作はセットしました。
Usage: set [MODIFIER] <name: string> <value: string>
用法: [MODIFIER]<名を設定してください: ><価値を結んでください: ストリング>。
The "set" action stores the specified value in the variable identified by name. The name MUST be a constant string and conform to the syntax of variable-name. Match variables cannot be set. A namespace cannot be used unless an extension explicitly allows its use in "set". An invalid name MUST be detected as a syntax error.
「セット」動作は名前によって特定された変数における規定値を保存します。 名前は、一定のストリングであり、変数名の構文に従わなければなりません。 マッチ変数を設定できません。 拡大が明らかに「セット」における使用を許さない場合、名前空間を使用できません。 構文エラーとして無効の名前を検出しなければなりません。
Modifiers are applied on a value before it is stored in the variable. See the next section for details.
それが変数で保存される前に修飾語は値で適用されます。 詳細に関して次のセクションを見てください。
Variables are only visible to the currently running script. Note: Future extensions may provide different scoping rules for variables.
変数は単に現在稼働しているスクリプトに目に見えます。 以下に注意してください。 今後の拡大は変数のために異なった見るのに規則を提供するかもしれません。
Variable names are case insensitive.
変数名は大文字と小文字を区別しないです。
Homme Standards Track [Page 5] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[5ページ]: 変数拡大2008年1月
Example: set "honorific" "Mr"; set "first_name" "Wile"; set "last_name" "Coyote"; set "vacation" text: Dear ${HONORIFIC} ${last_name}, I'm out, please leave a message after the meep. . ;
例: セット「敬語」「さん」。 「最初の_名」「たくらみ」を設定してください。 「最後の_名」「コヨーテ」を設定してください。 「休暇」テキストを設定してください: 親愛な$HONORIFIC、$最終_名、Iを出かけて、meepの後へメッセージをおいてください。 . ;
"set" does not affect the implicit keep. It is compatible with all actions defined in [SIEVE].
「セット」は暗黙の生活費に影響しません。 それは[SIEVE]で定義されるすべての動作と互換性があります。
4.1. Modifiers
4.1. 修飾語
Usage: ":lower" / ":upper" / ":lowerfirst" / ":upperfirst" / ":quotewildcard" / ":length"
用法: 」 : 「」 : 「: 」 : 」 /」 : 覚醒剤」 /lowerfirstを下ろしてください」という/upperfirst」/quotewildcard、」 /、」 : 長さ、」
Modifier names are case insensitive. Unknown modifiers MUST yield a syntax error. More than one modifier can be specified, in which case they are applied according to this precedence list, largest value first:
修飾語名は大文字と小文字を区別しないです。 未知の修飾語は構文エラーをもたらさなければなりません。 1つ以上の修飾語を指定できます、その場合、この先行リスト、最も大きい値に従って、それらは最初に、適用されます:
+--------------------------------+ | Precedence Modifier | +--------------------------------+ | 40 :lower | | :upper | +--------------------------------+ | 30 :lowerfirst | | :upperfirst | +--------------------------------+ | 20 :quotewildcard | +--------------------------------+ | 10 :length | +--------------------------------+
+--------------------------------+ | 先行修飾語| +--------------------------------+ | 40 :lower| | :上側| +--------------------------------+ | 30 :lowerfirst| | :upperfirst| +--------------------------------+ | 20 :quotewildcard| +--------------------------------+ | 10 :length| +--------------------------------+
It is an error to use two or more modifiers of the same precedence in a single "set" action.
それはただ一つの「セット」動作に同じ先行の2つ以上の修飾語を使用する誤りです。
Examples: # The value assigned to the variable is printed after the arrow set "a" "juMBlEd lETteRS"; => "juMBlEd lETteRS" set :length "b" "${a}"; => "15" set :lower "b" "${a}"; => "jumbled letters" set :upperfirst "b" "${a}"; => "JuMBlEd lETteRS" set :upperfirst :lower "b" "${a}"; => "Jumbled letters" set :quotewildcard "b" "Rock*"; => "Rock\*"
例: # 矢のセット“a"が「手紙を乱雑にした」後に変数に割り当てられた値は印刷されます。 =「>「乱雑にされた手紙」セット:length「b」」$、」、。 =「>「15インチのセット:lower「b」」$、」、。 =「>「乱雑にされた手紙」セット:upperfirst「b」」$、」、。 =「>「乱雑にされた手紙」セット:upperfirst:lower「b」」$、」、。 =>が「手紙を乱雑にした」というセット:quotewildcard「b」「岩石*」。 =>「岩石の\*」
Homme Standards Track [Page 6] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[6ページ]: 変数拡大2008年1月
4.1.1. Modifier ":length"
4.1.1. 「修飾語」: 長さ、」
The value is the decimal number of characters in the expansion, converted to a string.
値はストリングに変換された拡張で、キャラクタの10進数です。
4.1.2. Modifier ":quotewildcard"
4.1.2. 「」 : 修飾語quotewildcard」
This modifier adds the necessary quoting to ensure that the expanded text will only match a literal occurrence if used as a parameter to :matches. Every character with special meaning ("*", "?", and "\") is prefixed with "\" in the expansion.
この修飾語は、パラメタとして:matchesに使用される場合にだけ拡張テキストが文字通りの発生に合うのを保証するために必要な引用を加えます。 特別な意味(「*」、“?"、および「\」)があるすべてのキャラクタが「\」で拡張で前に置かれています。
4.1.3. Case Modifiers
4.1.3. ケース修飾語
These modifiers change the letters of the text from upper to lower case or vice versa. Characters other than "A"-"Z" and "a"-"z" from US-ASCII are left unchanged.
これらの修飾語はケースを下ろすためには上側からテキストの手紙を変えるか、逆もまた同様です。 米国-ASCIIからの--「Z」と“a"--「z」を除いたキャラクターは変わりがないままにされます。
4.1.3.1. Modifier ":upper"
4.1.3.1. 「修飾語」: より上に」
All lower case letters are converted to their upper case counterparts.
すべての小文字が彼らの大文字対応者に変換されます。
4.1.3.2. Modifier ":lower"
4.1.3.2. 「修飾語」: より低い」
All upper case letters are converted to their lower case counterparts.
すべての大文字アルファベットが彼らの小文字対応者に変換されます。
4.1.3.3. Modifier ":upperfirst"
4.1.3.3. 「」 : 修飾語upperfirst」
The first character of the string is converted to upper case if it is a letter and set in lower case. The rest of the string is left unchanged.
ストリングの最初のキャラクタはそれが小文字で文字とセットであるなら大文字に変換されます。 ストリングの残りは変わりがないままにされます。
4.1.3.4. Modifier ":lowerfirst"
4.1.3.4. 「」 : 修飾語lowerfirst」
The first character of the string is converted to lower case if it is a letter and set in upper case. The rest of the string is left unchanged.
ストリングの最初のキャラクタは、それが大文字で文字とセットであるならケースを下ろすために変換されます。 ストリングの残りは変わりがないままにされます。
5. Test string
5. テストストリング
Usage: string [MATCH-TYPE] [COMPARATOR] <source: string-list> <key-list: string-list>
用法: [MATCH-TYPE][COMPARATOR]<ソースを結んでください: >の<の主要なリストをストリングでリストアップしてください: ストリングリスト>。
The "string" test evaluates to true if any of the source strings matches any key. The type of match defaults to ":is".
テストがもしあれば本当に評価するソースストリングの「ストリング」はどんなキーにも合っています。 「マッチのタイプはデフォルトとする」:、」
Homme Standards Track [Page 7] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[7ページ]: 変数拡大2008年1月
In the "string" test, both source and key-list are taken from the script, not the message, and whitespace stripping MUST NOT be done unless the script explicitly requests this through some future mechanism.
「ストリング」テストで、メッセージではなく、スクリプトからソースと主要なリストの両方を抜粋します、そして、スクリプトが何らかの将来のメカニズムを通して明らかにこれを要求しない場合、空白ストリップをしてはいけません。
Example: set "state" "${state} pending"; if string :matches " ${state} " "* pending *" { # the above test always succeeds }
例: 「未定の状態で」 $が述べる「状態」を設定します」。 「ストリング:matchesであるなら、「$は*まで」 」 *を述べます」。#上のテストはいつも成功します。
The "relational" extension [RELATIONAL] adds a match type called ":count". The count of a single string is 0 if it is the empty string, or 1 otherwise. The count of a string list is the sum of the counts of the member strings.
「「関係している」拡大[RELATIONAL]は」 : カウントと呼ばれるマッチタイプを加えます。」 そうでなければ、それが空のストリング、または1であるなら、一連のカウントは0です。 ストリングリストのカウントはメンバーストリングのカウントの合計です。
6. Implementation Limits
6. 実装限界
An implementation of this document MUST support at least 128 distinct variables. The supported length of variable names MUST be at least 32 characters. Each variable MUST be able to hold at least 4000 characters. Attempts to set the variable to a value larger than what the implementation supports SHOULD be reported as an error at compile-time if possible. If the attempt is discovered during run- time, the value SHOULD be truncated, and it MUST NOT be treated as an error.
このドキュメントの実装は少なくとも128の異なった変数をサポートしなければなりません。 サポートしている長さの変数名は少なくとも32のキャラクタであるに違いありません。 それぞれの変数は少なくとも4000のキャラクタを保持できなければなりません。 できれば、実装がSHOULDをサポートすることより大きい値にコンパイル時における誤りとして報告されていた状態で変数を設定する試み。 試みは走行時間発見されます、先端を切られて、値のSHOULD。それは誤りとして扱われてはいけません。
Match variables ${1} through ${9} MUST be supported. References to higher indices than those the implementation supports MUST be treated as a syntax error, which SHOULD be discovered at compile-time.
9ドルを通した1ドルをサポートしなければならない変数を合わせてください。 実装がサポートするものより高いインデックスリストの参照を構文エラーとして扱わなければならなくて、どのSHOULDがコンパイル時に発見されますか?
7. Security Considerations
7. セキュリティ問題
When match variables are used, and the author of the script isn't careful, strings can contain arbitrary values controlled by the sender of the mail.
マッチ変数が使用されていて、スクリプトの作者が慎重でないときに、ストリングはメールの送付者によって制御された任意の値を含むことができます。
Since values stored by "set" that exceed implementation limits are silently truncated, it's not appropriate to store large structures with security implications in variables.
実装限界を超えている「セット」によって保存された値が静かに先端を切られるので、変数におけるセキュリティ含意で大きい構造を保存するのは適切ではありません。
The introduction of variables makes advanced decision making easier to write, but since no looping construct is provided, all Sieve scripts will terminate in an orderly manner.
変数の導入は、高度な意志決定を書くのをより簡単にしますが、ループ構造物を全く提供しないので、すべてのSieveスクリプトが整然と終わるでしょう。
Sieve filtering should not be relied on as a security measure against hostile mail messages. Sieve is designed to do simple, mostly static tests, and is not suitable for use as a spam or virus checker, where
セキュリティが敵対的なメール・メッセージに対して測定するとき、ふるいのフィルタリングを当てにするべきではありません。 ふるいは、簡単で、ほとんど静的なテストをするように設計されていて、スパムかウイルスチェックソフトとして使用に適していません、どこ
Homme Standards Track [Page 8] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[8ページ]: 変数拡大2008年1月
the perpetrator has a motivation to vary the format of the mail in order to avoid filtering rules. See also [SPAMTEST].
加害者には、規則をフィルターにかけるのを避けるためにメールの形式を変える動機があります。 また、[SPAMTEST]を見てください。
8. IANA Considerations
8. IANA問題
The following template specifies the IANA registration of the variables Sieve extension specified in this document:
以下のテンプレートは本書では指定された変数Sieve拡張子のIANA登録を指定します:
To: iana@iana.org Subject: Registration of new Sieve extension
To: iana@iana.org Subject: 新しいSieve拡張子の登録
Capability name: variables Description: Adds support for variables to the Sieve filtering language. RFC number: RFC 5229 Contact address: The Sieve discussion list <ietf-mta-filters@imc.org>
能力名: 変数記述: 言語をフィルターにかけるSieveに変数のサポートを加えます。 RFC番号: RFC5229Contactアドレス: Sieve議論 list <ietf-mta-filters@imc.org 、gt。
9. Acknowledgments
9. 承認
Thanks to Cyrus Daboo, Jutta Degener, Ned Freed, Lawrence Greenfield, Jeffrey Hutzelman, Mark E. Mallett, Alexey Melnikov, Peder Stray, and Nigel Swinson for valuable feedback.
有益なフィードバックをサイラスDaboo、ユッタDegener、ネッド・フリード、ローレンス・グリーンフィールド、ジェフリーHutzelman、マーク・E.マレット、Alexeyメリニコフ、Peder Stray、およびナイジェル・スウィンソンをありがとうございます。
10. References
10. 参照
10.1. Normative References
10.1. 引用規格
[ABNF] Crocker, D., Ed., and Overell, P., "Augmented BNF for Syntax Specifications: ABNF", RFC 4234, October 2005.
[ABNF]クロッカー、D.、エド、Overell、P.、「構文仕様のための増大しているBNF:」 "ABNF"、2005年10月のRFC4234。
[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[KEYWORDS]ブラドナー、S.、「Indicate Requirement LevelsへのRFCsにおける使用のためのキーワード」、BCP14、RFC2119、1997年3月。
[RELATIONAL] Segmuller, W. and B. Leiba, "Sieve Email Filtering: Relational Extension", RFC 5231, January 2008.
[関係] SegmullerとW.とB.Leiba、「以下をフィルターにかけるふるいのメール」 「関係拡大」、RFC5231、2008年1月。
[SIEVE] Guenther, P., Ed., and T. Showalter, Ed., "Sieve: An Email Filtering Language", RFC 5228, January 2008.
[ふるい] グンサー、P.、エド、T.ショウォーター、エド、「ふるい:」 「言語をフィルターにかけるメール」、RFC5228、2008年1月。
[UTF-8] Yergeau, F., "UTF-8, a transformation format of Unicode and ISO 10646", RFC 3629, November 2003.
[UTF-8]Yergeau、2003年11月のF.、「UTF-8、ユニコードとISO10646の変換形式」RFC3629。
10.2. Informative References
10.2. 有益な参照
[ISO10646] ISO/IEC, "Information Technology - Universal Multiple- Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane", May 1993, with amendments.
[ISO10646]ISO/IEC、「情報技術--普遍的な複数の八重奏コード化文字集合(UCS)--第1部:、」 1993年5月の「アーキテクチャと基本多言語水準」、修正で。
Homme Standards Track [Page 9] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[9ページ]: 変数拡大2008年1月
[REGEX] Murchison, K., "Sieve Email Filtering -- Regular Expression Extension", Work in Progress, February 2006.
[REGEX]マーチソン、K.、「ふるいはフィルタリング--正規表現に拡大をメールすること」が進歩、2006年2月に働いています。
[SPAMTEST] Daboo, C., "Sieve Email Filtering: Spamtest and Virustest Extensions", RFC 5235, January 2008.
[SPAMTEST] Daboo、C.、「以下をフィルターにかけるふるいのメール」 「最もSpamtest、そして、Virustest拡張子、」、RFC5235、1月2008日
Author's Address
作者のアドレス
Kjetil T. Homme University of Oslo PO Box 1080 0316 Oslo, Norway
Kjetil T.オムオスロ大学PO Box1080 0316オスロ(ノルウェー)
Phone: +47 9366 0091 EMail: kjetilho@ifi.uio.no
以下に電話をしてください。 +47 9366 0091はメールされます: kjetilho@ifi.uio.no
Homme Standards Track [Page 10] RFC 5229 Sieve: Variables Extension January 2008
オム規格はRFC5229ふるいを追跡します[10ページ]: 変数拡大2008年1月
Full Copyright Statement
完全な著作権宣言文
Copyright (C) The IETF Trust (2008).
IETFが信じる著作権(C)(2008)。
This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
このドキュメントはBCP78に含まれた権利、ライセンス、および制限を受けることがあります、そして、そこに詳しく説明されるのを除いて、作者は彼らのすべての権利を保有します。
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
このドキュメントとここに含まれた情報はその人が代理をするか、または(もしあれば)後援される組織、インターネットの振興発展を目的とする組織、「そのままで」という基礎と貢献者の上で提供していて、IETFはそして、インターネット・エンジニアリング・タスク・フォースがすべての保証を放棄すると信じます、急行である、または暗示していて、他を含んでいて、情報の使用がここに侵害しないどんな保証も少しもまっすぐになるということであるかいずれが市場性か特定目的への適合性の黙示的な保証です。
Intellectual Property
知的所有権
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
IETFはどんなIntellectual Property Rightsの正当性か範囲、実装に関係すると主張されるかもしれない他の権利、本書では説明された技術の使用またはそのような権利の下におけるどんなライセンスも利用可能であるかもしれない、または利用可能でないかもしれない範囲に関しても立場を全く取りません。 または、それはそれを表しません。どんなそのような権利も特定するどんな独立している取り組みも作りました。 BCP78とBCP79でRFCドキュメントの権利に関する手順に関する情報を見つけることができます。
Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
IPR公開のコピーが利用可能に作られるべきライセンスの保証、または一般的な免許を取得するのが作られた試みの結果をIETF事務局といずれにもしたか、または http://www.ietf.org/ipr のIETFのオンラインIPR倉庫からこの仕様のimplementersかユーザによるそのような所有権の使用のために許可を得ることができます。
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.
IETFはこの規格を実装するのに必要であるかもしれない技術をカバーするかもしれないどんな著作権もその注目していただくどんな利害関係者、特許、特許出願、または他の所有権も招待します。 ietf-ipr@ietf.org のIETFに情報を扱ってください。
Homme Standards Track [Page 11]
オム標準化過程[11ページ]
一覧
スポンサーリンク