I2RS working group S. Hares
Internet-Draft Hickory Hill Consulting
Intended status: Standards Track W. George
Expires: September 5, 2014 Time-Warner Cable
S. Brim
Consultant
N. Cam-Winget
Cisco
D. Zhang
Q. Wu
Huawei
A. Abro
S. Asadullah
Cisco
J. Halpern
Ericcson
E. Yu
Cisco
March 4, 2014
I2RS Security Architecture
draft-hares-i2rs-security-00
Abstract
This presents an expansion of the security architecture found in the
i2rs architecture.
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 September 5, 2014.
Hares, et al. Expires September 5, 2014 [Page 1]
Internet-Draft I2RS Security March 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
(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
2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Security Issues . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. Security roles for the I2RS client-agent . . . . . . . . 7
3.2. Transport requirements . . . . . . . . . . . . . . . . . 7
3.3. Auditable Data streams . . . . . . . . . . . . . . . . . 8
3.4. Encryption and Integrity . . . . . . . . . . . . . . . . 8
3.5. stacked I2RS agents . . . . . . . . . . . . . . . . . . . 9
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9
5. Security Considerations . . . . . . . . . . . . . . . . . . . 9
6. Informative References . . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10
1. Introduction
The Interface to the Routing System (I2RS)
[[I-D.ietf-i2rs-architecture]] provides read and write access to the
information and state within the routing process within routing
elements. The I2RS client interacts with one or more I2RS agents to
collect information from network routing systems. This security
architecture expands on the the security issues involved in the i2rs
client - i2rs agent exchange described in
[I-D.ietf-i2rs-architecture].
2. Definitions
This document utilizes the definitions found the following drafts:
[RFC4949], and [I-D.ietf-i2rs-architecture].
Specifically, this document utilize the following definitions:
Hares, et al. Expires September 5, 2014 [Page 2]
Internet-Draft I2RS Security March 2014
Access control
[RFC4949] describes access control as: a) protection of system
resources against unauthorized access, b) process controlled by a
security policy that permits access only by authorized entities
(users, programs, process, or others) according to that policy, c)
preventing unauthorized use of resource, d) using human controls
to identify or admit properly authorized people to a SCIF, and e)
limitations on between subjects and objections in a system. I2RS
focuses on role-based access control (RBAC).
Authentication
[RFC4949] describes authentication as the process of verifying
(i.e., establish the truth of) an attribute value claimed by or
for a system entity or system resource. Authentication has two
steps: identify and verify.
Data Confidentiality
[RFC4949] describes data confidentiality has having two
properties: a) data is not disclosed to system entities unless
they have been authorized to know, and b) data is not disclosed to
unauthorized individuals, entities or processes. The key point is
that confidentiality implies that the originator has the ability
to authorize where the information goes. Confidentiality is
important for both read and write scope of the data.
Data confidentiality service
[RFC4949] also describes data confidentiality service as a
security service that protects data against unauthorized
disclosure. Please note that a user can designated that the all
people are authorized to view a piece of data which would mean a
data confidentiality service would be essentially a null function.
Data Privacy
[RFC4949] describes data privacy as a synonym for data
confidentiality. This I2RS document will utilize data privacy as
a synonym for data confidentiality.
Mutual Authentication
[RFC4949] implies that mutual authentication between two
interacting system entities. Mutual authentication in I2RS
implies that both sides move from a state of mutual suspicion to
Hares, et al. Expires September 5, 2014 [Page 3]
Internet-Draft I2RS Security March 2014
mutually authenticated communication after having identified and
validated.
Mutual Suspicion
[RFC4949] defines mutual suspicion as a state that exist between
two interacting system entities in which neither entity can trust
the other to function correctly with regard to some security
requirement.
Role
[RFC4949] describes role as a job function or employment position
to which people or other system entities may be assigned in a
system. In the I2RS interface, the I2RS agent roles relate to the
roles that the I2RS client is utilizing. In the I2RS interface,
the I2RS client exercises a particular agent role. The
negotiation is over the client ability to exercise the agents role
as a resource. Please refere to diagram below. Existing work
includes IETF work in ABFAB and HTTP related SAML work.
Role-based Access control
[RFC4949] describes role-based access control as an identity-based
access control herein the system entities that are identified and
controlled are functional positions in an organization or process.
This document discusses the roles and identities that allow read,
write or read-write access to I2RS agent functions.
Role-based Access control
[RFC4949] describes role-based access control as an identity-based
access control herein the system entities that are identified and
controlled are functional positions in an organization or process.
This document discusses the roles and identities that allow read,
write or read-write access to I2RS agent functions.
Role certificate
[RFC4949] describes a role certificate as an organizational
certificate that is issued to a system entity that is a member of
the set of users that have identities that are assigned to the
same role.
Security audit trail
[RFC4949] describes a security audit trail as a chronological
record of system activity that is sufficient to enable the
Hares, et al. Expires September 5, 2014 [Page 4]
Internet-Draft I2RS Security March 2014
reconstruction and examination of the sequence environments and
activities surrounding or leading to an operation, procedure, or
event in a security-relevant transaction from inception to final
results. To apply this to the I2RS system, this implies that the
processes on the I2RS client-I2RS Agent protocol and related
actions on the I2RS-Agent can record a set of activity that will
allow the reconstruction and examination of the sequence of
environments and activities around actions caused by the I2RS
protocol data streams.
I2RS integrity
The data transfer as it is transmitted between client and agent
cannot be modified by unauthorized parties.
3. Security Issues
The following diagram is a variation of the [RFC4949] diagram on
role-based security, and provides the context for the assumptions of
security on the role-based work.
I2RS identity and functions diagram
Hares, et al. Expires September 5, 2014 [Page 5]
Internet-Draft I2RS Security March 2014
inheritance
roll-up (?)
||
+-----------+ VV +--------------------------+
| I2RS | identity |I2RS Agent Roles |
| Agent | assignments |= Potential Read Scope |
|identities | | + Potential Write Scope |
+--V--------+ constraints +--------------------------+
| ^
I2RS | | (not in the I2RS protocol)
protocol | +==========+
| | |identity |
| ============|repository|
| |selection |
| +----------+
| Mutual |
| authorization |
| |
| V
| +-------------------+
|--| i2rs client |
| identities |
+-------------------+
Figure 1 - I2RS Role Based discussion
The I2RS figure is taken from the following Security Definition
figure on role hierarchy
Hares, et al. Expires September 5, 2014 [Page 6]
Internet-Draft I2RS Security March 2014
(c) Permission Inheritance Assignments (i.e., Role Hierarchy)
[Constraints]
+=====+
| |
(a) Identity v v (b) Permission
+----------+ Assignments +-------+ Assignments +----------+
|Identities|<=============>| Roles |<=============>|Permissions|
+----------+ [Constraints] +-------+ [Constraints] +----------+
| | ^ ^
| | +-----------+ | | +---------------------+
| | | +-------+ | | | | Legend |
| +====>|Session|=====+ | | |
| | +-------+ | | | One-to-One |
| | ... | | | =================== |
| | +-------+ | | | |
+========>|Session|=========+ | One-to-Many |
(d) Identity | +-------+ | (e) Role | ==================> |
Selections | | Selections | |
[Constraints]| Access |[Constraints] | Many-to-Many |
| Sessions | | <================> |
+-----------+ +---------------------+
3.1. Security roles for the I2RS client-agent
Role is the Agent's Potential Read Scope plus the Potential write
Scope. The potential read scope is the Routing Attributes/variables
(for example BGP peer information) that an agent may potential read.
A notification or an event stream is a flow that an agent may
potential read. A write scope is something the client may write.
Examples are is a RIB entry or a PBR entry or protocol variables
(BGP, LDP).
Question: Does role by client will lead to proliferation of clients?
3.2. Transport requirements
The architecture provides the ability to have multiple transports
sessions providing protocol and data communication between the I2rs
Agent and the I2RS client. These transports can be TCP or secure
(SCTP) or any form of transport.
The following are questions to address regarding the transport:
o Do we have mandatory-to-implement transport protocols?
o Are there concerns about opening the mandatory-to-implement
transport from either the Client or the Server side?
Hares, et al. Expires September 5, 2014 [Page 7]
Internet-Draft I2RS Security March 2014
o How would that work with a publication or subscription model?
o Is a publishing broker feasible or does that cause security
issues?
3.3. Auditable Data streams
This section discusses how we can get data streams which have a
security audit trail (see definitions) for the I2RS Client to I2RS
AGent interactions. Agent audit trail could be the logging of what
variables written by which client (id of client) on behalf of
reported application (ID). Since the reported application id is not
valid, all the audit stream states is that the Client told the agent
this is the application I'm acting for.
Out of scope for this work is the ability to audit the application to
I2RS-Client interfaces, or the I2RS Agent to I2RS routing system.
Questions to be answered:
o I2RS client to I2RS Agent is being able to audit a requirement for
all I2RS agents or an option?
o What is scope of audit (full stream, partial stream, specific
functions)?
o Does the ability to audit mean the ability to verify?
o How does the filtering of Event data impact the audit process?
For example if BGP event changes are only taken from 50 out of 300
BGP peers, does this stop any ability to audit the session? Or if
the read filters only watch for key prefixes to be received on a
specific set of interfaces, does this stop the ability to audit?
o How do you handle read filtering and auditing? The last section
in this document has a read filtering example. Would some
conditions such as auditing and read-filtering be not allowed on
the policy match?
3.4. Encryption and Integrity
Encryption is used to provide data privacy. The real question is do
we need to encrypt the data to retain its data.
o I2RS Client to Agent: Is encryption a recommendation or
requirement?
Hares, et al. Expires September 5, 2014 [Page 8]
Internet-Draft I2RS Security March 2014
o I2RS environment: Application to I2RS client: discuss encryption
(pro/con)
o I2RS environment: I2RS client to Routing System: discuss (pro/con)
What is needed for integrity of the data
3.5. stacked I2RS agents
It is possible to have the following hierarchical scenario:
I2RS client---->I2RSAgent=I2RSclient---I2RSAGent(nodes)
Questions:
o Does this scenario bring unique security issues?
o Is this scenario outside the I2RS venue
4. IANA Considerations
This draft includes no request to IANA.
5. Security Considerations
This is a document about security architecture beyond the
consideration for I2RS
6. Informative References
[I-D.clarke-i2rs-traceability]
Clarke, J., Salgueiro, G., and C. Pignataro, "Interface to
the Routing System (I2RS) Traceability: Framework and
Information Model", draft-clarke-i2rs-traceability-00
(work in progress), September 2013.
[I-D.hares-i2rs-info-model-policy]
Hares, S. and W. Wu, "An Information Model for Network
policy", draft-hares-i2rs-info-model-policy-01 (work in
progress), February 2014.
[I-D.ietf-i2rs-architecture]
Atlas, A., Halpern, J., Hares, S., Ward, D., and T.
Nadeau, "An Architecture for the Interface to the Routing
System", draft-ietf-i2rs-architecture-02 (work in
progress), February 2014.
Hares, et al. Expires September 5, 2014 [Page 9]
Internet-Draft I2RS Security March 2014
[I-D.ietf-i2rs-rib-info-model]
Bahadur, N., Folkes, R., Kini, S., and J. Medved, "Routing
Information Base Info Model", draft-ietf-i2rs-rib-info-
model-02 (work in progress), February 2014.
[I-D.ji-i2rs-usecases-ccne-service]
Ji, X., Zhuang, S., Huang, T., and S. Hares, "I2RS Use
Cases for Control of Forwarding Path by Central Control
Network Element (CCNE)", draft-ji-i2rs-usecases-ccne-
service-01 (work in progress), February 2014.
[I-D.keyupate-i2rs-bgp-usecases]
Patel, K., Fernando, R., Gredler, H., Amante, S., White,
R., and S. Hares, "Use Cases for an Interface to BGP
Protocol", draft-keyupate-i2rs-bgp-usecases-01 (work in
progress), February 2014.
[I-D.white-i2rs-use-case]
White, R., Hares, S., and A. Retana, "Protocol Independent
Use Cases for an Interface to the Routing System", draft-
white-i2rs-use-case-02 (work in progress), February 2014.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC4949] Shirey, R., "Internet Security Glossary, Version 2", RFC
4949, August 2007.
Authors' Addresses
Susan Hares
Hickory Hill Consulting
7453 Hickory Hill
Saline, MI 48176
USA
Email: shares@ndzh.com
Wesley George
Time-Warner Cable
Email: wesley.george@twcable.com
Hares, et al. Expires September 5, 2014 [Page 10]
Internet-Draft I2RS Security March 2014
Scott Brim
Consultant
Email: scott.brim@gmail.com
Nancy Cam-Winget
Cisco
Email: ncamwing@cisco.com
DaCheng Zhang
Huawei
Email: zhangdacheng@huawei.com
Qin Wu
Huawei
Email: bill.wu@huawei.com
Ahmed Abro
Cisco
Email: aabro@cisco.com
Salman Asadullah
Cisco
Email: sasad@cisco.com
Joel Halpern
Ericcson
Email: joel.halpern@ericsson.com
Eric Yu
Cisco
Email: eyu@cisco.com
Hares, et al. Expires September 5, 2014 [Page 11]