Internet DRAFT - draft-ellermann-spf-options
draft-ellermann-spf-options
Network Working Group F. Ellermann
Internet-Draft xyzzy
Intended status: Experimental November 15, 2007
Expires: May 18, 2008
Sender Policy Framework: SPF Options
draft-ellermann-spf-options-02
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on May 18, 2008.
Copyright Notice
Copyright (C) The IETF Trust (2007).
Abstract
In discussions about the Sender Policy Framework (SPF) users often
wanted to add optional properties to their sender policies. The
modifier "match_subdomains=yes" made it into early SPF drafts. This
memo proposes a general syntax for a modifier "op=" for this purpose.
Ellermann Expires May 18, 2008 [Page 1]
Internet-Draft SPF options November 2007
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. op: options . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. The optional "pra" property . . . . . . . . . . . . . . . . 4
3.2. The optional "auth" property . . . . . . . . . . . . . . . 5
4. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5
5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7.1. Normative References . . . . . . . . . . . . . . . . . . . 6
7.2. Informative References . . . . . . . . . . . . . . . . . . 6
Appendix A. Document History . . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7
Intellectual Property and Copyright Statements . . . . . . . . . . 8
Ellermann Expires May 18, 2008 [Page 2]
Internet-Draft SPF options November 2007
1. Introduction
The key words "MAY, "MUST", "MUST NOT", and "NOT RECOMMENDED" in this
memo are to be interpreted as described in [RFC2119]. One line of
syntax uses the ABNF defined in [I-D.crocker-rfc4234bis].
Readers should be familiar with [RFC2821], [RFC4409], and the SPF
terminology in [RFC4408]. See [RFC4949] for an Internet Security
Glossary.
Comments and questions should be sent to the SPF-Discuss mailing list
<http://dir.gmane.org/gmane.mail.spam.spf.discuss>.
2. Motivation
The SPF community often discussed optional "yes", "no", or similar
modifiers. SPF allows the introduction of new modifiers without a
new SPF version under two conditions:
1. All SPF implementations can safely ignore the new modifier.
2. Implementations supporting the new modifier interpret all
policies without this modifier like all other conforming
implementations.
The "op" modifier is a shorthand for optional properties and "opt-in"
procedures. The length of SPF policies is limited. Instead of
separate modifiers as in...
IN SPF "v=spf1 o1=yes p2=no q3=1"
...the "op" modifier allows the shorter notation...
IN SPF "v=spf1 op=o1.nop2.q3"
...for hypothetical properties "o1", "nop2", and "q3". Please note
that a policy without one of these properties does not implicitly
have any "opposite" property. Existing sender policies and
implementations may not know these properties. They are also free to
ignore known properties intentionally.
It is possible to define a hypothetical property "p2" as the opposite
of "nop2", and to specify it explicitly in a sender policy. The
definitions could state that "p2" and "nop2" must not be used
together.
Ellermann Expires May 18, 2008 [Page 3]
Internet-Draft SPF options November 2007
3. op: options
The "op" modifier introduces a dot-separated list of optional
properties. New properties can be defined in additional documents in
the same way as new SPF modifiers.
At most one "op" modifier is allowed in an SPF sender policy. It is
a good idea to specify an "op" modifier before the first directive.
An ABNF specification for options:
options = "op=" name *( "." name )
Property names can be given in any order, it is no syntax error to
specify the same property more than once. The term <name> for the
names of individual properties is defined in [RFC4408].
An initial set of properties is defined below: "pra", and "auth".
In theory a modifier could be defined to have an effect on the
evaluation of "included" policies. This is not the case for the
predefined (in [RFC4408]) modifiers "exp" and "redirect", and "op"
follows this role model.
In theory a modifier could be defined to have an effect on the
evaluation of "continuation records" when following a "redirect"
modifier. This is not the case for the predefined "exp" modifier,
and "op" follows this role model.
3.1. The optional "pra" property
The "pra" property indicates that the sender policy MAY be also
evaluated for the "PRA" identity also known as "Purported Responsible
Address" and defined in [RFC4407].
Please note that many cases exist, where the "PRA" identity differs
from the "MAIL FROM" identity, and that classic SPF sender policies
are generally not designed to work with the "PRA" identity.
Enforced submission rights for Message Submission Agents (MSAs) in
[RFC4409] do not guarantee a match of any address in the 2822-From
header field with the "MAIL FROM" identity, and they also do not
guarantee the presence of a matching 2822-Sender header field. For
more details about these problems see [RFC2822] and compare sections
6.1 and 8.1 in [RFC4409].
Ellermann Expires May 18, 2008 [Page 4]
Internet-Draft SPF options November 2007
3.2. The optional "auth" property
The "auth" property indicates that the domain owner not only
authorizes the hosts that "Pass" the sender policy to send mail using
the domain in the "MAIL FROM" and "HELO" identities, but that the
domain owner also asserts those uses of the domain to be authentic,
i.e. not forged.
In particular, this means that any authorized hosts that are shared
with other domains are guaranteed to prevent cross-user forgery (see
[RFC4408], section 10.4). This is often the case for MSAs as defined
in [RFC4409], but many MSAs and smart hosts still allow to use any
"MAIL FROM" identity after a successful authentication.
For details about enforced submission rights see [RFC4409]. Example:
IN SPF "v=spf1 op=auth +a ?include:example.com -all"
Please note that the "auth" property has no technical effect. It is
arguably better to use a "Neutral" mechanism for any shared smart
host, and to use "Pass" only if the MSA enforces submission rights.
4. Acknowledgements
Many persons on the SPF-Discuss mailing list contributed to the ideas
published in this memo. Special thanks for this and completely
different reasons to April Lorenzen, Bruce Lilly, Chris Hayes, Hector
Santos, Julian Mehnle, Keith Moore, Meng Weng Wong, Scott Kitterman,
Stuart D. Gathman, Wayne Schlitt, and William Leibzon.
Bill Fenner's _xml2rfc validator_ and _ABNF checker_ were a great
help in the creation of (not only) this memo. The same goes for
various great _IETF tools_ written by Henrik Levkowetz.
5. Security Considerations
Please consult the security considerations in [RFC4409] and
[RFC4408]. A sender policy is only a claim by the domain owner, this
can be a spammer or an attacker.
The SPF specification [RFC4408] explains why checking other
identities except from the "HELO" and "MAIL FROM" identities against
SPF version 1 records is NOT RECOMMENDED without explicit approval of
the domain owner.
While the "pra" property offers a way for this explicit approval in
Ellermann Expires May 18, 2008 [Page 5]
Internet-Draft SPF options November 2007
the case of a "PRA" identity, it does not solve any of the underlying
technical problems with this approach. Receivers should treat all
PRA-results with utmost care.
6. IANA Considerations
The creation of a IANA registry for additional SPF modifiers not
limited to "op=" and/or for additional properties might be desirable
in the future, but at this time it's unnecessary.
7. References
7.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4408] Wong, M. and W. Schlitt, "Sender Policy Framework (SPF)
for Authorizing Use of Domains in E-Mail, Version 1",
RFC 4408, April 2006.
[RFC4409] Gellens, R. and J. Klensin, "Message Submission for Mail",
RFC 4409, April 2006.
[I-D.crocker-rfc4234bis]
Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", draft-crocker-rfc4234bis-01 (work
in progress), October 2007.
7.2. Informative References
[RFC2821] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
April 2001.
[RFC2822] Resnick, P., "Internet Message Format", RFC 2822,
April 2001.
[RFC4407] Lyon, J., "Purported Responsible Address in E-Mail
Messages", RFC 4407, April 2006.
[RFC4949] Shirey, R., "Internet Security Glossary, Version 2",
RFC 4949, August 2007.
Ellermann Expires May 18, 2008 [Page 6]
Internet-Draft SPF options November 2007
Appendix A. Document History
*This appendix should not be published in an RFC.*
For [draft-ellermann-spf-options-00] the last
[draft-spf-6-3-options-10] was renamed and submitted as Internet
draft (I-D). A note that it should be not implemented before that
time was removed - apparently no additional SPF modifiers have been
implemented so far.
The first revision of the I-D (version 01) got a reference to
[RFC4949] for the improved "auth" section. More acronyms are
expanded on first usage.
Version 02 is a maintenance update removing the
[draft-spf-6-3-options] (2004-2006) history. RFC 2828 was replaced
by [RFC4949], and RFC 4234 was replaced by [I-D.crocker-rfc4234bis].
The popular demand for "helo" and "nohelo" options over the years was
near zero, they are now removed.
Author's Address
Frank Ellermann
xyzzy
Hamburg, Germany
Email: hmdmhdfmhdjmzdtjmzdtzktdkztdjz@gmail.com
URI: http://purl.net/xyzzy/
Ellermann Expires May 18, 2008 [Page 7]
Internet-Draft SPF options November 2007
Full Copyright Statement
Copyright (C) The IETF Trust (2007).
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.
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.
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.
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.
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.
Acknowledgments
Funding for the RFC Editor function is provided by the IETF
Administrative Support Activity (IASA). This document was produced
using xml2rfc v1.33pre5 (of http://xml.resource.org/) from a source
in RFC-2629 XML format.
Ellermann Expires May 18, 2008 [Page 8]