One document matched: draft-gerdes-ace-actors-00.txt
ACE Working Group S. Gerdes
Internet-Draft Universitaet Bremen TZI
Intended status: Informational May 30, 2014
Expires: December 1, 2014
Actors in the ACE Architecture
draft-gerdes-ace-actors-00
Abstract
Constrained nodes are small devices which are limited in terms of
processing power, memory, non-volatile storage and transmission
capacity. Due to these constraints, commonly used security protocols
are not easily applicable. Nevertheless, an authentication and
authorization solution is needed to ensure the security of these
devices.
This document defines actors in the security architecture for
authentication and authorization, analyzes the relationships between
them, and describes their respective tasks and characteristics. This
knowledge will then be used to derive requirements for the
communication between the actors.
Status of This Memo
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 December 1, 2014.
Copyright Notice
Copyright (c) 2014 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
Gerdes Expires December 1, 2014 [Page 1]
Internet-Draft ace-actors May 2014
(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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3
3. Actors . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1. Constrained Level Actors . . . . . . . . . . . . . . . . 4
3.2. Principal Level Actors . . . . . . . . . . . . . . . . . 5
3.3. Less-Constrained Level Actors . . . . . . . . . . . . . . 5
4. Protocol Requirements . . . . . . . . . . . . . . . . . . . . 6
4.1. Constrained Level Protocols . . . . . . . . . . . . . . . 6
4.1.1. Cross Level Support Protocols . . . . . . . . . . . . 7
4.2. Less-Constrained Level Protocols . . . . . . . . . . . . 7
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
6. Security Considerations . . . . . . . . . . . . . . . . . . . 7
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . 8
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
Constrained nodes are small devices with limited abilities which in
many cases are made to fulfill a single simple task. They have
limited system resources such as processing power, memory, non-
volatile storage and transmission capacity and additionally in most
cases do not have user interfaces and displays. Due to these
constraints, commonly used security protocols are not always easily
applicable.
Constrained nodes are expected to be integrated in all aspects of
every day live and thus will be trusted with a lot of personal data.
Without appropriate security mechanisms attackers might gain control
over things relevant to our lives. Authentication and authorization
mechanisms are therefore prerequisites for a secure Internet of
Things.
Gerdes Expires December 1, 2014 [Page 2]
Internet-Draft ace-actors May 2014
The Authentication and Authorization in Constrained Environments
(ACE) Working Group aims at defining a solution for authenticated and
authorized access to resources.
To achieve this, it is necessary to develop a deep understanding
about the problem to be solved. An essential part of this is to
identify the various "players" in the scenario: What are the relevent
actors in the archicture and which tasks do they fulfill? How can
the relationships between the actors be defined?
This document defines actors, their relationships and resulting
security requirements for authentication and authorization in
constrained environments.
1.1. Terminology
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 RFC 2119 [RFC2119].
This document uses the following terminology:
Resource: an item of interest. It might contain sensor or actuator
values or other information. The author had resources in the
sense of RFC2616 [RFC2616] in mind, but for the considerations in
this document the kind of representation of the item is not
relevant.
Constrained node: a constrained device in the sense of [RFC7228].
2. Problem Statement
The problem the ACE Working Group aims to solve can be summarized as
follows:
o A Client (C) wants to access a Resource (R) on a Resource Server
(RS).
o A priori, C and RS do not know each other and have no trust
relationship.
o C and / or RS are constrained.
------- requests resource --------
| C | ------------------> | RS |
------- --------
Gerdes Expires December 1, 2014 [Page 3]
Internet-Draft ace-actors May 2014
There are some security requirements for this scenario including one
or more of:
o No unauthorized entity must be able to access (or otherwise gain
knowledge of) R.
o C must access the proper R.
Therefore, RS needs to know if C is allowed to access R and if that
is the case needs to make sure that it provides the resource only to
C. C needs to know if R as offered by RS really is the resource it
wants to access.
3. Actors
This section describes the various actors in the architecture. An
actor is identified by the tasks it has to fulfill. Several actors
might share a single device or even be combined in a single piece of
software. Interfaces between actors may be realized as protocols or
be internal to such a piece of software.
3.1. Constrained Level Actors
As described above, either C or RS or both of them may be located on
a constrained node. Although they are not necessarily constrained
they should be able to operate if they are. We therefore derive from
the problem description that C and RS must be able to perform their
tasks even if they are located on a constrained node. Thus, C and RS
are considered to be Constrained Level Actors.
RS is hosting a resource R.
R is an item of interest such as a sensor or actuator value. R is
considered to be part of RS and is not a separate actor. The device
on which RS is located might contain several resources of different
resource owners. For simplicity of exposition, these resources are
described as if they had separate RS.
C attempts to access a resource on RS.
As C and RS do not previously know each other they might belong to
different security domains.
Gerdes Expires December 1, 2014 [Page 4]
Internet-Draft ace-actors May 2014
3.2. Principal Level Actors
Our objective is that C and RS are under control of principals in the
physical world, the Client Owner (CO) and the Resource Owner (RO)
respectively. The owners decide about the security policies of their
respective devices and belong to the same security domain.
CO is in charge of C, i.e. CO specifies security policies for C, e.g.
with whom C is allowed to communicate. By definition, C and CO
belong to the same security domain.
RO is in charge of R and RS. RO specifies authorization policies for
R and decides with whom RS is allowed to communicate. By definition,
R, RS and RO belong to the same security domain.
------ ------
| CO | | RO | Principal Level
------ ------
| |
in charge of in charge of
| |
V V
------- --------
| C | -- requests resource ---> | RS | Constrained Level
------- <-- provides resource--- --------
3.3. Less-Constrained Level Actors
Constrained level actors can only fulfill a limited number of tasks
and may not have network connectivity all the time. To relieve them
from having to manage keys for numerous devices and conducting
computationally intensive tasks, another complexity level for actors
is introduced. An actor on the less-constrained level belongs to the
same security domain as its respective constrained level actor. They
also have the same principal.
The Authentication Manager (AM) belongs to the same security domain
as C and CO. AM acts on behalf of CO. It is aiding C in the
authentication of RS and determining if RS is an authorized source
for R.
The Authorization Server (AS) belongs to the same security domain as
R, RS and RO. AS acts in behalf of RO. It supports RS by
authenticating C and determining C's permissions on R.
------ ------
| CO | | RO | Principal Level
Gerdes Expires December 1, 2014 [Page 5]
Internet-Draft ace-actors May 2014
------ ------
| |
in charge of in charge of
| |
V V
---------- -----------
| AM | <-- AuthN and AuthZ -> | AS | Less-Constrained Level
---------- -----------
| |
authentication authentication
and authorization and authorization
support support
| |
V V
------- --------
| C | -- requests resource ---> | RS | Constrained Level
------- <-- provides resource -- --------
For a more detailed graphic please consult the PDF version.
4. Protocol Requirements
Devices on the less-constrained level are more powerful than
constrained level devices. This results in different requirements
for the protocols used on these levels.
4.1. Constrained Level Protocols
A protocol is considered to be on the constrained level if it is used
between the actors C and RS which are considered to be constrained
(see Section 3.1). C and RS might not belong to the same security
domain. Therefore, constrained level protocols are required to work
between different security domains.
Commonly used Internet protocols can not in every case be applied to
constrained environments. In some cases, tweaking and profiling is
required. In other cases it is beneficial to define new protocols
which were designed with the special characteristics of constrained
environments in mind.
On the constrained level, protocols must be used which address the
specific requirements of constrained environments. The Constrained
Application Protocol (CoAP) [I-D.ietf-core-coap] should be used as
transfer protocol if possible. CoAP defines a security binding to
Datagram Transport Layer Security Protocol (DTLS) [RFC6347]. Thus,
DTLS should be used for channel security.
Gerdes Expires December 1, 2014 [Page 6]
Internet-Draft ace-actors May 2014
Constrained devices have only limited storage space and thus cannot
store large numbers of keys. This is especially important because
constrained networks are expected to consist of thousands of nodes.
Protocols on the constrained level should keep this limitation in
mind.
4.1.1. Cross Level Support Protocols
Protocols which operate between a constrained device on one side and
the corresponding less constrained device on the other are considered
to be (cross level) support protocols. Protocols used between C and
AM or RS and AS are therefore support protocols.
Support protocols must consider the limitations of their constrained
endpoint and therefore belong to the constrained level protocols.
4.2. Less-Constrained Level Protocols
A protocol is considered to be on the less-constrained level if it is
used between the actors AM and AS. AM and AS might belong to
different security domains.
On the less-constrained level, HTTP [RFC2616] and Transport Layer
Security (TLS) [RFC5246] can be used instead of CoAP and DTLS.
Moreover, existing security solutions for authentication and
authorization such as the Web Authorization Protocol (OAuth)
[RFC6749] and Kerberos [RFC4120] can likely be used without
modifications and there are no limitations for the use of a Public
Key Infrastructure (PKI).
5. IANA Considerations
None
6. Security Considerations
This document discusses security requirements for the ACE
architecture.
7. Acknowledgments
The author would like to thank Carsten Bormann and Olaf Bergmann for
their valuable input and feedback.
8. References
8.1. Normative References
Gerdes Expires December 1, 2014 [Page 7]
Internet-Draft ace-actors May 2014
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for
Constrained-Node Networks", RFC 7228, May 2014.
8.2. Informative References
[I-D.ietf-core-coap]
Shelby, Z., Hartke, K., and C. Bormann, "Constrained
Application Protocol (CoAP)", draft-ietf-core-coap-18
(work in progress), June 2013.
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
[RFC4120] Neuman, C., Yu, T., Hartman, S., and K. Raeburn, "The
Kerberos Network Authentication Service (V5)", RFC 4120,
July 2005.
[RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol Version 1.2", RFC 5246, August 2008.
[RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer
Security Version 1.2", RFC 6347, January 2012.
[RFC6749] Hardt, D., "The OAuth 2.0 Authorization Framework", RFC
6749, October 2012.
Author's Address
Stefanie Gerdes
Universitaet Bremen TZI
Postfach 330440
Bremen D-28359
Germany
Phone: +49-421-218-63906
Email: gerdes@tzi.org
Gerdes Expires December 1, 2014 [Page 8]
| PAFTECH AB 2003-2026 | 2026-04-22 13:47:28 |