Network Working Group                                       J. Rosenberg
Request for Comments: 5079                                         Cisco
Category: Standards Track                                  December 2007
        
Network Working Group                                       J. Rosenberg
Request for Comments: 5079                                         Cisco
Category: Standards Track                                  December 2007
        

Rejecting Anonymous Requests in the Session Initiation Protocol (SIP)

拒绝会话启动协议(SIP)中的匿名请求

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.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Abstract

摘要

The Session Initiation Protocol (SIP) allows for users to make anonymous calls. However, users receiving such calls have the right to reject them because they are anonymous. SIP has no way to indicate to the caller that the reason for call rejection was that the call was anonymous. Such an indication is useful to allow the call to be retried without anonymity. This specification defines a new SIP response code for this purpose.

会话启动协议(SIP)允许用户进行匿名呼叫。但是,接收此类呼叫的用户有权拒绝这些呼叫,因为它们是匿名的。SIP无法向呼叫者表明拒绝呼叫的原因是呼叫是匿名的。这样的指示有助于允许在不匿名的情况下重试呼叫。本规范为此定义了一个新的SIP响应代码。

Table of Contents

目录

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 2
   3.  Server Behavior . . . . . . . . . . . . . . . . . . . . . . . . 3
   4.  UAC Behavior  . . . . . . . . . . . . . . . . . . . . . . . . . 4
   5.  433 (Anonymity Disallowed) Definition . . . . . . . . . . . . . 4
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 4
   7.  Security Considerations . . . . . . . . . . . . . . . . . . . . 5
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 5
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 6
     9.1.  Normative References  . . . . . . . . . . . . . . . . . . . 6
     9.2.  Informative References  . . . . . . . . . . . . . . . . . . 6
        
   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 2
   3.  Server Behavior . . . . . . . . . . . . . . . . . . . . . . . . 3
   4.  UAC Behavior  . . . . . . . . . . . . . . . . . . . . . . . . . 4
   5.  433 (Anonymity Disallowed) Definition . . . . . . . . . . . . . 4
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 4
   7.  Security Considerations . . . . . . . . . . . . . . . . . . . . 5
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . 5
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 6
     9.1.  Normative References  . . . . . . . . . . . . . . . . . . . 6
     9.2.  Informative References  . . . . . . . . . . . . . . . . . . 6
        
1. Introduction
1. 介绍

The Session Initiation Protocol (SIP) [RFC3261] allows for users to make anonymous calls. In RFC 3261, this is done by including a From header field whose display name has the value of "Anonymous". Greater levels of anonymity were subsequently defined in [RFC3323], which introduces the Privacy header field. The Privacy header field allows a requesting User Agent (UA) to ask for various levels of anonymity, including user level anonymity, header level anonymity, and session level anonymity. [RFC3325] additionally defined the P-Asserted-Identity header field, used to contain an asserted identity. RFC 3325 also defined the 'id' value for the Privacy header field, which is used to request the network to remove the P-Asserted-Identity header field.

会话启动协议(SIP)[RFC3261]允许用户进行匿名呼叫。在RFC3261中,这是通过包括一个From头字段来实现的,该字段的显示名称的值为“匿名”。随后在[RFC3323]中定义了更高级别的匿名性,它引入了隐私标头字段。隐私标头字段允许请求用户代理(UA)请求不同级别的匿名性,包括用户级匿名性、标头级匿名性和会话级匿名性。[RFC3325]另外定义了P-Asserted-Identity标头字段,用于包含断言的标识。RFC 3325还为隐私标头字段定义了“id”值,该值用于请求网络删除P-Asserted-Identity标头字段。

Though users need to be able to make anonymous calls, users that receive such calls retain the right to reject the call because it is anonymous. SIP does not provide a response code that allows the User Agent Server (UAS), or a proxy acting on its behalf, to explicitly indicate that the request was rejected because it was anonymous. The closest response code is 403 (Forbidden), which doesn't convey a specific reason. While it is possible to include a reason phrase in a 403 response that indicates to the human user that the call was rejected because it was anonymous, that reason phrase is not useful for automata and cannot be interpreted by callers that speak a different language. An indication that can be understood by an automaton would allow for programmatic handling, including user interface prompts, or conversion to equivalent error codes in the Public Switched Telephone Network (PSTN) when the client is a gateway.

尽管用户需要能够进行匿名呼叫,但接收此类呼叫的用户保留拒绝该呼叫的权利,因为该呼叫是匿名的。SIP不提供允许用户代理服务器(UAS)或代表其行事的代理显式指示由于匿名请求而被拒绝的响应代码。最接近的响应代码是403(禁止),它没有传达具体的原因。虽然可以在403响应中包括原因短语,该原因短语向人类用户指示呼叫因匿名而被拒绝,但该原因短语对于自动机不有用,并且不能由讲不同语言的呼叫者解释。自动机可以理解的指示将允许编程处理,包括用户界面提示,或当客户端是网关时,转换为公共交换电话网(PSTN)中的等效错误代码。

To remedy this, this specification defines the 433 (Anonymity Disallowed) response code.

为了解决这个问题,本规范定义了433(不允许匿名)响应代码。

2. Terminology
2. 术语

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].

本文件中的关键词“必须”、“不得”、“必需”、“应”、“不应”、“应”、“不应”、“建议”、“可”和“可选”应按照[RFC2119]中所述进行解释。

3. Server Behavior
3. 服务器行为

A server (generally acting on behalf of the called party, though this need not be the case) MAY generate a 433 (Anonymity Disallowed) response when it receives an anonymous request, and the server refuses to fulfill the request because the requestor is anonymous. A request SHOULD be considered anonymous when the identity of the originator of the request has been explicitly withheld by the originator. This occurs in any one of the following cases:

服务器(通常代表被叫方行事,尽管情况并非如此)在接收到匿名请求时可生成433(不允许匿名)响应,并且服务器拒绝满足该请求,因为请求者是匿名的。当请求的发起人的身份被发起人明确拒绝时,请求应被视为匿名。在下列任何一种情况下都会发生这种情况:

o The From header field contains a URI within the anonymous.invalid domain.

o “发件人标头”字段包含匿名域中的URI。域无效。

o The From header field contains a display name whose value is either 'Anonymous' or 'anonymous'. Note that display names make a poor choice for indicating anonymity, since they are meant to be consumed by humans, not automata. Thus, language variations and even misspelling can cause an automaton to miss a hint in the display name. Despite these problems, a check on the display name is included here because RFC 3261 explicitly calls out the usage of the display name as a way to declare anonymity.

o “发件人标头”字段包含一个显示名称,其值为“匿名”或“匿名”。请注意,显示名称对于表示匿名性来说是一个糟糕的选择,因为它们是供人类使用的,而不是供自动机使用的。因此,语言变化甚至拼写错误都可能导致自动机错过显示名称中的提示。尽管存在这些问题,这里还是包含了对显示名的检查,因为RFC3261明确地调用了使用显示名作为声明匿名性的一种方式。

o The request contained a Privacy header field whose value indicates that the user wishes its identity withheld. Values meeting this criteria are 'id' [RFC3325] or 'user'.

o 请求包含一个隐私头字段,其值表示用户希望保留其身份。符合此标准的值为“id”[RFC3325]或“用户”。

o The From header field contains a URI that has an explicit indication that it is anonymous. One such example of a mechanism that would meet this criteria is [coexistence]. This criteria is true even if the request has a validated Identity header field [RFC4474], which can be used in concert with anonymized From header fields.

o From标头字段包含一个URI,该URI明确表示它是匿名的。符合这一标准的机制的一个例子是[共存]。即使请求具有已验证的标识标头字段[RFC4474],该字段可与匿名化的发件人标头字段配合使用,该标准也是正确的。

Lack of a network-asserted identity (such as the P-Asserted-Identity header field), in and of itself, SHOULD NOT be considered an indication of anonymity. Even though a Privacy header field value of 'id' will cause the removal of a network-asserted identity, there is no way to differentiate this case from one in which a network-asserted identity was not supported by the originating domain. As a consequence, a request without a network-asserted identity is considered anonymous only when there is some other indication of this, such as a From header field with a display name of 'Anonymous'.

缺少网络断言标识(例如P-asserted-identity报头字段)本身不应被视为匿名的表示。即使“id”的隐私标头字段值将导致删除网络断言标识,也无法将此情况与发起域不支持网络断言标识的情况区分开来。因此,只有当有其他指示时,例如显示名称为“anonymous”的From标头字段,才认为没有网络断言标识的请求是匿名的。

In addition, requests where the identity of the requestor cannot be determined or validated, but it is not a consequence of an explicit action on the part of the requestor, are not considered anonymous. For example, if a request contains a non-anonymous From header field, along with the Identity and Identity-Info header fields [RFC4474],

此外,如果无法确定或验证请求者的身份,但不是请求者明确行动的结果,则请求不被视为匿名。例如,如果请求包含非匿名发件人标头字段,以及标识和标识信息标头字段[RFC4474],

but the certificate could not be obtained from the reference in the Identity-Info header field, it is not considered an anonymous request, and the 433 response code SHOULD NOT be used.

但无法从Identity Info标头字段中的引用获取证书,它不被视为匿名请求,并且不应使用433响应代码。

4. UAC Behavior
4. UAC行为

A User Agent Client (UAC) receiving a 433 (Anonymity Disallowed) MUST NOT retry the request without anonymity unless it obtains confirmation from the user that this is desirable. Such confirmation could be obtained through the user interface, or by accessing user-defined policy. If the user has indicated that this is desirable, the UAC MAY retry the request without requesting anonymity. Note that if the UAC were to automatically retry the request without anonymity in the absence of an indication from the user that this treatment is desirable, then the user's expectations would not be met. Consequently, a user might think it had completed a call anonymously when it is not actually anonymous.

收到433(不允许匿名)请求的用户代理客户端(UAC)不得在不匿名的情况下重试该请求,除非它从用户处获得确认,这是可取的。这种确认可以通过用户界面或通过访问用户定义的策略来获得。如果用户表示这是可取的,UAC可以在不请求匿名的情况下重试该请求。请注意,如果UAC在没有用户表示这种处理是可取的情况下自动重试请求而不匿名,则不会满足用户的期望。因此,用户可能会认为自己匿名完成了一个呼叫,而实际上它并不是匿名的。

Receipt of a 433 response to a mid-dialog request SHOULD NOT cause the dialog to terminate, and SHOULD NOT cause the specific usage of that dialog to terminate [RFC5057].

收到对mid对话框请求的433响应不应导致对话框终止,也不应导致该对话框的特定用途终止[RFC5057]。

A UAC that does not understand or care about the specific semantics of the 433 response will treat it as a 400 response.

不理解或不关心433响应的特定语义的UAC将把它视为400响应。

5. 433 (Anonymity Disallowed) Definition
5. 433(不允许匿名)定义

This response indicates that the server refused to fulfill the request because the requestor was anonymous. Its default reason phrase is "Anonymity Disallowed".

此响应表示服务器拒绝满足请求,因为请求者是匿名的。其默认原因短语是“不允许匿名”。

6. IANA Considerations
6. IANA考虑

This section registers a new SIP response code according to the procedures of RFC 3261.

本节根据RFC 3261的程序注册新的SIP响应代码。

RFC Number: RFC 5079

RFC编号:RFC 5079

Response Code Number: 433

响应代码:433

Default Reason Phrase: Anonymity Disallowed

默认原因短语:不允许匿名

7. Security Considerations
7. 安全考虑

The fact that a request was rejected because it was anonymous does reveal information about the called party -- that the called party does not accept anonymous calls. This information may or may not be sensitive. If it is, a UAS SHOULD reject the request with a 403 instead.

请求被拒绝是因为它是匿名的,这一事实揭示了被叫方的信息——被叫方不接受匿名呼叫。这些信息可能敏感,也可能不敏感。如果是,UAS应该使用403来拒绝请求。

In the Public Switched Telephone Network (PSTN), the Anonymous Call Rejection (ACR) feature is commonly used to prevent unwanted calls from telemarketers (also known as spammers). Since telemarketers frequently withhold their identity, anonymous call rejection has the desired effect in many (but not all) cases. It is important to note that the response code described here is likely to be ineffective in blocking SIP-based spam. The reason is that a malicious caller can include a From header field and display name that is not anonymous, but is meaningless and invalid. Without a Privacy header field, such a request will not appear anonymous and thus not be blocked by an anonymity screening service. Dealing with SIP-based spam is not a simple problem. The reader is referred to [sipping-spam] for a discussion of the problem.

在公共交换电话网(PSTN)中,匿名呼叫拒绝(ACR)功能通常用于防止来自电话销售人员(也称为垃圾邮件发送者)的不需要的呼叫。由于电话销售人员经常隐瞒自己的身份,匿名电话拒绝在许多(但不是所有)情况下都能达到预期效果。需要注意的是,此处描述的响应代码在阻止基于SIP的垃圾邮件方面可能无效。原因是恶意调用方可以包含From头字段和显示名称,该名称不是匿名的,但没有意义且无效。如果没有隐私头字段,这样的请求将不会显示为匿名,因此不会被匿名筛选服务阻止。处理基于SIP的垃圾邮件不是一个简单的问题。读者可以参考[啜饮垃圾邮件]来讨论这个问题。

When anonymity services are being provided as a consequence of an anonymizer function acting as a back-to-back user agent (B2BUA) [RFC3323], and the anonymizer receives a 433 response, the anonymizer MUST NOT retry the request without anonymization unless it has been explicitly configured by the user to do so. In essence, the same rules that apply to a UA in processing of a 433 response apply to a network-based anonymization function, and for the same reasons.

当作为背对背用户代理(B2BUA)[RFC3323]的匿名器功能的结果提供匿名服务,并且匿名器接收到433响应时,除非用户明确配置匿名器,否则匿名器不得在不匿名的情况下重试请求。本质上,在处理433响应时适用于UA的相同规则适用于基于网络的匿名功能,并且出于相同的原因。

8. Acknowledgements
8. 致谢

This document was motivated based on the requirements in [tispan-req], and has benefited from the concepts in [hautakorpi]. Thanks to Keith Drage, Paul Kyzivat, and John Elwell for their reviews of this document.

本文件基于[tispan req]中的要求,并受益于[hautakorpi]中的概念。感谢Keith Drage、Paul Kyzivat和John Elwell对本文档的审阅。

9. References
9. 工具书类
9.1. Normative References
9.1. 规范性引用文件

[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002.

[RFC3261]Rosenberg,J.,Schulzrinne,H.,Camarillo,G.,Johnston,A.,Peterson,J.,Sparks,R.,Handley,M.,和E.Schooler,“SIP:会话启动协议”,RFC 3261,2002年6月。

[RFC3323] Peterson, J., "A Privacy Mechanism for the Session Initiation Protocol (SIP)", RFC 3323, November 2002.

[RFC3323]Peterson,J.,“会话启动协议(SIP)的隐私机制”,RFC3323,2002年11月。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。

[RFC4474] Peterson, J. and C. Jennings, "Enhancements for Authenticated Identity Management in the Session Initiation Protocol (SIP)", RFC 4474, August 2006.

[RFC4474]Peterson,J.和C.Jennings,“会话启动协议(SIP)中身份验证管理的增强”,RFC 4474,2006年8月。

9.2. Informative References
9.2. 资料性引用

[RFC3325] Jennings, C., Peterson, J., and M. Watson, "Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks", RFC 3325, November 2002.

[RFC3325]Jennings,C.,Peterson,J.,和M.Watson,“在可信网络中声明身份的会话启动协议(SIP)的私有扩展”,RFC 33252002年11月。

[coexistence] Rosenberg, J., "Coexistence of P-Asserted-ID and SIP Identity", Work in Progress, June 2006.

[共存]Rosenberg,J.,“P-ID和SIP身份的共存”,正在进行的工作,2006年6月。

[tispan-req] Jesske, R., "Input Requirements for the Session Initiation Protocol (SIP) in support for the European Telecommunications Standards Institute", Work in Progress, July 2007.

[tispan req]Jeske,R.,“支持欧洲电信标准协会的会话启动协议(SIP)的输入要求”,正在进行的工作,2007年7月。

[hautakorpi] Hautakorpi, J. and G. Camarillo, "Extending the Session Initiation Protocol Reason Header with Warning Codes", Work in Progress, October 2005.

[hautakorpi]hautakorpi,J.和G.Camarillo,“使用警告码扩展会话启动协议原因标头”,正在进行的工作,2005年10月。

[RFC5057] Sparks, R., "Multiple Dialog Usages in the Session Initiation Protocol", RFC in 5057, November 2007.

[RFC5057] Sparks, R., "Multiple Dialog Usages in the Session Initiation Protocol", RFC in 5057, November 2007.translate error, please retry

[sipping-spam] Jennings, C. and J. Rosenberg, "The Session Initiation Protocol (SIP) and Spam", Work in Progress, August 2007.

[啜饮垃圾邮件]Jennings,C.和J.Rosenberg,“会话启动协议(SIP)和垃圾邮件”,正在进行的工作,2007年8月。

Author's Address

作者地址

Jonathan Rosenberg Cisco Edison, NJ US

Jonathan Rosenberg Cisco Edison,美国新泽西州

   EMail: jdrosen@cisco.com
   URI:   http://www.jdrosen.net
        
   EMail: jdrosen@cisco.com
   URI:   http://www.jdrosen.net
        

Full Copyright Statement

完整版权声明

Copyright (C) The IETF Trust (2007).

版权所有(C)IETF信托基金(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.

本文件受BCP 78中包含的权利、许可和限制的约束,除其中规定外,作者保留其所有权利。

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对可能声称与本文件所述技术的实施或使用有关的任何知识产权或其他权利的有效性或范围,或此类权利下的任何许可可能或可能不可用的程度,不采取任何立场;它也不表示它已作出任何独立努力来确定任何此类权利。有关RFC文件中权利的程序信息,请参见BCP 78和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.

向IETF秘书处披露的知识产权副本和任何许可证保证,或本规范实施者或用户试图获得使用此类专有权利的一般许可证或许可的结果,可从IETF在线知识产权存储库获取,网址为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.

IETF邀请任何相关方提请其注意任何版权、专利或专利申请,或其他可能涵盖实施本标准所需技术的专有权利。请将信息发送至IETF的IETF-ipr@ietf.org.