idnits 2.17.1 draft-ietf-ace-usecases-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (February 05, 2015) is 3369 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Obsolete informational reference (is this intentional?): RFC 6347 (Obsoleted by RFC 9147) Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 ACE Working Group L. Seitz, Ed. 3 Internet-Draft SICS Swedish ICT AB 4 Intended status: Informational S. Gerdes, Ed. 5 Expires: August 9, 2015 Universitaet Bremen TZI 6 G. Selander 7 Ericsson 8 M. Mani 9 Itron 10 S. Kumar 11 Philips Research 12 February 05, 2015 14 ACE use cases 15 draft-ietf-ace-usecases-02 17 Abstract 19 Constrained devices are nodes with limited processing power, storage 20 space and transmission capacities. These devices in many cases do 21 not provide user interfaces and are often intended to interact 22 without human intervention. 24 This document comprises a collection of representative use cases for 25 the application of authentication and authorization in constrained 26 environments. These use cases aim at identifying authorization 27 problems that arise during the lifecylce of a constrained device and 28 are intended to provide a guideline for developing a comprehensive 29 authentication and access control solution for this class of 30 scenarios. 32 Where specific details are relevant, it is assumed that the devices 33 use the Constrained Application Protocol (CoAP) as communication 34 protocol, however most conclusions apply generally. 36 Status of This Memo 38 This Internet-Draft is submitted in full conformance with the 39 provisions of BCP 78 and BCP 79. 41 Internet-Drafts are working documents of the Internet Engineering 42 Task Force (IETF). Note that other groups may also distribute 43 working documents as Internet-Drafts. The list of current Internet- 44 Drafts is at http://datatracker.ietf.org/drafts/current/. 46 Internet-Drafts are draft documents valid for a maximum of six months 47 and may be updated, replaced, or obsoleted by other documents at any 48 time. It is inappropriate to use Internet-Drafts as reference 49 material or to cite them other than as "work in progress." 51 This Internet-Draft will expire on August 9, 2015. 53 Copyright Notice 55 Copyright (c) 2015 IETF Trust and the persons identified as the 56 document authors. All rights reserved. 58 This document is subject to BCP 78 and the IETF Trust's Legal 59 Provisions Relating to IETF Documents 60 (http://trustee.ietf.org/license-info) in effect on the date of 61 publication of this document. Please review these documents 62 carefully, as they describe your rights and restrictions with respect 63 to this document. Code Components extracted from this document must 64 include Simplified BSD License text as described in Section 4.e of 65 the Trust Legal Provisions and are provided without warranty as 66 described in the Simplified BSD License. 68 Table of Contents 70 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 71 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 72 2. Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . 4 73 2.1. Container monitoring . . . . . . . . . . . . . . . . . . 4 74 2.1.1. Bananas for Munich . . . . . . . . . . . . . . . . . 5 75 2.1.2. Authorization Problems Summary . . . . . . . . . . . 6 76 2.2. Home Automation . . . . . . . . . . . . . . . . . . . . . 6 77 2.2.1. Controlling the Smart Home Infrastructure . . . . . . 7 78 2.2.2. Seamless Authorization . . . . . . . . . . . . . . . 7 79 2.2.3. Remotely letting in a visitor . . . . . . . . . . . . 7 80 2.2.4. Authorization Problems Summary . . . . . . . . . . . 8 81 2.3. Personal Health Monitoring . . . . . . . . . . . . . . . 9 82 2.3.1. John and the heart rate monitor . . . . . . . . . . . 9 83 2.3.2. Authorization Problems Summary . . . . . . . . . . . 10 84 2.4. Building Automation . . . . . . . . . . . . . . . . . . . 11 85 2.4.1. Device Lifecycle . . . . . . . . . . . . . . . . . . 11 86 2.4.2. Authorization Problems Summary . . . . . . . . . . . 13 87 2.5. Smart Metering . . . . . . . . . . . . . . . . . . . . . 14 88 2.5.1. Drive-by metering . . . . . . . . . . . . . . . . . . 14 89 2.5.2. Meshed Topology . . . . . . . . . . . . . . . . . . . 15 90 2.5.3. Advanced Metering Infrastructure . . . . . . . . . . 15 91 2.5.4. Authorization Problems Summary . . . . . . . . . . . 16 92 2.6. Sports and Entertainment . . . . . . . . . . . . . . . . 16 93 2.6.1. Dynamically Connecting Smart Sports Equipment . . . . 17 94 2.6.2. Authorization Problems Summary . . . . . . . . . . . 17 95 2.7. Industrial Control Systems . . . . . . . . . . . . . . . 18 96 2.7.1. Oil Platform Control . . . . . . . . . . . . . . . . 18 97 2.7.2. Authorization Problems Summary . . . . . . . . . . . 18 98 3. Security Considerations . . . . . . . . . . . . . . . . . . . 19 99 3.1. Attacks . . . . . . . . . . . . . . . . . . . . . . . . . 19 100 3.2. Configuration of Access Permissions . . . . . . . . . . . 20 101 3.3. Design Considerations for Authorization Solutions . . . . 21 102 3.4. Proxies . . . . . . . . . . . . . . . . . . . . . . . . . 22 103 4. Privacy Considerations . . . . . . . . . . . . . . . . . . . 22 104 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 23 105 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23 106 7. Informative References . . . . . . . . . . . . . . . . . . . 23 107 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 23 109 1. Introduction 111 Constrained devices [RFC7228] are nodes with limited processing 112 power, storage space and transmission capacities. These devices are 113 often battery-powered and in many cases do not provide user 114 interfaces. 116 Constrained devices benefit from being interconnected using Internet 117 protocols. However, due to the devices' limitations, commonly used 118 security protocols are not always easily applicable. As the devices 119 are expected to be integrated in all aspects of everyday life, the 120 application of adequate security mechanisms is required to prevent 121 attackers from gaining control over data or functions important to 122 our lives. 124 This document comprises a collection of representative use cases for 125 the application of authentication and authorization in constrained 126 environments. These use cases aim at identifying authorization 127 problems that arise during the lifecycle of a constrained device. 128 Note that this document does not aim at collecting all possible use 129 cases. 131 We assume that the communication between the devices is based on the 132 Representational State Transfer (REST) architectural style, i.e. a 133 device acts as a server that offers resources such as sensor data and 134 actuators. The resources can be accessed by clients, sometimes 135 without human intervention (M2M). In some situations the 136 communication will happen through intermediaries (e.g. gateways, 137 proxies). 139 Where specific detail is necessary it is assumed that the devices 140 communicate using CoAP [RFC7252], although most conclusions are 141 generic. 143 1.1. Terminology 145 Readers are required to be familiar with the terms defined in 146 [RFC7228]. In addition, this document uses the following 147 terminology: 149 Resource: An item of interest. 151 Resource Server: The endpoint which hosts resources the Client wants 152 to access. Resource Servers might be located on constrained 153 devices. 155 Client: An endpoint which wants to access a resource on the Resource 156 Server. This could also be located on a constrained device. 158 Resource Owner: The subject who controls the access permissions of a 159 resource. 161 Client Owner: The subject who controls the access permissions of a 162 client. 164 Principal: A subject who is either a resource owner or a client 165 owner or both. 167 2. Use Cases 169 This section lists use cases involving constrained devices with 170 certain authorization problems to be solved. Each use case first 171 presents a general description of the application area, then one or 172 more specific use cases, and finally a summary of the authorization- 173 related problems principals need to be solved. 175 There are various reasons for assigning a function (client or server) 176 to a device, e.g. which device initiates the conversation, how do 177 devices find each other, etc. The definition of the function of a 178 device in a certain use case is not in scope of this document. 179 Readers should be aware that there might be reasons for each setting 180 and that endpoints might even have different functions at different 181 times. 183 2.1. Container monitoring 185 The ability of sensors to communicate environmental data wirelessly 186 opens up new application areas. The use of such sensor systems makes 187 it possible to continuously track and transmit specific 188 characteristics such as temperature, humidity and gas content during 189 the transportation and storage of goods. 191 The proper handling of the sensors in this scenario is not easy to 192 accomplish. They have to be associated to the appropriate pallet of 193 the respective container. Moreover, the goods and the corresponding 194 sensors belong to specific customers. 196 During the shipment to their destination the goods often pass stops 197 where they are transloaded to other means of transportation, e.g. 198 from ship transport to road transport. 200 The transportation and storage of perishable goods is especially 201 challenging since they have to be stored at a constant temperature 202 and with proper ventilation. Additionally, it is very important for 203 the vendors to be informed about irregularities in the temperature 204 and ventilation of fruits to avoid the delivery of decomposed fruits 205 to their customers. The need for a constant monitoring of perishable 206 goods has led to projects such as The Intelligent Container 207 (http://www.intelligentcontainer.com). 209 2.1.1. Bananas for Munich 211 A fruit vendor grows bananas in Costa Rica for the German market. It 212 instructs a transport company to deliver the goods via ship to 213 Rotterdam where they are picked up by trucks and transported to a 214 ripening facility. A Munich supermarket chain buys ripened bananas 215 from the fruit vendor and transports them from the ripening facility 216 to the individual markets with their own company trucks. 218 The fruit vendor's quality management wants to assure the quality of 219 their products and thus equips the banana boxes with sensors. The 220 state of the goods is monitored consistently during shipment and 221 ripening and abnormal sensor values are recorded. Additionally, the 222 sensor values are used to control the climate within the cargo 223 containers. The sensors therefore need to communicate with the 224 climate control system. Since a wrong sensor value leads to a wrong 225 temperature and thus to spoiled goods, the integrity of the sensor 226 data must be assured. The banana boxes within a container will in 227 most cases belong to the same principal. Adjacent containers might 228 contain goods and sensors of different principals. 230 The personnel that transloads the goods must be able to locate the 231 goods meant for a specific customer. However the fruit vendor does 232 not want to disclose sensor information pertaining to the condition 233 of the goods to other companies and therefore wants to assure the 234 confidentiality of this data. Thus, the transloading personnel is 235 only allowed to access logistic information. Moreover, the 236 transloading personnel is only allowed to access the data for the 237 time of the transloading. 239 Due to the high water content of the fruits, the propagation of radio 240 waves is hindered, thus often inhibiting direct communication between 241 nodes [Jedermann14]. Instead, messages are forwarded over multiple 242 hops. The sensors in the banana boxes cannot always reach the 243 Internet during the journey. 245 In the ripening facility bananas are stored until they are ready for 246 selling. The banana box sensors are used to control the ventilation 247 system and to monitor the degree of ripeness of the bananas. Ripe 248 bananas need to be identified and sold before they spoil. 250 The supermarket chain gains ownership of the banana boxes when the 251 bananas have ripened and are ready to leave the ripening facility. 253 2.1.2. Authorization Problems Summary 255 o U1.1 Principals such as the fruit vendor, the transloading 256 personnel or the container owners want to grant different access 257 rights for their resources to different parties and want to 258 control which resource servers are allowed to present data to 259 their clients. 261 o U1.2 Principals want to grant different access rights for 262 different resources on an endpoint. 264 o U1.3 The principals require the integrity of sensor data. 266 o U1.4 The principals require the confidentiality of sensor data. 268 o U1.5 The principals are not always present at the time of access 269 and cannot manually intervene in the authorization process. 271 o U1.6 The principals want to grant temporary access permissions to 272 a party. 274 o U1.7 Messages between client and resource server might need to be 275 forwarded over multiple hops. 277 o U1.8 The constrained devices might not always be able to reach the 278 Internet. 280 2.2. Home Automation 282 Automation of the home has the potential to become a big future 283 market for the Internet of Things. A home automation system connects 284 devices in a house to the Internet and thus makes them accessible and 285 manageable remotely. Such devices might control for example heating, 286 ventilation, lighting, home entertainment or home security. 288 Such a system needs to accommodate a number of regular users 289 (inhabitants, close friends, cleaning personnel) as well as a 290 heterogeneous group of dynamically varying users (visitors, 291 repairmen, delivery men). 293 As the users are not typically trained in security (or even computer 294 use), the configuration must use secure default settings, and the 295 interface must be well adapted to novice users. 297 2.2.1. Controlling the Smart Home Infrastructure 299 Alice and her husband Bob own a flat which is equipped with home 300 automation devices such as HVAC and shutter control, and they have a 301 motion sensor in the corridor which controls the light bulbs there. 303 Alice and Bob can control the shutters and the temperature in each 304 room using either wall-mounted touch panels or an internet connected 305 device (e.g. a smartphone). Since Alice and Bob both have a full- 306 time job, they want to be able to change settings remotely, e.g. turn 307 up the heating on a cold day if they will be home earlier than 308 expected. 310 The couple does not want people in radio range of their devices, e.g. 311 their neighbors, to be able to control them without authorization. 312 Moreover, they don't want burglars to be able to deduce behavioral 313 patterns from eavesdropping on the network. 315 2.2.2. Seamless Authorization 317 Alice buys a new light bulb for the corridor and integrates it into 318 the home network, i.e. makes resources known to other devices in the 319 network. Alice makes sure that the new light bulb and her other 320 devices in the network get to know the authorization policies for the 321 new device. Bob is not at home, but Alice wants him to be able to 322 control the new device with his devices (e.g. his smartphone) without 323 the need for additional administration effort. She provides the 324 necessary configurations for that. 326 2.2.3. Remotely letting in a visitor 328 Alice and Bob have equipped their home with automated connected door- 329 locks and an alarm system at the door and the windows. The couple 330 can control this system remotely. 332 Alice and Bob have invited Alice's parents over for dinner, but are 333 stuck in traffic and cannot arrive in time, while Alice's parents who 334 use the subway will arrive punctually. Alice calls her parents and 335 offers to let them in remotely, so they can make themselves 336 comfortable while waiting. Then Alice sets temporary permissions 337 that allow them to open the door, and shut down the alarm. She wants 338 these permissions to be only valid for the evening since she does not 339 like it if her parents are able to enter the house as they see fit. 341 When Alice's parents arrive at Alice's and Bob's home, they use their 342 smartphone to communicate with the door-lock and alarm system. 344 2.2.4. Authorization Problems Summary 346 o U2.1 A home owner (Alice and Bob in the example above) wants to 347 spontaneously provision authorization means to visitors. 349 o U2.2 A home owner wants to spontaneously change the home's access 350 control policies. 352 o U2.3 A home owner wants to apply different access rights for 353 different users. 355 o U2.4 The home owners want to grant temporary access permissions to 356 a party. 358 o U2.5 The smart home devices need to be able to communicate with 359 different control devices (e.g. wall-mounted touch panels, 360 smartphones, electronic key fobs). 362 o U2.6 The home owner wants to be able to configure authorization 363 policies remotely. 365 o U2.7 Authorized Users want to be able to obtain access with little 366 effort. 368 o U2.8 The owners of the automated home want to prevent unauthorized 369 entities from being able to deduce behavioral profiles from 370 devices in the home network. 372 o U2.9 Usability is particularly important in this scenario since 373 the necessary authorization related tasks in the lifecycle of the 374 device (commissioning, operation, maintenance and decommissioning) 375 likely need to be performed by the home owners who in most cases 376 have little knowledge of security. 378 o U2.10 Home Owners want their devices to seamlessly (and in some 379 cases even unnoticeably) fulfill their purpose. The 380 administration effort needs to be kept at a minimum. 382 2.3. Personal Health Monitoring 384 The use of wearable health monitoring technology is expected to grow 385 strongly, as a multitude of novel devices are developed and marketed. 386 The need for open industry standards to ensure interoperability 387 between products has lead to initiatives such as Continua Alliance 388 (continuaalliance.org) and Personal Connected Health Alliance 389 (pchalliance.org). Personal health devices are typically battery 390 driven, and located physically on the user. They monitor some bodily 391 function, such as e.g. temperature, blood pressure, or pulse. They 392 are connected to the Internet through an intermediary base-station, 393 using wireless technologies. Through this connection they report the 394 monitored data to some entity, which may either be the user herself, 395 or some medical personnel in charge of the user. 397 Medical data has always been considered as very sensitive, and 398 therefore requires good protection against unauthorized disclosure. 399 A frequent, conflicting requirement is the capability for medical 400 personnel to gain emergency access, even if no specific access rights 401 exist. As a result, the importance of secure audit logs increases in 402 such scenarios. 404 Since the users are not typically trained in security (or even 405 computer use), the configuration must use secure default settings, 406 and the interface must be well adapted to novice users. Parts of the 407 system must operate with minimal maintenance. Especially frequent 408 changes of battery are unacceptable. 410 2.3.1. John and the heart rate monitor 412 John has a heart condition, that can result in sudden cardiac 413 arrests. He therefore uses a device called HeartGuard that monitors 414 his heart rate and his position. In case of a cardiac arrest it 415 automatically sends an alarm to an emergency service, transmitting 416 John's current location. This requires the device to be close to a 417 wireless access point, in order to be able to get an Internet 418 connection (e.g. John's smartphone). 420 The device includes some authentication mechanism, in order to 421 prevent other persons who get physical access to it from acting as 422 the owner and messing up the access control and security settings. 424 John can configure additional persons that get notified in an 425 emergency, for example his daughter Jill. Furthermore the device 426 stores data on John's heart rate, which can later be accessed by a 427 physician to assess the condition of John's heart. 429 However John is a privacy conscious person, and is worried that Jill 430 might use HeartGuard to monitor his location while there is no 431 emergency. Furthermore he doesn't want his health insurance to get 432 access to the HeartGuard data, or even to the fact that he is wearing 433 a HeartGuard, since they might refuse to renew his insurance if they 434 decided he was too big a risk for them. 436 Finally John, while being comfortable with modern technology, and 437 able to operate it reasonably well, is not trained in computer 438 security. He therefore needs an interface for the configuration of 439 the HeartGuard security that is easy to understand and use. If John 440 does not understand the meaning of a setting, he tends to leave it 441 alone, assuming that the manufacturer has initialized the device to 442 secure settings. 444 NOTE: Monitoring of some state parameter (e.g. an alarm button) and 445 the position of a person also fits well into an elderly care service. 446 This is particularly useful for people suffering from dementia, where 447 the relatives or caregivers need to be notified of the whereabouts of 448 the person under certain conditions. In this case it is not the 449 patient that decides about access. 451 2.3.2. Authorization Problems Summary 453 o U3.1 A principal, such as the owner of a health monitoring device, 454 wants to pre-configure access rights to specific data for persons 455 or groups, in the context of an emergency. 457 o U3.2 A principal wants to selectively allow different persons or 458 groups to access medical data. 460 o U3.3 The security measures could affect battery lifetime of the 461 devices and should changes of battery are highly inconvenient. 463 o U3.4 Devices are often used with default access control settings. 465 o U3.5 Principals are often not trained in computer use and 466 especially computer security. 468 o U3.6 Security mechanisms themselves could provide opportunities 469 for denial of service attacks on the device. 471 o U3.7 The device provides a service that can be fatal for the 472 principal if it fails. Accordingly, the principal wants a 473 security mechanism to provide a high level of security. 475 2.4. Building Automation 477 Buildings for commercial use such as shopping malls or office 478 buildings nowadays are equipped increasingly with semi-automatic 479 components to enhance the overall living quality and to save energy 480 where possible. This includes for example heating, ventilation and 481 air condition (HVAC) as well as illumination and security systems 482 such as fire alarms. 484 Different areas of these buildings are often exclusively leased to 485 different companies. However they also share some of the common 486 areas of the building. Accordingly, a company must be able to 487 control the light and HVAC system of its own part of the building and 488 must not have access to control rooms that belong to other companies. 490 Some parts of the building automation system such as entrance 491 illumination and fire alarm systems are controlled either by all 492 parties together or by a service company. 494 2.4.1. Device Lifecycle 496 2.4.1.1. Installation and Commissioning 498 A building is hired out to different companies for office space. 499 This building features various automated systems, such as a fire 500 alarm system, which is triggered by several smoke detectors which are 501 spread out across the building. It also has automated HVAC, lighting 502 and physical access control systems. 504 A vacant area of the building has been recently leased to company A. 505 Before moving into its new office, Company A wishes to replace the 506 lighting with a more energy efficient and a better light quality 507 luminaries. They hire an installation and commissioning company C to 508 redo the illumination. Company C is instructed to integrate the new 509 lighting devices, which may be from multiple manufacturers, into the 510 existing lighting infrastructure of the building which includes 511 presence sensors, switches, controllers etc. 513 Company C gets the necessary authorization from the service company 514 to interact with the existing Building and Lighting Management System 515 (BLMS). To prevent disturbance to other occupants of the building, 516 Company C is provided authorization to perform the commissioning only 517 during non-office hours and only to modify configuration on devices 518 belonging to the domain of Company A's space. After installation 519 (wiring) of the new lighting devices, the commissioner adds the 520 devices into the company A's lighting domain. 522 Once the devices are in the correct domain, the commissioner 523 authorizes the interaction rules between the new lighting devices and 524 existing devices like presence sensors. For this, the commissioner 525 creates the authorization rules on the BLMS which define which lights 526 form a group and which sensors /switches/controllers are allowed to 527 control which groups. These authorization rules may be context based 528 like time of the day (office or non-office hours) or location of the 529 handheld lighting controller etc. 531 2.4.1.2. Operational 533 Company A's staff move into the newly furnished office space. Most 534 lighting is controlled by presence sensors which control the lighting 535 of specific group of lights based on the authorization rules in the 536 BLMS. Additionally employees are allowed to manually override the 537 lighting brightness and color in their office by using the switches 538 or handheld controllers. Such changes are allowed only if the 539 authorization rules exist in the BLMS. For example lighting in the 540 corridors may not be manually adjustable. 542 At the end of the day, lighting is dimmed down or switched off if no 543 occupancy is detected even if manually overridden during the day. 545 On a later date company B also moves into the same building, and 546 shares some of the common spaces with company A. On a really hot day 547 James who works for company A turns on the air condition in his 548 office. Lucy who works for company B wants to make tea using an 549 electric kettle. After she turned it on she goes outside to talk to 550 a colleague until the water is boiling. Unfortunately, her kettle 551 has a malfunction which causes overheating and results in a 552 smoldering fire of the kettle's plastic case. 554 Due to the smoke coming from the kettle the fire alarm is triggered. 555 Alarm sirens throughout the building are switched on simultaneously 556 (using a broadcastor multicast) to alert the staff of both companies. 557 Additionally, the ventilation system of the whole building is closed 558 off to prevent the smoke from spreading and to withdraw oxygen from 559 the fire. The smoke cannot get into James' office although he turned 560 on his air condition because the fire alarm overrides the manual 561 setting by sending commands (broadcast or multicast) to switch off 562 all the air conditioning. 564 The fire department is notified of the fire automatically and arrives 565 within a short time. After inspecting the damage and extinguishing 566 the smoldering fire a fire fighter resets the fire alarm because only 567 the fire department is authorized to do that. 569 2.4.1.3. Maintenance 571 Company A's staff are annoyed that the lights switch off too often in 572 their rooms if they work silently in front of their computer. 573 Company A notifies the commissioning Company C about the issue and 574 asks them to increase the delay before lights switch off. 576 Company C again gets the necessary authorization from the service 577 company to interact with the BLMS. The commissioner's tool gets the 578 necessary authorization from BMLS to send a configuration change to 579 all lighting devices in Company A's offices to increase their delay 580 before they switch off. 582 2.4.1.4. Decommissioning 584 Company A has noticed that the handheld controllers are often 585 misplaced and hard to find when needed. So most of the time staff 586 use the existing wall switches for manual control. Company A decides 587 it would be better to completely remove handheld controllers and asks 588 Company C to decommission them from the lighting system. 590 Company C again gets the necessary authorization from the service 591 company to interact with the BLMS. The commissioner now deletes any 592 rules that allowed handheld controllers authorization to control the 593 lighting. Additionally the commissioner instructs the BLMS to push 594 these new rules to prevent cached rules at the end devices from being 595 used. 597 2.4.2. Authorization Problems Summary 599 o U4.1 Principals want to be able to add a new device to their 600 administrative domain (commissioning). 602 o U4.2 Principals want to be able to integrate a device that 603 formerly belonged to a different administrative domain to their 604 own administrative domain (handover). 606 o U4.3 Principal want to be able to remove a device from their 607 administrative domain (decomissioning). 609 o U4.4 Principals want to be able to delegate selected 610 administration tasks for their devices to others. 612 o U4.5 The principal wants to be able to define context-based 613 Authorization rules. 615 o U4.6 The principal wants to be able to revoke granted permissions 616 and delegations. 618 o U4.7 The principal wants to allow authorized entities to send data 619 to their endpoints (default deny). 621 o U4.8 The principal wants to be able to authorize a device to 622 control several devices at the same time using a multicast 623 protocol. 625 o U4.9 Principals want to be able to interconnect their own 626 subsystems with those from a different operational domain while 627 keeping the control over the authorizations (e.g. granting and 628 revoking permissions) for their endpoints and devices. 630 2.5. Smart Metering 632 Automated measuring of customer consumption is an established 633 technology for electricity, water, and gas providers. Increasingly 634 these systems also feature networking capability to allow for remote 635 management. Such systems are in use for commercial, industrial and 636 residential customers and require a certain level of security, in 637 order to avoid economic loss to the providers, vulnerability of the 638 distribution system, as well as disruption of services for the 639 customers. 641 The smart metering equipment for gas and water solutions is battery 642 driven and communication should be used sparingly due to battery 643 consumption. Therefore the types of meters sleep most of the time, 644 and only wake up every minute/hour to check for incoming 645 instructions. Furthermore they wake up a few times a day (based on 646 their configuration) to upload their measured metering data. 648 Different networking topologies exist for smart metering solutions. 649 Based on environment, regulatory rules and expected cost, one or a 650 mixture of these topologies may be deployed to collect the metering 651 information. Drive-By metering is one of the most current solutions 652 deployed for collection of gas and water meters. 654 2.5.1. Drive-by metering 656 A service operator offers smart metering infrastructures and related 657 services to various utility companies. Among these is a water 658 provider, who in turn supplies several residential complexes in a 659 city. The smart meters are installed in the end customer's homes to 660 measure water consumption and thus generate billing data for the 661 utility company. The meters do so by sending data to a base station. 662 Several base stations are installed around the city to collect the 663 metering data. However in the denser urban areas, the base stations 664 would have to be installed very close to the meters. This would 665 require a high number of base stations and expose this more expensive 666 equipment to manipulation or sabotage. The service operator has 667 therefore chosen another approach, which is to drive around with a 668 mobile base-station and let the meters connect to that in regular 669 intervals in order to gather metering data. 671 2.5.2. Meshed Topology 673 In another deployment, the water meters are installed in a building 674 that already has power meters installed, the latter are mains 675 powered, and are therefore not subject to the same power saving 676 restrictions. The water meters can therefore use the power meters as 677 proxies, in order to achieve better connectivity. This requires the 678 security measures on the water meters to work through intermediaries. 680 2.5.3. Advanced Metering Infrastructure 682 A utility company is updating its old utility distribution network 683 with advanced meters and new communication systems, known as an 684 Advanced Metering Infrastructure (AMI). AMI refers to a system that 685 measures, collects and analyzes usage, and interacts with metering 686 devices such as electricity meters, gas meters, heat meters, and 687 water meters, through various communication media either on request 688 (on-demand) or on pre-defined schedules. Based on this technology, 689 new services make it possible for consumers to control their utility 690 consumption and reduce costs by supporting new tariff models from 691 utility companies, and more accurate and timely billing. 693 The technical solution is based on levels of data aggregation between 694 smart meters located at the consumer premises and the Meter Data 695 Management (MDM) system located at the utility company. Two possible 696 intermediate levels are: 698 o Head-End System (HES) which is hardware and software that receives 699 the stream of meter data and exposes an interface to the MDM. 701 o Data Collection (DC) units located in a local network 702 communicating with a number of smart meters and with a backhaul 703 interface communicating with the HES, e.g. using cellular 704 communication. 706 For reasons of efficiency and cost end-to-end connectivity is not 707 always feasible, so metering data is stored in batches in DC for some 708 time before being forwarded to the HES, and in turn accessed by the 709 MDM. The HES and the DC units may be operated by a third party 710 service operator on behalf of the utility company. One 711 responsibility of the service operator is to make sure that meter 712 readings are performed and delivered to the HES. An example of a 713 Service Level Agreement between the service operator and the utility 714 company is e.g. "at least 95 % of the meters have readings recorded 715 during the last 72 hours". 717 2.5.4. Authorization Problems Summary 719 o U5.1 Devices are installed in hostile environments where they are 720 physically accessible by attackers. Principals want to make sure 721 that an attacker cannot use a captured device to attack other 722 parts of their infrastructure. 724 o U5.2 Principals want to restrict which entities are allowed to 725 send data to their resources and endpoints and thus ensure the 726 integrity of the data on their endpoints. 728 o U5.3 The principal wants to control which entities are allowed to 729 read data on their resources and protect such data in transfer. 731 o U5.4 The devices may have intermittent Internet connectivity. 733 o U5.5 The principal is not always present at the time of access and 734 cannot manually intervene in the authorization process. 736 o U5.6 When authorization policies are updated it is impossible, or 737 at least very inefficient to contact all affected endpoints 738 directly. 740 o U5.7 Messages between a client and a resource server may need to 741 be stored and forwarded over multiple nodes. 743 2.6. Sports and Entertainment 745 In the area of leisure time activities, applications can benefit from 746 the small size and weight of constrained devices. Sensors and 747 actuators with various functionalities can be integrated into fitness 748 equipment, games and even clothes. Principals can carry their 749 devices around with them at all times. 751 Usability is especially important in this area since principals will 752 often want to spontaneously interconnect their devices with others. 753 Therefore the configuration of access permissions must be simple and 754 fast and not require much effort at the time of access (preferably 755 none at all). 757 The required level of security will in most cases be low since 758 security breaches will likely have less severe consequences. The 759 continuous monitoring of data might however enable an attacker to 760 create behavioral or movement profiles. Moreover, the aggregation of 761 data can seriously increase the impact on the privacy of principals. 763 2.6.1. Dynamically Connecting Smart Sports Equipment 765 Jody is a an enthusiastic runner. To keep track of her training 766 progress, she has smart running shoes that measure the pressure at 767 various points beneath her feet to count her steps, detect 768 irregularities in her stride and help her to improve her posture and 769 running style. On a sunny afternoon, she goes to the Finnbahn track 770 near her home to work out. She meets her friend Lynn who shows her 771 the smart fitness watch she bought a few days ago. The watch can 772 measure the wearer's pulse, show speed and distance, and keep track 773 of the configured training program. The girls detect that the watch 774 can be connected with Jody's shoes and then can additionally display 775 the information the shoes provide. 777 Jody asks Lynn to let her try the watch and lend it to her for the 778 afternoon. Lynn agrees but doesn't want Jody to access her training 779 plan. She configures the access policies for the watch so that 780 Jody's shoes are allowed to access the display and measuring features 781 but cannot read or add training data. Jody's shoes connect to Lynn's 782 watch after only a press of a button because Jody already configured 783 access rights for devices that belong to Lynn a while ago. 785 After an hour, Jody gives the watch back and both girls terminate the 786 connection between their devices. 788 2.6.2. Authorization Problems Summary 790 o U6.1 The principal wants to be able to grant access rights 791 dynamically when needed. 793 o U6.2 The principle wants the configuration of access rights to 794 work with very little effort. 796 o U6.3 The principal wants to be able to preconfigure access 797 policies that grant certain access permissions to endpoints with 798 certain attributes (e.g. endpoints of a certain user) without 799 additional configuration effort at the time of access. 801 o U6.4 Principals wants to protect the confidentiality of their data 802 for privacy reasons. 804 o U6.5 Devices might not have an Internet connection at the time of 805 access. 807 2.7. Industrial Control Systems 809 Industrial control systems (ICS) and especially supervisory control 810 and data acquisition systems (SCADA) use a multitude of sensors and 811 actuators in order to monitor and control industrial processes in the 812 physical world. Example processes include manufacturing, power 813 generation, and refining of raw materials. 815 Since the advent of the Stuxnet worm it has become obvious to the 816 general public how vulnerable this kind of systems are, especially 817 when connected to the Internet. The severity of these 818 vulnerabilities are exacerbated by the fact that many ICS are used to 819 control critical public infrastructure, such as power, water 820 treatment of traffic control. Nevertheless the economical advantages 821 of connecting such systems to the Internet can be significant if 822 appropriate security measures are put in place. 824 2.7.1. Oil Platform Control 826 An oil platform uses an industrical control system to monitor data 827 and control equipment. The purpose of this system is to gather and 828 process data from a large number of sensors, and control actuators 829 such as valves and switches to steer the oil extraction process on 830 the platform. Raw data, alarms, reports and other information are 831 also available to the operators, who can intervene with manual 832 commands. Many of the sensors are connected to the controlling units 833 by direct wire, but the operator is slowly replacing these units by 834 wireless ones, since this makes maintenance easier. 836 The controlling units are connected to the Internet, to allow for 837 remote administration, since it is expensive and inconvenient to fly 838 in a technician to the platform. 840 The main interest of the operator is to ensure the integrity of 841 control messages and sensor readings. The access to some resources 842 needs to be restricted to certain clients, e.g. the operator wants 843 wireless actuators only to accept commands by authorized control 844 units. 846 The owner of the platform also wants to collect auditing information 847 for liability reasons. 849 2.7.2. Authorization Problems Summary 851 o U7.1 The principal wants to ensure that only authorized clients 852 can read data from sensors and sent commands to actuators. 854 o U7.2 The principal wants to ensure that data coming from sensors 855 and commands sent to actuators are authentic. 857 o U7.3 Some devices do not have direct Internet connection. 859 o U7.4 Some devices have wired connection while others use wireless. 861 o U7.5 The execution of unauthorized commands in an ICS can lead to 862 significant financial damage, and threaten the availability of 863 critical infrastructure services. Accordingly, the principal 864 wants a security solution that provides a very high level of 865 security. 867 3. Security Considerations 869 As the use cases listed in this document demonstrate, constrained 870 devices are used in various application areas. The appeal of these 871 devices is that they are small and inexpensive. That makes it easy 872 to integrate them into many aspects of everyday life. Therefore, the 873 devices will be entrusted with vast amounts of valuable data or even 874 control functions, that need to be protected from unauthorized 875 access. Moreover, the aggregation of data must be considered: 876 attackers might not only collect data from a single device but from 877 many devices, thus increasing the potential damage. 879 Not only the data on the constrained devices themselves is 880 threatened, the devices might also be abused as an intrusion point to 881 infiltrate a network. Once an attacker gained control over the 882 device, it can be used to attack other devices as well. Due to their 883 limited capabilities, constrained devices appear as the weakest link 884 in the network and hence pose an attractive target for attackers. 886 This section summarizes the security problems highlighted by the use 887 cases above and provides guidelines for the design of protocols for 888 authentication and authorization in constrained RESTful environments. 890 3.1. Attacks 892 This document lists security problems that principals of constrained 893 devices want to solve. Further analysis of attack scenarios is not 894 in scope of the document. However, there are attacks that must be 895 considered by solution developers. 897 Because of the expected large number of devices and their ubiquity, 898 constrained devices increase the danger from Pervasive Monitoring 899 [RFC7258] attacks. 901 As some of the use cases indicate, constrained devices may be 902 installed in hostile environments where they are physically 903 accessible (see Section 2.5). Protection from physical attacks is 904 not in the scope of ACE, but should be kept in mind by developers of 905 authorization solutions. 907 Denial of service (DoS) attacks threaten the availability of services 908 a device provides. E.g., an attacker can induce a device to perform 909 steps of a heavy weight security protocol (e.g. Datagram Transport 910 Layer Security (DTLS) [RFC6347]) before authentication and 911 authorization can be verified, thus exhausting the device's system 912 resources. This leads to a temporary or - e.g. if the batteries are 913 drained - permanent failure of the service. For some services of 914 constrained devices, availability is especially important (see 915 Section 2.3). Because of their limitations, constrained devices are 916 especially vulnerable to denial of service attacks. Solution 917 designers must be particularly careful to consider these limitations 918 in every part of the protocol. This includes: 920 o Battery usage 922 o Number of message exchanges required by security measures 924 o Size of data that is transmitted (e.g. authentication and access 925 control data) 927 o Size of code required to run the protocol 929 o Size of RAM memory and stack required to run the protocol 931 Another category of attacks that needs to be considered by solution 932 developers is session interception and hijacking. 934 3.2. Configuration of Access Permissions 936 o The access control policies of the principals need to be enforced 937 (all use cases): The information that is needed to implement the 938 access control policies of the Principals need to be provided to 939 the device that enforces the authorization and applied to every 940 incoming request. 942 o A single resource might have different access rights for different 943 requesting entities (all use cases). 945 Rationale: In some cases different types of users need different 946 access rights, as opposed to a binary approach where the same 947 access permissions are granted to all authenticated users. 949 o A device might host several resources where each resource has its 950 own access control policy (all use cases). 952 o The device that makes the policy decisions should be able to 953 evaluate context-based permissions such as location or time of 954 access (see e.g. Section 2.2, Section 2.3, Section 2.4). Access 955 may depend on local conditions, e.g. access to health data in an 956 emergency. The device that makes the policy decisions should be 957 able to take such conditions into account. 959 3.3. Design Considerations for Authorization Solutions 961 o Devices need to be enabled to enforce the principal's 962 authorization policies without the principal's intervention at the 963 time of the access request (see e.g. Section 2.1, Section 2.2, 964 Section 2.4, Section 2.5). 966 o Authorization solutions need to consider that constrained devices 967 might not have internet access at the time of the access request 968 (see e.g. Section 2.1, Section 2.3, Section 2.5, Section 2.6). 970 o It should be possible to update access control policies without 971 manually re-provisioning individual devices (see e.g. 972 Section 2.2, Section 2.3, Section 2.5, Section 2.6). 974 Rationale: Peers can change rapidly which makes manual re- 975 provisioning unreasonably expensive. 977 o Principals might define authorization policies for a large number 978 of devices that might only have intermittent connectivity. 979 Distributing policy updates to every device for every update might 980 not be a feasible solution (see e.g. Section 2.5). 982 o It must be possible to dynamically revoke authorizations (see e.g. 983 Section 2.4). 985 o The authentication and access control protocol can put undue 986 burden on the constrained system resources of a device 987 participating in the protocol. An authorization solutions must 988 take the limitations of the constrained devices into account (all 989 use cases, see also Section 3.1). 991 o Secure default settings are needed for the initial state of the 992 authentication and authorization protocols (all use cases). 994 Rationale: Many attacks exploit insecure default settings, and 995 experience shows that default settings are frequently left 996 unchanged by the end users. 998 o Access to resources on other devices should only be permitted if a 999 rule exists that explicitly allows this access (default deny) (see 1000 e.g. Section 2.4). 1002 o Usability is important for all use cases. The configuration of 1003 authorization policies as well as the gaining access to devices 1004 must be simple for the users of the devices. Special care needs 1005 to be taken for home scenarios where access control policies have 1006 to be configured by users that are typically not trained in 1007 security (see Section 2.2, Section 2.3, Section 2.6). 1009 3.4. Proxies 1011 In some cases, the traffic between Client and Resource Server might 1012 go through intermediary nodes (e.g. proxies, gateways). This might 1013 affect the function or the security model of authentication and 1014 access control protocols e.g. end-to-end security between Client and 1015 Resource Server with DTLS might not be possible (see Section 2.5). 1017 4. Privacy Considerations 1019 Many of the devices that are in focus of this document register data 1020 from the physical world (sensors) or affect processes in the physical 1021 world (actuators), which may involve data or processes belonging to 1022 individuals. To make matters worse the sensor data may be recorded 1023 continuously thus allowing to gather significant information about an 1024 individual subject through the sensor readings. Therefore privacy 1025 protection is especially important, and Authentication and Access 1026 control are important tools for this, since they make it possible to 1027 control who gets access to private data. 1029 Privacy protection can also be weighted in when evaluating the need 1030 for end-to-end confidentiality, since otherwise intermediary nodes 1031 will learn the content of potentially sensitive messages sent between 1032 a client and a resource server and thereby endanger the privacy of 1033 the individual that may be subject of this data. 1035 In some cases, even the possession of a certain type of device can be 1036 confidential, e.g. principals might not want to others to know that 1037 they are wearing a certain medical device (see Section 2.3). 1039 The personal health monitoring use case (see Section 2.3) indicates 1040 the need for secure audit logs which impose specific requirements on 1041 a solution. Auditing is not in the scope of ACE. However, if an 1042 authorization solution provides means for audit logs, it must 1043 consider the impact of logged data for the privacy of the principal 1044 and other parties involved. Suitable measures for protecting and 1045 purging the logs must be taken during operation, maintenance and 1046 decommissioning of the device. 1048 5. Acknowledgments 1050 The authors would like to thank Olaf Bergmann, Sumit Singhal, John 1051 Mattson, Mohit Sethi, Carsten Bormann, Martin Murillo, Corinna 1052 Schmitt, Hannes Tschofenig, Erik Wahlstroem, and Andreas Backman for 1053 reviewing and/or contributing to the document. Also, thanks to 1054 Markus Becker, Thomas Poetsch and Koojana Kuladinithi for their input 1055 on the container monitoring use case. 1057 Ludwig Seitz and Goeran Selander worked on this document as part of 1058 EIT-ICT Labs activity PST-14056. 1060 6. IANA Considerations 1062 This document has no IANA actions. 1064 7. Informative References 1066 [Jedermann14] 1067 Jedermann, R., Poetsch, T., and C. LLoyd, "Communication 1068 techniques and challenges for wireless food quality 1069 monitoring", Philosophical Transactions of the Royal 1070 Society A Mathematical, Physical and Engineering Sciences, 1071 May 2014. 1073 [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer 1074 Security Version 1.2", RFC 6347, January 2012. 1076 [RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for 1077 Constrained-Node Networks", RFC 7228, May 2014. 1079 [RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained 1080 Application Protocol (CoAP)", RFC 7252, June 2014. 1082 [RFC7258] Farrell, S. and H. Tschofenig, "Pervasive Monitoring Is an 1083 Attack", BCP 188, RFC 7258, May 2014. 1085 Authors' Addresses 1086 Ludwig Seitz (editor) 1087 SICS Swedish ICT AB 1088 Scheelevaegen 17 1089 Lund 223 70 1090 Sweden 1092 Email: ludwig@sics.se 1094 Stefanie Gerdes (editor) 1095 Universitaet Bremen TZI 1096 Postfach 330440 1097 Bremen 28359 1098 Germany 1100 Phone: +49-421-218-63906 1101 Email: gerdes@tzi.org 1103 Goeran Selander 1104 Ericsson 1105 Faroegatan 6 1106 Kista 164 80 1107 Sweden 1109 Email: goran.selander@ericsson.com 1111 Mehdi Mani 1112 Itron 1113 52, rue Camille Desmoulins 1114 Issy-les-Moulineaux 92130 1115 France 1117 Email: Mehdi.Mani@itron.com 1119 Sandeep S. Kumar 1120 Philips Research 1121 High Tech Campus 1122 Eindhoven 5656 AA 1123 The Netherlands 1125 Email: sandeep.kumar@philips.com