{"id":2638,"date":"2022-11-02T08:51:24","date_gmt":"2022-11-02T08:51:24","guid":{"rendered":"https:\/\/iot-ngin.eu\/?p=2638"},"modified":"2022-11-02T09:03:48","modified_gmt":"2022-11-02T09:03:48","slug":"advancing-access-control-in-iot-systems","status":"publish","type":"post","link":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/","title":{"rendered":"Advancing Access Control in IoT Systems"},"content":{"rendered":"\n<p>Access control is of utmost importance in large IoT systems, with multiple services to be protected, a variety of users and different levels of access. The need for a highly efficient and transparent mechanism, that allows multiple methods of authorization and authentication as per use case, is mandatory. The <em>IoT Devices Access Control (IDAC) <\/em>module of IoT-NGIN has been implemented to handle the access to the resources of the IoT-NGIN framework, in a manner that does not imply the direct involvement of the clients or the devices per se. Through a single gateway URL, multiple services can be exposed in different paths and be protected according to the needs of the application. Users, instead of accessing the services directly, will just now need to make use of the <em>IDAC<\/em> API.<\/p>\n\n\n\n<p>The <em>IoT Device Access Control<\/em> module is implemented as a flexible Ingress Gateway enforcing chained access control methods, following different access control mechanisms which are implemented as plugins. IDAC supports a number of ways to secure resources, which can be quite application-specific, by using authentication and security plugins. Within the scope of IoT-NGIN, the following custom plugins have been developed:<\/p>\n\n\n\n<ul class=\"ul-custom\"><li>Proximity plugin: It implements ambient intelligence-based authorization to IoT devices. To support this type of application, in which the IoT ecosystem comprehends its components and environment, the system often needs to be aware of how close the requester is to the device attempted to be accessed, so that access to remote devices is forbidden. Through this plugin, the proximity of the requester to the device is checked based on an (admin-)user-defined maximum allowed threshold. Moreover, the plugin supports checking the device type for each of the supported access requests, before granting access to them.<\/li><li>OpenID Connect Authentication plugin: It allows securing applications and services, based on OpenID Connect (an extension to Oauth 2.0). This plugin allows integrating state-of-the-art solutions for the provision of Authentication Authorization Accounting (AAA) services offered through OpenID Connect by a third-party provider. For the IoT-NGIN purposes, <a href=\"https:\/\/www.keycloak.org\/\">Keycloak<\/a> has been used as the OpenID Connect Provider, but other providers could be possible, as well.<\/li><li>SSI plugin: It adds protection based on the Privacy Preserving Self Sovereign Identities (SSI) component of IoT-NGIN, presented in D5.3 <a href=\"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/09\/IoT-NGIN_D5.3_v1.pdf\">\u201cEnhancing IoT Data Privacy &amp; Trust\u201d<\/a>. Users must send two tokens along with the request in the form of headers. The first token is the authorization token and the second is a Demonstrating Proof-of-Possession (DpoP) token, i.e. a JSON Web Token (JWT) that acts as a sender constraining mechanism, needing proof that the sender is the owner of a private key to allow or deny access.<\/li><\/ul>\n\n\n\n<p>As the IoT-NGIN IDAC relies on state-of-the-art open-source tools, the development and integration of additional plugins is quite easy, which supports the scalability and sustainability of the tool.<\/p>\n\n\n\n<p>Are you interested in trying and using IoT-NGIN IDAC by yourself? <a href=\"https:\/\/gitlab.com\/h2020-iot-ngin\/enhancing_iot_tactile_contextual_sensing_actuating\/access-control\">Access the open-source code on H2020 IoT-NGIN GitLab group<\/a>!<\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Access control is of utmost importance in large IoT systems, with multiple services to be protected, a variety of users and different levels of access. The need for a highly efficient and transparent mechanism, that allows multiple methods of authorization &hellip;<\/p>\n","protected":false},"author":2,"featured_media":2639,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"footnotes":""},"categories":[17],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v17.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Advancing Access Control in IoT Systems - IOT NGIN<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Advancing Access Control in IoT Systems - IOT NGIN\" \/>\n<meta property=\"og:description\" content=\"Access control is of utmost importance in large IoT systems, with multiple services to be protected, a variety of users and different levels of access. The need for a highly efficient and transparent mechanism, that allows multiple methods of authorization &hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/\" \/>\n<meta property=\"og:site_name\" content=\"IOT NGIN\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-02T08:51:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-02T09:03:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png\" \/>\n\t<meta property=\"og:image:width\" content=\"866\" \/>\n\t<meta property=\"og:image:height\" content=\"347\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Giannis Tsichlas\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/iot-ngin.eu\/#website\",\"url\":\"https:\/\/iot-ngin.eu\/\",\"name\":\"IOT NGIN\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/iot-ngin.eu\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png\",\"contentUrl\":\"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png\",\"width\":866,\"height\":347},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#webpage\",\"url\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/\",\"name\":\"Advancing Access Control in IoT Systems - IOT NGIN\",\"isPartOf\":{\"@id\":\"https:\/\/iot-ngin.eu\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#primaryimage\"},\"datePublished\":\"2022-11-02T08:51:24+00:00\",\"dateModified\":\"2022-11-02T09:03:48+00:00\",\"author\":{\"@id\":\"https:\/\/iot-ngin.eu\/#\/schema\/person\/dac2bc3c10805a89083986685c5801d1\"},\"breadcrumb\":{\"@id\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/iot-ngin.eu\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Advancing Access Control in IoT Systems\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/iot-ngin.eu\/#\/schema\/person\/dac2bc3c10805a89083986685c5801d1\",\"name\":\"Giannis Tsichlas\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/iot-ngin.eu\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/740c19c414d2291ee24fcbe553ee2609?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/740c19c414d2291ee24fcbe553ee2609?s=96&d=mm&r=g\",\"caption\":\"Giannis Tsichlas\"},\"url\":\"https:\/\/iot-ngin.eu\/index.php\/author\/tsichlas\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Advancing Access Control in IoT Systems - IOT NGIN","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/","og_locale":"en_US","og_type":"article","og_title":"Advancing Access Control in IoT Systems - IOT NGIN","og_description":"Access control is of utmost importance in large IoT systems, with multiple services to be protected, a variety of users and different levels of access. The need for a highly efficient and transparent mechanism, that allows multiple methods of authorization &hellip;","og_url":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/","og_site_name":"IOT NGIN","article_published_time":"2022-11-02T08:51:24+00:00","article_modified_time":"2022-11-02T09:03:48+00:00","og_image":[{"width":866,"height":347,"url":"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"Giannis Tsichlas","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/iot-ngin.eu\/#website","url":"https:\/\/iot-ngin.eu\/","name":"IOT NGIN","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/iot-ngin.eu\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#primaryimage","inLanguage":"en-US","url":"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png","contentUrl":"https:\/\/iot-ngin.eu\/wp-content\/uploads\/2022\/11\/Advancing-Access_Control_in_IoT_Systems.png","width":866,"height":347},{"@type":"WebPage","@id":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#webpage","url":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/","name":"Advancing Access Control in IoT Systems - IOT NGIN","isPartOf":{"@id":"https:\/\/iot-ngin.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#primaryimage"},"datePublished":"2022-11-02T08:51:24+00:00","dateModified":"2022-11-02T09:03:48+00:00","author":{"@id":"https:\/\/iot-ngin.eu\/#\/schema\/person\/dac2bc3c10805a89083986685c5801d1"},"breadcrumb":{"@id":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/iot-ngin.eu\/index.php\/2022\/11\/02\/advancing-access-control-in-iot-systems\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/iot-ngin.eu\/"},{"@type":"ListItem","position":2,"name":"Advancing Access Control in IoT Systems"}]},{"@type":"Person","@id":"https:\/\/iot-ngin.eu\/#\/schema\/person\/dac2bc3c10805a89083986685c5801d1","name":"Giannis Tsichlas","image":{"@type":"ImageObject","@id":"https:\/\/iot-ngin.eu\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/740c19c414d2291ee24fcbe553ee2609?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/740c19c414d2291ee24fcbe553ee2609?s=96&d=mm&r=g","caption":"Giannis Tsichlas"},"url":"https:\/\/iot-ngin.eu\/index.php\/author\/tsichlas\/"}]}},"cc_featured_image_caption":{"caption_text":"","source_text":"","source_url":""},"_links":{"self":[{"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/posts\/2638"}],"collection":[{"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/comments?post=2638"}],"version-history":[{"count":4,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/posts\/2638\/revisions"}],"predecessor-version":[{"id":2644,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/posts\/2638\/revisions\/2644"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/media\/2639"}],"wp:attachment":[{"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/media?parent=2638"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/categories?post=2638"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/iot-ngin.eu\/index.php\/wp-json\/wp\/v2\/tags?post=2638"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}