VCARDDAV | G. Salgueiro |
Internet-Draft | J. Clarke |
Intended status: Standards Track | P. Saint-Andre |
Expires: July 19, 2013 | Cisco Systems |
January 15, 2013 |
vCard KIND:device
draft-salgueiro-vcarddav-kind-device-07
This document defines a value of "device" for the vCard KIND property so that the vCard format can be used to represent computing devices such as appliances, computers, or network elements (e.g., a server, router, switch, printer, sensor, or phone).
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http:/⁠/⁠datatracker.ietf.org/⁠drafts/⁠current/⁠.
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."
This Internet-Draft will expire on July 19, 2013.
Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http:/⁠/⁠trustee.ietf.org/⁠license-⁠info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
Version 4 of the vCard specification [RFC6350] defines a new "KIND" property to specify the type of entity that a vCard represents. During its work on the base vCard4 specification, the VCARDDAV Working Group defined values of "individual", "org", "group", and "location" for the KIND property.
During working group discussion of the document that became [RFC6473], consideration was given to defining a more general value of "thing", but it was decided to split "thing" into software applications and hardware devices and to define only the "application" value at that time. Since then, use cases for device vCards have emerged. These use cases involve using vCards as a primer for inventory and asset tracking data specific to network elements. Therefore, this document complements [RFC6473] by defining a value of "device" for the KIND property to represent computing devices such as appliances, computers, or network elements. In this context, the concept of a device is constrained to computing devices and thus is distinct from purely mechanical devices such as elevators, electric generators, etc. that cannot communicate in any way over a network. This does not preclude, however, network-attached sensors that are connected to such mechanical devices.
When the KIND property has a value of "device", the vCard represents a computing device such as an appliance, a computer, or a network element (e.g., a server, router, switch, printer, sensor, or phone). More formally, a "device" is functionally equivalent to the "device" object class used in the Lightweight Directory Access Protocol [RFC4519] as derived from the Open Systems Interconnection model [X.521] [X.200]. However, whereas [X.521] specifies that devices are "physical" elements, a device in this context can also be virtual such as a virtual machine running within another physical element. As one example of the "device" KIND, vCards can be embedded into devices at manufacturing time such that basic information such as serial number, support email, and documentation URL can be retrieved upon initial deployment. This vCard can be modified after the device is deployed to contain user-specified data about the device's characteristics. The vCard data can therefore be used for both asset tracking and operational purposes.
A device might have a number of embedded vCards for varying purposes. The process for discovering and accessing these vCards is purposefully left unspecified in this document as this process could rely on any mechanism that makes sense for the device in question. For example, a device could have one or more of the following vCard instances:
When a device has vCards other than its KIND:device vCard, those vCards can be linked together with RELATED (see the definition of the RELATED organizational property in Section 6.6.6 of [RFC6350]). In multi-vCard instances the KIND:device vCard would use the RELATED property to express the relationship with the ancillary vCard(s). Those supplementary vCards need not use RELATED to point back to the KIND:device vCard. In this manner, the vCard for the device itself can be easily distinguished from vCards referring to the vendor organization, device administrator, and installed applications.
The following base properties make sense for vCards that represent devices (this list is not exhaustive, and other properties might be applicable as well):
Although it might be desirable to define a more fine-grained taxonomy of devices (e.g., a KIND of "device" with a subtype of "router" or "computer"), such a taxonomy is out of scope for this document.
The following is an example of a router device that contains both manufacturing details as well as post-deployment attributes and uses the XML representation of vCard (xCard) described in [RFC6351]. This vCard points to another, related vCard that contains the details of an administrative contact for the device. This vCard also leverages the extensibility of the xCard format to reference additional namespaces in order to provide richer details about the given device (e.g., the serial number and software version are specified as xCard extensions).
<vcard xmlns="urn:ietf:params:xml:ns:vcard-4.0"> <kind><text>device</text></kind> <fn> <parameters> <type><text>x-model-name</text></type> </parameters> <text>RTR1001</text> </fn> <fn><text>core-rtr-1.example.net</text></fn> <url><uri>http://www.example.com/support/index.html</uri></url> <email><text>support@example.com</text></email> <email> <parameters> <type><text>x-local-support</text></type> </parameters> <text>network-support@example.net</text> </email> <impp><uri>xmpp:core-rtr-1@example.net</uri></impp> <related> <parameters> <type><text>contact</text></type> </parameters> <uri>urn:uuid:5CEF1870-0326-11E2-A21F-0800200C9A66</uri> </related> <logo><uri>http://www.example.com/images/logo.png</uri></logo> <geo><uri>geo:35.82,-78.64</uri></geo> <tz><text>America/New_York</text></tz> <rev><timestamp>20120104T213000Z</timestamp></rev> <uid><uri>urn:uuid:00CCFB88-155F-40F6-B9D9-B04D134860C0</uri></uid> <serial-number xmlns='http://example.org/profiles/serial-number'> FTX1234ABCD </serial-number> <note> <parameters> <type><text>x-contract-number</text></type> </parameters> <text>1234567</text> </note> <mac xmlns='http://example.org/profiles/mac'> 00-00-5E-00-00-01 </mac> <sw-version xmlns='http://example.org/profiles/sw-version'> 2.1.5 </sw-version> </vcard>
IANA is asked to add the following entry to the "vCard Property Values" registry table (http://www.iana.org/assignments/vcard-elements#property-values):
Property | Value | Reference |
---|---|---|
KIND | device | RFCXXXX |
In conformance with Section 10.2.6 of [RFC6350], the registration template is as follows:
[[NOTE TO RFC EDITOR: Please change XXXX to the number assigned to this specification, and remove this paragraph on publication.]]
Registration of this vCard KIND to represent devices does not in itself introduce security considerations beyond those specified for vCards in general as described in [RFC6350]. Nevertheless, risks can arise for vulnerable Internet connected devices as a result of the publication of the identification details provided by device vCards. Well-known publicly accessible device vCard repositories, while not defined in this document, can increase the probability of an exploit of an existing vulnerability, especially for devices with no good way to update their software or firmware. It is the responsibility of the device administrator to adhere to best current security practices and proper software upgrade and security patch strategies to mitigate vulnerability to attack. Specifications defining device-specific vCard extensions or profiles that might be included in such vCards also need to consider this potential increased risk.
[RFC6350] | Perreault, S., "vCard Format Specification", RFC 6350, August 2011. |
[RFC4519] | Sciberras, A., "Lightweight Directory Access Protocol (LDAP): Schema for User Applications", RFC 4519, June 2006. |
[RFC6351] | Perreault, S., "xCard: vCard XML Representation", RFC 6351, August 2011. |
[RFC6473] | Saint-Andre, P., "vCard KIND:application", RFC 6473, December 2011. |
[X.200] | International Telecommunications Union, "Information Technology - Open Systems Interconnection - Basic Reference Model: The Basic Model", ITU-T Recommendation X.521, ISO Standard 9594-7, February 2001. |
[X.521] | International Telecommunications Union, "Information Technology - Open Systems Interconnection - The Directory: Selected Object Classes", ITU-T Recommendation X.200, ISO Standard 7498-1, July 1994. |
[IEEE.802.1AR] | Institute of Electrical and Electronics Engineers, "Secure Device Identity", IEEE 802.1AR, 2009. |