<!DOCTYPE html>
<html lang="dev" class="js csstransforms3d">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="generator" content="Hugo 0.54.0" />
    <meta name="description" content="A set of micro-services for connecting millions of devices.">
<meta name="author" content="The Eclipse Hono Project">

    <link rel="apple-touch-icon" sizes="180x180" href="/hono/docs/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="48x48" href="/hono/docs/favicon/favicon-48x48.png">
<link rel="icon" type="image/png" sizes="32x32" href="/hono/docs/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/hono/docs/favicon/favicon-16x16.png">
<link rel="manifest" href="/hono/docs/favicon/site.webmanifest">
<link rel="mask-icon" href="/hono/docs/favicon/safari-pinned-tab.svg" color="#5bbad5">
<link rel="shortcut icon" href="/hono/docs/favicon/favicon.ico">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-config" content="/hono/docs/favicon/browserconfig.xml">
<meta name="theme-color" content="#ffffff">

    <title>File Based Device Registry Configuration :: Eclipse Hono&trade; Vers.: dev</title>

    
    <link href="/hono/docs/css/nucleus.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/fontawesome-all.min.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/hybrid.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/featherlight.min.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/perfect-scrollbar.min.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/auto-complete.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/theme.css?1603502617" rel="stylesheet">
    <link href="/hono/docs/css/hugo-theme.css?1603502617" rel="stylesheet">
    
      <link href="/hono/docs/css/theme-hono.css?1603502617" rel="stylesheet">
    

    <script src="/hono/docs/js/jquery-2.x.min.js?1603502617"></script>

    <style type="text/css">
      :root #header + #content > #left > #rlblock_left{
          display:none !important;
      }
      
        :not(pre) > code + span.copy-to-clipboard {
            display: none;
        }
      
    </style>
    

<link rel="stylesheet" href="https://www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css">
<link rel="stylesheet" href='/hono/docs/css/hono.css'>


<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@EclipseHono">
<meta name="twitter:title" content="File Based Device Registry Configuration :: Eclipse Hono&amp;trade; Vers.: dev">
<meta name="twitter:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png">
<meta name="twitter:description" content="A set of micro-services for connecting millions of devices.">


<meta property="og:title" content="File Based Device Registry Configuration :: Eclipse Hono&amp;trade; Vers.: dev" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://www.eclipse.org/hono/docs/dev/admin-guide/file-based-device-registry-config//" />
<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />

  </head>
  <body class="" data-url="/hono/docs/dev/admin-guide/file-based-device-registry-config/">
    <nav id="sidebar" class="">



  <div id="header-wrapper">
    <div id="header">
      <a href="https://www.eclipse.org/hono/">
    <img src="/hono/docs/images/HONO-Logo_Bild-Wort_quer-w-310x120px.svg" alt="Hono logo" class="logo-img">
</a>

    </div>
    
        <div class="searchbox">
    <label for="search-by"><i class="fas fa-search"></i></label>
    <input data-search-input id="search-by" type="search" placeholder="Search...">
    <span data-search-clear=""><i class="fas fa-times"></i></span>
</div>

<script type="text/javascript" src="/hono/docs/js/lunr.min.js?1603502617"></script>
<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1603502617"></script>
<script type="text/javascript">
    
        var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/dev";
    
</script>
<script type="text/javascript" src="/hono/docs/js/search.js?1603502617"></script>

    
  </div>

    <div class="highlightable">
    <ul class="topics">

        
          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/concepts/" title="Concepts" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/concepts/">
          <i class="far fa-lightbulb"></i> Concepts
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/device-identity/" title="Device Identity" class="dd-item ">
        <a href="/hono/docs/dev/concepts/device-identity/">
        Device Identity
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
        <a href="/hono/docs/dev/concepts/tenancy/">
        Multi-Tenancy
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/device-provisioning/" title="Device Provisioning" class="dd-item ">
        <a href="/hono/docs/dev/concepts/device-provisioning/">
        Device Provisioning
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/connecting-devices/" title="Connecting Devices" class="dd-item ">
        <a href="/hono/docs/dev/concepts/connecting-devices/">
        Connecting Devices
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
        <a href="/hono/docs/dev/concepts/device-notifications/">
        Device Notifications
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/command-and-control/" title="Command &amp; Control" class="dd-item ">
        <a href="/hono/docs/dev/concepts/command-and-control/">
        Command &amp; Control
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/resource-limits/" title="Resource limits" class="dd-item ">
        <a href="/hono/docs/dev/concepts/resource-limits/">
        Resource limits
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/concepts/connection-events/" title="Connection Events" class="dd-item ">
        <a href="/hono/docs/dev/concepts/connection-events/">
        Connection Events
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/user-guide/" title="User Guide" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/user-guide/">
          <i class="fas fa-book-reader"></i> User Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/mongodb-based-device-registry/" title="MongoDB Based Device Registry" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/mongodb-based-device-registry/">
        MongoDB Based Device Registry
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/file-based-device-registry/" title="File Based Device Registry" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/file-based-device-registry/">
        File Based Device Registry
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/http-adapter/">
        HTTP Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/mqtt-adapter/">
        MQTT Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/amqp-adapter/">
        AMQP Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/coap-adapter/" title="CoAP Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/coap-adapter/">
        CoAP Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/kura-adapter/">
        Kura Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/sigfox-adapter/">
        Sigfox Adapter
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
        <a href="/hono/docs/dev/user-guide/jmeter_load_tests/">
        Load Tests with JMeter
        
        </a>
    </li>
     
  
 

            
          
             
            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/admin-guide/" title="Admin Guide" class="dd-item 
        parent
        
        
        ">
      <a href="/hono/docs/dev/admin-guide/">
          <i class="fas fa-sliders-h"></i> Admin Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/common-config/">
        Common Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/auth-server-config/">
        Auth Server Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/jdbc-device-registry-config/" title="JDBC Based Device Registry Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/jdbc-device-registry-config/">
        JDBC Based Device Registry Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/mongodb-device-registry-config/" title="MongoDB Based Device Registry Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/mongodb-device-registry-config/">
        MongoDB Based Device Registry Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/file-based-device-registry-config/" title="File Based Device Registry Configuration" class="dd-item active">
        <a href="/hono/docs/dev/admin-guide/file-based-device-registry-config/">
        File Based Device Registry Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/device-connection-config/">
        Device Connection Service Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/http-adapter-config/">
        HTTP Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/mqtt-adapter-config/">
        MQTT Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/amqp-adapter-config/">
        AMQP Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/coap-adapter-config/" title="CoAP Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/coap-adapter-config/">
        CoAP Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/kura-adapter-config/">
        Kura Adapter Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/hono-client-configuration/">
        Hono Client Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/amqp-network-config/">
        AMQP 1.0 Messaging Network Configuration
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/secure_communication/">
        Secure Communication
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/admin-guide/monitoring-tracing-config/" title="Monitoring &amp; Tracing" class="dd-item ">
        <a href="/hono/docs/dev/admin-guide/monitoring-tracing-config/">
        Monitoring &amp; Tracing
        
        </a>
    </li>
     
  
 

            
          
             
            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/dev-guide/" title="Developer Guide" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/dev-guide/">
          <i class="fas fa-tools"></i> Developer Guide
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/building_hono/">
        Building from Source
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/amqp_adapter_client/" title="AMQP Adapter Client for Java" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/amqp_adapter_client/">
        AMQP Adapter Client for Java
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/java_client_consumer/">
        Consuming Messages from Java
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
        <a href="/hono/docs/dev/dev-guide/custom_http_adapter/">
        Implement a Custom Hono HTTP Protocol Adapter
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/api/" title="API" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/api/">
          &nbsp;<i class='fas fa-plug'></i>&nbsp;API
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/telemetry/">
        Telemetry API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/event/" title="Event API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/event/">
        Event API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/command-and-control/" title="Command &amp; Control API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/command-and-control/">
        Command &amp; Control API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/tenant/" title="Tenant API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/tenant/">
        Tenant API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/device-connection/">
        Device Connection API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/device-registration/">
        Device Registration API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/credentials/" title="Credentials API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/credentials/">
        Credentials API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/authentication/" title="Authentication API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/authentication/">
        Authentication API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/management/" title="Device Registry Management API Specification" class="dd-item ">
        <a href="/hono/docs/dev/api/management/">
        Device Registry Management API
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/api/metrics/" title="Metrics" class="dd-item ">
        <a href="/hono/docs/dev/api/metrics/">
        Metrics
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/deployment/" title="Deployment" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/deployment/">
          <i class="fas fa-shipping-fast"></i> Deployment
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
        <a href="/hono/docs/dev/deployment/helm-based-deployment/">
        Helm based Deployment
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
        <a href="/hono/docs/dev/deployment/openshift/">
        OpenShift / OKD
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
        <a href="/hono/docs/dev/deployment/create-kubernetes-cluster/">
        Setting up a Kubernetes Cluster
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
        <a href="/hono/docs/dev/deployment/resource-limitation/">
        Limiting Resource Usage
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
          


 
  
    
    <li data-nav-id="/hono/docs/dev/architecture/" title="Architecture" class="dd-item 
        
        
        
        ">
      <a href="/hono/docs/dev/architecture/">
          <i class="fas fa-landmark"></i> Architecture
          
      </a>
      
      
        <ul>
          
          
          
          
        
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/architecture/component-view/" title="Component View" class="dd-item ">
        <a href="/hono/docs/dev/architecture/component-view/">
        Component View
        
        </a>
    </li>
     
  
 

            
          
            
            


 
  
    
      <li data-nav-id="/hono/docs/dev/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
        <a href="/hono/docs/dev/architecture/auth/">
        Authentication/Authorization
        
        </a>
    </li>
     
  
 

            
          
        
        </ul>
              
    </li>
  
 

          
         
    </ul>

    
    
      <section id="shortcuts">
        <h3></h3>
        <ul>
          
              <li> 
                  <a class="padding" href="https://www.eclipse.org/hono/" title="Hono&#39;s Homepage"><i class='fas fa-home'></i> Hono Home</a>
              </li>
          
              <li> 
                  <a class="padding" href="https://www.eclipse.org/hono/getting-started/" title="Getting started with Eclipse Hono"><i class='fas fa-plane-departure'></i> Getting Started</a>
              </li>
          
        </ul>
      </section>
    

    
    <section id="prefooter">
      <hr/>
      <ul>
      
        <li>
          <div id="select-box-wrapper">
          <div id="select-box">
          <a class="padding">
            Version:&nbsp;
          <div class="select-style">
            <select id="select-language" onchange="location = this.value;">
          
          
          
              
              
                  
                    
                    
                      <option id="stable" value="/hono/docs/admin-guide/file-based-device-registry-config/">stable (1.4)</option>
                    
                  
              
                  
              
                  
              
                  
              
                  
              
                  
              
                  
              
          
              
              
                  
              
                  
                    
                    
                      <option id="1.4" value="/hono/docs/1.4/admin-guide/file-based-device-registry-config/">1.4</option>
                    
                  
              
                  
              
                  
              
                  
              
                  
              
                  
              
          
              
              
                  
              
                  
              
                  
                    
                    
                      <option id="1.3" value="/hono/docs/1.3/admin-guide/file-based-device-registry-config/">1.3</option>
                    
                  
              
                  
              
                  
              
                  
              
                  
              
          
              
              
                  
              
                  
              
                  
              
                  
              
                  
              
                  
              
                  
                    
                    
                      <option id="dev" value="/hono/docs/dev/admin-guide/file-based-device-registry-config/" selected>dev</option>
                    
                  
              
          
        </select>
        <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
          width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
          <g>
            <g id="arrow-drop-down">
              <polygon points="0,63.75 127.5,191.25 255,63.75 		" />
            </g>
          </g>
        </svg>
        </div>
        </a>
        </div>
        </div>
        </li>
      
      
      
      </ul>
    </section>
    
    <section id="footer">
      

<p>&copy; 2020 <a href="https://www.eclipse.org/hono/">The Eclipse Hono Project</a></p>

<p>
    Documentation built with
    <a href="https://gohugo.io/" target="_blank">Hugo</a>
    using the
    <a href="https://github.com/matcornic/hugo-theme-learn" target="_blank">Learn</a> theme.
</p>

<div class="eclipse-logo">
    <a href="https://www.eclipse.org" target="_blank">
        <img src="https://www.eclipse.org/hono/docs/images/eclipse_foundation_logo.svg"/>
    </a>
</div>

    </section>
  </div>
</nav>





        <section id="body">
        <div id="overlay"></div>
        
        
    <div class="old-version-hint">
        <p>This page refers to version <em>dev</em>.
            You might want to use the <a href="https://www.eclipse.org/hono/docs/">current stable</a> version.
        </p>
    </div>


    
        <div class="padding highlightable">
              
              <div>
                <div id="top-bar">
                
                  
                  
                  
                  <div id="top-github-link">
                    <a class="github-link" title='Edit this page' href="https://github.com/eclipse/hono/edit/master/site/documentation/content/admin-guide/file-based-device-registry-config.md" target="blank">
                      <i class="fas fa-code-branch"></i>
                      <span id="top-github-link-text">Edit this page</span>
                    </a>
                  </div>
                  
                
                
                <div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
                    <span id="sidebar-toggle-span">
                        <a href="#" id="sidebar-toggle" data-sidebar-toggle="">
                          <i class="fas fa-bars"></i>
                        </a>
                    </span>
                  
                  <span id="toc-menu"><i class="fas fa-list-alt"></i></span>
                  
                  <span class="links">
                 
                 
                    
          
          
            
            
          
          
            
            
          
          
            <a href='/hono/docs/dev/'>Documentation</a> > <a href='/hono/docs/dev/admin-guide/'>Admin Guide</a> > File Based Device Registry Configuration
          
         
          
         
          
        
                 
                  </span>
                </div>
                
                    <div class="progress">
    <div class="wrapper">
<nav id="TableOfContents">
<ul>
<li>
<ul>
<li><a href="#service-configuration">Service Configuration</a></li>
<li><a href="#port-configuration">Port Configuration</a>
<ul>
<li><a href="#secure-port-only">Secure Port Only</a></li>
<li><a href="#insecure-port-only">Insecure Port Only</a></li>
<li><a href="#dual-port">Dual Port</a></li>
<li><a href="#ephemeral-ports">Ephemeral Ports</a></li>
</ul></li>
<li><a href="#authentication-service-connection-configuration">Authentication Service Connection Configuration</a></li>
<li><a href="#metrics-configuration">Metrics Configuration</a></li>
<li><a href="#device-identities-file-format">Device Identities File Format</a></li>
<li><a href="#credentials-file-format">Credentials File Format</a></li>
<li><a href="#tenants-file-format">Tenants File Format</a></li>
<li><a href="#configuring-gateway-devices">Configuring Gateway Devices</a></li>
</ul></li>
</ul>
</nav>
    </div>
</div>

                
              </div>
            </div>
            

        
        <div id="body-inner">
          
            <h1>File Based Device Registry Configuration</h1>
          

        


<p>The File based Device Registry component provides an exemplary implementation of Eclipse Hono&trade;&rsquo;s <a href="/hono/docs/dev/api/device-registration/">Device Registration</a>, <a href="/hono/docs/dev/api/credentials/">Credentials</a>, <a href="/hono/docs/dev/api/tenant/">Tenant</a> and <a href="/hono/docs/dev/api/device-connection/">Device Connection</a> APIs.</p>

<p>Protocol adapters use these APIs to determine a device&rsquo;s registration status, e.g. if it is enabled and if it is registered with a particular tenant, and to authenticate a device before accepting any data for processing from it.</p>

<p>There is no particular technical reason to implement these three APIs in one component, so for production scenarios there might be up to three different components each implementing one of the API&rsquo;s.</p>

<p>The Device Registry component also exposes <a href="/hono/docs/dev/api/management/">HTTP based resources</a> for managing tenants and the registration information and credentials of devices.</p>

<p>The Device Registry is implemented as a Spring Boot application. It can be run either directly from the command line or by means of starting the corresponding <a href="https://hub.docker.com/r/eclipse/hono-service-device-registry-file/">Docker image</a> created from it.</p>

<h2 id="service-configuration">Service Configuration</h2>

<p>In addition to the following options, this component supports the options described in <a href="/hono/docs/dev/admin-guide/common-config/">Common Configuration</a>.</p>

<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the Device Registry.</p>

<table>
<thead>
<tr>
<th align="left">Environment Variable<br>Command Line Option</th>
<th align="center">Mandatory</th>
<th align="left">Default</th>
<th align="left">Description</th>
</tr>
</thead>

<tbody>
<tr>
<td align="left"><code>HONO_APP_TYPE</code><br><code>--hono.app.type</code></td>
<td align="center">no</td>
<td align="left"><code>file</code></td>
<td align="left">The device registry implementation to use. This may be either <code>file</code> or <code>dummy</code>. In the case of <code>dummy</code> a dummy implementation will be used which will consider all devices queried for as valid devices, having the access credentials <code>hono-secret</code>. Of course this shouldn&rsquo;t be used for productive use.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_CACHE_MAX_AGE</code><br><code>--hono.credentials.svc.cacheMaxAge</code></td>
<td align="center">no</td>
<td align="left"><code>180</code></td>
<td align="left">The maximum period of time (seconds) that information returned by the service&rsquo;s operations may be cached for.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_FILENAME</code><br><code>--hono.credentials.svc.filename</code></td>
<td align="center">no</td>
<td align="left"><code>/var/lib/hono/device-registry/</code><br><code>credentials.json</code></td>
<td align="left">The path to the file where the server stores credentials of devices. Hono tries to read credentials from this file during start-up and writes out all identities to this file periodically if property <code>HONO_CREDENTIALS_SVC_SAVE_TO_FILE</code> is set to <code>true</code>.<br>Please refer to <a href="#credentials-file-format">Credentials File Format</a> for details regarding the file&rsquo;s format.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_HASH_ALGORITHMS_WHITELIST</code><br><code>--hono.credentials.svc.hashAlgorithmsWhitelist</code></td>
<td align="center">no</td>
<td align="left"><code>empty</code></td>
<td align="left">An array of supported hashing algorithms to be used with the <code>hashed-password</code> type of credentials. When not set, all values will be accepted.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_MAXBCRYPTCOSTFACTOR</code><br><code>--hono.credentials.svc.maxBcryptCostFactor</code></td>
<td align="center">no</td>
<td align="left"><code>10</code></td>
<td align="left">The maximum cost factor that is supported in password hashes using the BCrypt hash function. This limit is enforced by the device registry when adding or updating corresponding credentials. Increasing this number allows for potentially more secure password hashes to be used. However, the time required to compute the hash increases exponentially with the cost factor.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_MAX_BCRYPT_ITERATIONS</code><br><code>--hono.credentials.svc.maxBcryptIterations</code></td>
<td align="center">no</td>
<td align="left"><code>10</code></td>
<td align="left">DEPRECATED Please use <code>HONO_CREDENTIALS_SVC_MAXBCRYPTCOSTFACTOR</code> instead.<br>The maximum cost factor that is supported in password hashes using the BCrypt hash function. This limit is enforced by the device registry when adding or updating corresponding credentials. Increasing this number allows for potentially more secure password hashes to be used. However, the time required to compute the hash increases exponentially with the cost factor.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_MODIFICATION_ENABLED</code><br><code>--hono.credentials.svc.modificationEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>true</code></td>
<td align="left">When set to <code>false</code> the credentials contained in the registry cannot be updated nor removed.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_RECEIVER_LINK_CREDIT</code><br><code>--hono.credentials.svc.receiverLinkCredit</code></td>
<td align="center">no</td>
<td align="left"><code>100</code></td>
<td align="left">The number of credits to flow to a client connecting to the Credentials endpoint.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_SAVE_TO_FILE</code><br><code>--hono.credentials.svc.saveToFile</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will periodically write out the registered credentials to the file specified by the <code>HONO_CREDENTIALS_SVC_FILENAME</code> property.</td>
</tr>

<tr>
<td align="left"><code>HONO_CREDENTIALS_SVC_STARTEMPTY</code><br><code>--hono.credentials.svc.startEmpty</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will not try to load credentials from the file specified by the <code>HONO_CREDENTIALS_SVC_FILENAME</code> property during startup.</td>
</tr>

<tr>
<td align="left"><code>HONO_DEVICE_CONNECTION_SVC_MAX_DEVICES_PER_TENANT</code><br><code>--hono.deviceConnection.svc.maxDevicesPerTenant</code></td>
<td align="center">no</td>
<td align="left"><code>100</code></td>
<td align="left">The number of devices per tenant for which connection related data is stored. It is an error to set this property to a value &lt;= 0.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_BIND_ADDRESS</code><br><code>--hono.registry.amqp.bindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the secure AMQP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_CERT_PATH</code><br><code>--hono.registry.amqp.certPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the PEM file containing the certificate that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_AMQP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_REGISTRY_AMQP_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_INSECURE_PORT</code><br><code>--hono.registry.amqp.insecurePort</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The insecure port the server should listen on for AMQP 1.0 connections.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.registry.amqp.insecurePortBindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the insecure AMQP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_INSECURE_PORT_ENABLED</code><br><code>--hono.registry.amqp.insecurePortEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">If set to <code>true</code> the server will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_REGISTRY_AMQP_INSECURE_PORT</code> or the default AMQP port number (<code>5672</code>) if not set explicitly.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_KEY_PATH</code><br><code>--hono.registry.amqp.keyPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the (PKCS8) PEM file containing the private key that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_AMQP_CERT_PATH</code>. Alternatively, the <code>HONO_REGISTRY_AMQP_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_KEY_STORE_PASSWORD</code><br><code>--hono.registry.amqp.keyStorePassword</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The password required to read the contents of the key store.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_KEY_STORE_PATH</code><br><code>--hono.registry.amqp.keyStorePath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the Java key store containing the private key and certificate that the server should use for authenticating to clients. Either this option or the <code>HONO_REGISTRY_AMQP_KEY_PATH</code> and <code>HONO_REGISTRY_AMQP_CERT_PATH</code> options need to be set in order to enable TLS secured connections with clients. The key store format can be either <code>JKS</code> or <code>PKCS12</code> indicated by a <code>.jks</code> or <code>.p12</code> file suffix respectively.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_NATIVE_TLS_REQUIRED</code><br><code>--hono.registry.amqp.nativeTlsRequired</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">The server will probe for OpenSLL on startup if a secure port is configured. By default, the server will fall back to the JVM&rsquo;s default SSL engine if not available. However, if set to <code>true</code>, the server will fail to start at all in this case.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_PORT</code><br><code>--hono.registry.amqp.port</code></td>
<td align="center">no</td>
<td align="left"><code>5671</code></td>
<td align="left">The secure port that the server should listen on for AMQP 1.0 connections.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_AMQP_SECURE_PROTOCOLS</code><br><code>--hono.registry.amqp.secureProtocols</code></td>
<td align="center">no</td>
<td align="left"><code>TLSv1.2</code></td>
<td align="left">A (comma separated) list of secure protocols that are supported when negotiating TLS sessions. Please refer to the <a href="https://vertx.io/docs/vertx-core/java/#ssl">vert.x documentation</a> for a list of supported protocol names.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_TENANT_ID_PATTERN</code><br><code>--hono.registry.http.tenantIdPattern</code></td>
<td align="center">no</td>
<td align="left"><code>^[a-zA-Z0-9-_\.]+$</code></td>
<td align="left">The regular expression to use to validate tenant ID. Please refer to the <a href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">java pattern documentation</a>.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_DEVICE_ID_PATTERN</code><br><code>--hono.registry.http.deviceIdPattern</code></td>
<td align="center">no</td>
<td align="left"><code>^[a-zA-Z0-9-_\.:]+$</code></td>
<td align="left">The regular expression to use to validate device ID. Please refer to the <a href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">java pattern documentation</a>.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_BIND_ADDRESS</code><br><code>--hono.registry.http.bindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the secure HTTP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_CERT_PATH</code><br><code>--hono.registry.http.certPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the PEM file containing the certificate that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_HTTP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_REGISTRY_HTTP_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_INSECURE_PORT</code><br><code>--hono.registry.http.insecurePort</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The insecure port the server should listen on for HTTP requests.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.registry.http.insecurePortBindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the insecure HTTP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_INSECURE_PORT_ENABLED</code><br><code>--hono.registry.http.insecurePortEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">If set to <code>true</code> the server will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_REGISTRY_HTTP_INSECURE_PORT</code> or the default HTTP port number (<code>8080</code>) if not set explicitly.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_KEY_PATH</code><br><code>--hono.registry.http.keyPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the (PKCS8) PEM file containing the private key that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_HTTP_CERT_PATH</code>. Alternatively, the <code>HONO_REGISTRY_HTTP_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_KEY_STORE_PASSWORD</code><br><code>--hono.registry.http.keyStorePassword</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The password required to read the contents of the key store.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_KEY_STORE_PATH</code><br><code>--hono.registry.http.keyStorePath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the Java key store containing the private key and certificate that the server should use for authenticating to clients. Either this option or the <code>HONO_REGISTRY_HTTP_KEY_PATH</code> and <code>HONO_REGISTRY_HTTP_CERT_PATH</code> options need to be set in order to enable TLS secured connections with clients. The key store format can be either <code>JKS</code> or <code>PKCS12</code> indicated by a <code>.jks</code> or <code>.p12</code> file suffix respectively.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_HTTP_PORT</code><br><code>--hono.registry.http.port</code></td>
<td align="center">no</td>
<td align="left"><code>8443</code></td>
<td align="left">The secure port that the server should listen on for HTTP requests.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_TENANT_ID_PATTERN</code><br><code>--hono.registry.rest.tenantIdPattern</code></td>
<td align="center">no</td>
<td align="left"><code>^[a-zA-Z0-9-_\.]+$</code></td>
<td align="left">The regular expression to use to validate tenant ID. Please refer to the <a href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">java pattern documentation</a>.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_TENANT_ID_PATTERN</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_DEVICE_ID_PATTERN</code><br><code>--hono.registry.rest.deviceIdPattern</code></td>
<td align="center">no</td>
<td align="left"><code>^[a-zA-Z0-9-_\.:]+$</code></td>
<td align="left">The regular expression to use to validate device ID. Please refer to the <a href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">java pattern documentation</a>.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_DEVICE_ID_PATTERN</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_BIND_ADDRESS</code><br><code>--hono.registry.rest.bindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the secure HTTP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_BIND_ADDRESS</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_CERT_PATH</code><br><code>--hono.registry.rest.certPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the PEM file containing the certificate that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_REST_KEY_PATH</code>.<br>Alternatively, the <code>HONO_REGISTRY_REST_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_CERT_PATH</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_INSECURE_PORT</code><br><code>--hono.registry.rest.insecurePort</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The insecure port the server should listen on for HTTP requests.<br>See <a href="#port-configuration">Port Configuration</a> below for details.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_INSECURE_PORT</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.registry.rest.insecurePortBindAddress</code></td>
<td align="center">no</td>
<td align="left"><code>127.0.0.1</code></td>
<td align="left">The IP address of the network interface that the insecure HTTP port should be bound to.<br>See <a href="#port-configuration">Port Configuration</a> below for details.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_INSECURE_PORT_BIND_ADDRESS</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_INSECURE_PORT_ENABLED</code><br><code>--hono.registry.rest.insecurePortEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">If set to <code>true</code> the server will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_REGISTRY_REST_INSECURE_PORT</code> or the default HTTP port number (<code>8080</code>) if not set explicitly.<br>See <a href="#port-configuration">Port Configuration</a> below for details.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_INSECURE_PORT_ENABLED</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_KEY_PATH</code><br><code>--hono.registry.rest.keyPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the (PKCS8) PEM file containing the private key that the server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_REGISTRY_REST_CERT_PATH</code>. Alternatively, the <code>HONO_REGISTRY_REST_KEY_STORE_PATH</code> option can be used to configure a key store containing both the key as well as the certificate.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_KEY_PATH</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_KEY_STORE_PASSWORD</code><br><code>--hono.registry.rest.keyStorePassword</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The password required to read the contents of the key store.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_KEY_STORE_PASSWORD</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_KEY_STORE_PATH</code><br><code>--hono.registry.rest.keyStorePath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the Java key store containing the private key and certificate that the server should use for authenticating to clients. Either this option or the <code>HONO_REGISTRY_REST_KEY_PATH</code> and <code>HONO_REGISTRY_REST_CERT_PATH</code> options need to be set in order to enable TLS secured connections with clients. The key store format can be either <code>JKS</code> or <code>PKCS12</code> indicated by a <code>.jks</code> or <code>.p12</code> file suffix respectively.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_KEY_STORE_PATH</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_REST_PORT</code><br><code>--hono.registry.rest.port</code></td>
<td align="center">no</td>
<td align="left"><code>8443</code></td>
<td align="left">The secure port that the server should listen on for HTTP requests.<br>See <a href="#port-configuration">Port Configuration</a> below for details.<br><strong>Deprecated</strong> Use <code>HONO_REGISTRY_HTTP_PORT</code> instead.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_CACHE_MAX_AGE</code><br><code>--hono.registry.svc.cacheMaxAge</code></td>
<td align="center">no</td>
<td align="left"><code>180</code></td>
<td align="left">The maximum period of time (seconds) that information returned by the service&rsquo;s operations may be cached for.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_FILENAME</code><br><code>--hono.registry.svc.filename</code></td>
<td align="center">no</td>
<td align="left"><code>/var/lib/hono/device-registry/</code><br><code>device-identities.json</code></td>
<td align="left">The path to the file where the server stores identities of registered devices. Hono tries to read device identities from this file during start-up and writes out all identities to this file periodically if property <code>HONO_REGISTRY_SVC_SAVE_TO_FILE</code> is set to <code>true</code>.<br>Please refer to <a href="#device-identities-file-format">Device Identities File Format</a> for details regarding the file&rsquo;s format.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_MAX_DEVICES_PER_TENANT</code><br><code>--hono.registry.svc.maxDevicesPerTenant</code></td>
<td align="center">no</td>
<td align="left"><code>100</code></td>
<td align="left">The number of devices that can be registered for each tenant. It is an error to set this property to a value &lt;= 0.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_MODIFICATION_ENABLED</code><br><code>--hono.registry.svc.modificationEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>true</code></td>
<td align="left">When set to <code>false</code> the device information contained in the registry cannot be updated nor removed from the registry.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_RECEIVER_LINK_CREDIT</code><br><code>--hono.registry.svc.receiverLinkCredit</code></td>
<td align="center">no</td>
<td align="left"><code>100</code></td>
<td align="left">The number of credits to flow to a client connecting to the Device Registration endpoint.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_SAVE_TO_FILE</code><br><code>--hono.registry.svc.saveToFile</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will periodically write out the registered device information to the file specified by the <code>HONO_REGISTRY_SVC_FILENAME</code> property.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_SIGNING_KEY_PATH</code><br><code>--hono.registry.svc.signing.keyPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the (PKCS8) PEM file containing the private key that the server should use for signing tokens asserting a device&rsquo;s registration status. When using this variable, other services that need to validate the tokens issued by this service need to be configured with the corresponding certificate/public key. Alternatively, a symmetric key can be used for signing (and validating) by setting the <code>HONO_REGISTRY_SVC_SIGNING_SHARED_SECRET</code> variable. If none of these variables is set, the server falls back to the key indicated by the <code>HONO_REGISTRY_AMP_KEY_PATH</code> variable. If that variable is also not set, startup of the server fails.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_SIGNING_SHARED_SECRET</code><br><code>--hono.registry.svc.signing.sharedSecret</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">A string to derive a symmetric key from that is used for signing tokens asserting a device&rsquo;s registration status. The key is derived from the string by using the bytes of the String&rsquo;s UTF8 encoding. When setting the signing key using this variable, other services that need to validate the tokens issued by this service need to be configured with the same key. Alternatively, an asymmetric key pair can be used for signing (and validating) by setting the <code>HONO_REGISTRY_SVC_SIGNING_KEY_PATH</code> variable. If none of these variables is set, startup of the server fails.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_SIGNING_TOKEN_EXPIRATION</code><br><code>--hono.registry.svc.signing.tokenExpiration</code></td>
<td align="center">no</td>
<td align="left"><code>10</code></td>
<td align="left">The expiration period to use for the tokens asserting the registration status of devices.</td>
</tr>

<tr>
<td align="left"><code>HONO_REGISTRY_SVC_STARTEMPTY</code><br><code>--hono.registry.svc.startEmpty</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will not try to load device identities from the file specified by the <code>HONO_REGISTRY_SVC_FILENAME</code> property during startup.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_CACHE_MAX_AGE</code><br><code>--hono.tenant.svc.cacheMaxAge</code></td>
<td align="center">no</td>
<td align="left"><code>180</code></td>
<td align="left">The maximum period of time (seconds) that information returned by the service&rsquo;s operations may be cached for.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_FILENAME</code><br><code>--hono.tenant.svc.filename</code></td>
<td align="center">no</td>
<td align="left"><code>/var/lib/hono/device-registry/</code><br><code>tenants.json</code></td>
<td align="left">The path to the file where the server stores tenants. Hono tries to read tenants from this file during start-up and writes out all identities to this file periodically if property <code>HONO_TENANT_SVC_SAVE_TO_FILE</code> is set to <code>true</code>.<br>Please refer to <a href="#tenants-file-format">Tenants File Format</a> for details regarding the file&rsquo;s format.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_MODIFICATION_ENABLED</code><br><code>--hono.tenant.svc.modificationEnabled</code></td>
<td align="center">no</td>
<td align="left"><code>true</code></td>
<td align="left">When set to <code>false</code> the tenants contained in the registry cannot be updated nor removed.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_RECEIVER_LINK_CREDIT</code><br><code>--hono.tenant.svc.receiverLinkCredit</code></td>
<td align="center">no</td>
<td align="left"><code>100</code></td>
<td align="left">The number of credits to flow to a client connecting to the Tenant endpoint.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_SAVE_TO_FILE</code><br><code>--hono.tenant.svc.saveToFile</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will periodically write out the registered tenants to the file specified by the <code>HONO_TENANTS_SVC_TENANT_FILENAME</code> property.</td>
</tr>

<tr>
<td align="left"><code>HONO_TENANT_SVC_STARTEMPTY</code><br><code>--hono.tenant.svc.startEmpty</code></td>
<td align="center">no</td>
<td align="left"><code>false</code></td>
<td align="left">When set to <code>true</code> the server will not try to load tenants from the file specified by the <code>HONO_TENANT_SVC_FILENAME</code> property during startup.</td>
</tr>
</tbody>
</table>

<p>The variables only need to be set if the default value does not match your environment.</p>

<h2 id="port-configuration">Port Configuration</h2>

<p>The file based Device Registry supports configuration of both an AMQP based endpoint exposing the Tenant, Device Registration and Credentials
APIs as well as an HTTP based endpoint providing resources for managing tenants, registration information and credentials as defined by the
<a href="/hono/docs/dev/api/management/">Registry Management API</a>. Both endpoints can be configured to listen for connections on</p>

<ul>
<li>a secure port only (default) or</li>
<li>an insecure port only or</li>
<li>both a secure and an insecure port (dual port configuration)</li>
</ul>

<p>The registry will fail to start if none of the ports is configured properly.</p>

<p>The following sections apply to configuring both the AMQP and the HTTP endpoint. The environment variables to use for configuring
the HTTP endpoint are the same as the ones for the AMQP endpoint, substituting <code>_AMQP_</code> with <code>_HTTP_</code>, e.g. <code>HONO_REGISTRY_HTTP_KEY_PATH</code>
instead of <code>HONO_REGISTRY_AMQP_KEY_PATH</code>.</p>

<h3 id="secure-port-only">Secure Port Only</h3>

<p>The server needs to be configured with a private key and certificate in order to open a TLS secured port.</p>

<p>There are two alternative ways for doing so:</p>

<ol>
<li>Setting the <code>HONO_REGISTRY_AMQP_KEY_STORE_PATH</code> and the <code>HONO_REGISTRY_AMQP_KEY_STORE_PASSWORD</code> variables in order to load the
key &amp; certificate from a password protected key store, or</li>
<li>setting the <code>HONO_REGISTRY_AMQP_KEY_PATH</code> and <code>HONO_REGISTRY_AMQP_CERT_PATH</code> variables in order to load the key and certificate
from two separate PEM files in PKCS8 format.</li>
</ol>

<p>When starting up, the server will bind a TLS secured socket to the default secure port (<code>5671</code> for AMQP and <code>8443</code> for HTTP).
The port number can also be set explicitly using the <code>HONO_REGISTRY_AMQP_PORT</code> variable.</p>

<p>The <code>HONO_REGISTRY_AMQP_BIND_ADDRESS</code> variable can be used to specify the network interface that the port should be exposed on.
By default, the port is bound to the <em>loopback device</em> only, i.e. the port will only be accessible from the local host. Setting this
variable to <code>0.0.0.0</code> will let the port being bound to <strong>all</strong> network interfaces (be careful not to expose the port unintentionally
to the outside world).</p>

<h3 id="insecure-port-only">Insecure Port Only</h3>

<p>The secure port will mostly be required for production scenarios. However, it might be desirable to expose a non-TLS secured port instead,
e.g. for testing purposes. In any case, the non-secure port needs to be explicitly enabled either by</p>

<ul>
<li>explicitly setting <code>HONO_REGISTRY_AMQP_INSECURE_PORT</code> to a valid port number, or by</li>
<li>implicitly configuring the default port (<code>5672</code> for AMQP and <code>8080</code> for HTTP) to be used by setting <code>HONO_REGISTRY_AMQP_INSECURE_PORT_ENABLED</code>
to <code>true</code>.</li>
</ul>

<p>The server issues a warning on the console if one of the insecure ports is set to the corresponding default secure port.</p>

<p>The <code>HONO_REGISTRY_AMQP_INSECURE_PORT_BIND_ADDRESS</code> variable can be used to specify the network interface that the port should be exposed on.
By default, the port is bound to the <em>loopback device</em> only, i.e. the port will only be accessible from the local host. This variable might be used
to e.g. expose the non-TLS secured port on a local interface only, thus providing easy access from within the local network, while still requiring
encrypted communication when accessed from the outside over public network infrastructure.</p>

<p>Setting this variable to <code>0.0.0.0</code> will let the port being bound to <strong>all</strong> network interfaces (be careful not to expose the port unintentionally
to the outside world).</p>

<h3 id="dual-port">Dual Port</h3>

<p>In test setups and some production scenarios Hono server may be configured to open one secure <strong>and</strong> one insecure port at the same time.</p>

<p>This is achieved by configuring both ports correctly (see above). The server will fail to start if both ports are configured to use the same port number.</p>

<p>Since the secure port may need different visibility in the network setup compared to the secure port, it has it&rsquo;s own binding address
<code>HONO_REGISTRY_AMQP_INSECURE_PORT_BIND_ADDRESS</code>.
This can be used to narrow the visibility of the insecure port to a local network e.g., while the secure port may be visible worldwide.</p>

<h3 id="ephemeral-ports">Ephemeral Ports</h3>

<p>The server may be configured to open both a secure and a non-secure port at the same time simply by configuring both ports as described above.
For this to work, both ports must be configured to use different port numbers, otherwise startup will fail.</p>

<h2 id="authentication-service-connection-configuration">Authentication Service Connection Configuration</h2>

<p>The Device Registry requires a connection to an implementation of Hono&rsquo;s Authentication API in order to authenticate and authorize client requests.</p>

<p>The connection is configured according to <a href="/hono/docs/dev/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
where the <code>${PREFIX}</code> is set to <code>HONO_AUTH</code>. Since Hono&rsquo;s Authentication Service does not allow caching of the responses, the cache properties
can be ignored.</p>

<p>In addition to the standard client configuration properties, following properties may be set for the connection:</p>

<table>
<thead>
<tr>
<th align="left">Environment Variable<br>Command Line Option</th>
<th align="center">Mandatory</th>
<th align="left">Default</th>
<th align="left">Description</th>
</tr>
</thead>

<tbody>
<tr>
<td align="left"><code>HONO_AUTH_VALIDATION_CERT_PATH</code><br><code>--hono.auth.validation.certPath</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">The absolute path to the PEM file containing the an X.509 certificate that the service should use for validating tokens issued by the Authentication service. Alternatively, a symmetric key can be used for validating tokens by setting the <code>HONO_AUTH_VALIDATION_SHARED_SECRET</code> variable. If none of these variables is set, startup of the service fails.</td>
</tr>

<tr>
<td align="left"><code>HONO_AUTH_VALIDATION_SHARED_SECRET</code><br><code>--hono.auth.validation.sharedSecret</code></td>
<td align="center">no</td>
<td align="left">-</td>
<td align="left">A string to derive a symmetric key from which is used for validating tokens issued by the Authentication service. The key is derived from the string by using the bytes of the String&rsquo;s UTF8 encoding. When setting the validation key using this variable, the Authentication service <strong>must</strong> be configured with the same key. Alternatively, an X.509 certificate can be used for validating tokens by setting the <code>HONO_AUTH_VALIDATION_CERT_PATH</code> variable. If none of these variables is set, startup of the service fails.</td>
</tr>

<tr>
<td align="left"><code>HONO_AUTH_SUPPORTED_SASL_MECHANISMS</code><br><code>--hono.auth.supportedSaslMechanisms</code></td>
<td align="center">no</td>
<td align="left"><code>EXTERNAL, PLAIN</code></td>
<td align="left">A (comma separated) list of the SASL mechanisms that the device registry should offer to clients for authentication. This option may be set to specify only one of <code>EXTERNAL</code> or <code>PLAIN</code>, or to use a different order.</td>
</tr>
</tbody>
</table>

<h2 id="metrics-configuration">Metrics Configuration</h2>

<p>See <a href="/hono/docs/dev/admin-guide/monitoring-tracing-config/">Monitoring &amp; Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</p>

<h2 id="device-identities-file-format">Device Identities File Format</h2>

<p>The Device Registry supports persisting the device identities and their registration information to a JSON file in the local file system.
The <em>Getting started Guide</em> includes an example configuration which illustrates the file format used. The configuration file&rsquo;s location is <code>/deploy/src/main/deploy/example-device-identities.json</code>.</p>

<h2 id="credentials-file-format">Credentials File Format</h2>

<p>The Device Registry supports persisting the devices&rsquo; credentials to a JSON file in the local file system.
The <em>Getting started Guide</em> includes an example configuration which illustrates the file format used. The configuration file&rsquo;s location is <code>/deploy/src/main/deploy/example-credentials.json</code>.</p>

<h2 id="tenants-file-format">Tenants File Format</h2>

<p>The Device Registry supports persisting tenants to a JSON file in the local file system.
The configuration file&rsquo;s location is <code>/deploy/src/main/deploy/example-tenants.json</code>.</p>

<h2 id="configuring-gateway-devices">Configuring Gateway Devices</h2>

<p>The Device Registry supports devices to <em>act on behalf of</em> other devices. This is particularly useful for cases where a device does not connect directly to a Hono protocol adapter but is connected to a <em>gateway</em> component that is usually specific to the device&rsquo;s communication protocol. It is the gateway component which then connects to a Hono protocol adapter and publishes data on behalf of the device(s). Examples of such a set up include devices using <a href="https://www.sigfox.com">SigFox</a> or <a href="https://lora-alliance.org/">LoRa</a> for communication.</p>

<p>In these cases the protocol adapter will authenticate the gateway component instead of the device for which it wants to publish data. In order to verify that the gateway is <em>authorized</em> to publish data on behalf of the particular device, the protocol adapter should include the gateway&rsquo;s device identifier (as determined during the authentication process) in its invocation of the Device Registration API&rsquo;s <em>assert Device Registration</em> operation.</p>

<p>The Device Registry will then do the following:
1. Verify that the device exists and is enabled.
2. Verify that the gateway exists and is enabled.
3. Verify that the device&rsquo;s registration information contains a property called <code>via</code> and that its value is either the gateway&rsquo;s device identifier or a JSON array which contains the gateway&rsquo;s device identifier as one of its values.</p>

<p>Only if all conditions are met, the Device Registry returns an assertion of the device&rsquo;s registration status. The protocol adapter can then forward the published data to the AMQP Messaging Network in the same way as for any device that connects directly to the adapter.</p>

<p>The example configuration file (located at <code>/deploy/src/main/deploy/example-device-identities.json</code>) includes a device and a corresponding gateway configured in this way.</p>

<footer class=" footline" >
	
</footer>


        
        </div> 
        

      </div>

    <div id="navigation">
        
        
        
        
            
            
                
                    
                    
                
                

                    
                    
                        
                    
                    

                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
        
                    
            
        
                    
                        
            
            
                
                    
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                        
                        
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
                        
            
            
                
                    
                
                

                    
                    
                    

                    
            
        
                    
            
        
                    
            
        
        
        


	 
	 
    </div>

    </section>
    
    <div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
      <div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
    </div>
    <script src="/hono/docs/js/clipboard.min.js?1603502617"></script>
    <script src="/hono/docs/js/perfect-scrollbar.min.js?1603502617"></script>
    <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1603502617"></script>
    <script src="/hono/docs/js/jquery.sticky.js?1603502617"></script>
    <script src="/hono/docs/js/featherlight.min.js?1603502617"></script>
    <script src="/hono/docs/js/html5shiv-printshiv.min.js?1603502617"></script>
    <script src="/hono/docs/js/highlight.pack.js?1603502617"></script>
    <script>hljs.initHighlightingOnLoad();</script>
    <script src="/hono/docs/js/modernizr.custom.71422.js?1603502617"></script>
    <script src="/hono/docs/js/learn.js?1603502617"></script>
    <script src="/hono/docs/js/hugo-learn.js?1603502617"></script>

    <link href="/hono/docs/mermaid/mermaid.css?1603502617" type="text/css" rel="stylesheet" />
    <script src="/hono/docs/mermaid/mermaid.js?1603502617"></script>
    <script>
        mermaid.initialize({ startOnLoad: true });
    </script>
    




<script>
    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-5WLCZXC');
</script>


<script src="https://www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

  </body>
</html>

