latest web site changes
diff --git a/docs/1.0/admin-guide/amqp-adapter-config/index.html b/docs/1.0/admin-guide/amqp-adapter-config/index.html
new file mode 100644
index 0000000..3562491
--- /dev/null
+++ b/docs/1.0/admin-guide/amqp-adapter-config/index.html
@@ -0,0 +1,2627 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>AMQP Adapter Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="AMQP Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="AMQP Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-adapter-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/amqp-adapter-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/amqp-adapter-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/amqp-adapter-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/amqp-adapter-config/">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>© 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>1.0</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/amqp-adapter-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > AMQP Adapter 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="#amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</a></li>
+<li><a href="#command-control-connection-configuration">Command & Control Connection Configuration</a></li>
+<li><a href="#tenant-service-connection-configuration">Tenant Service Connection Configuration</a></li>
+<li><a href="#device-registration-service-connection-configuration">Device Registration Service Connection Configuration</a></li>
+<li><a href="#credentials-service-connection-configuration">Credentials Service Connection Configuration</a></li>
+<li><a href="#device-connection-service-connection-configuration">Device Connection Service Connection Configuration</a></li>
+<li><a href="#resource-limits-checker-configuration">Resource Limits Checker Configuration</a></li>
+<li><a href="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>AMQP Adapter Configuration</h1>
+
+
+
+
+
+<p>The AMQP protocol adapter allows clients (devices and gateway components) that speaks AMQP 1.0 to publish telemetry messages and events to Eclipse Hono™’s Telemetry and Event endpoints.</p>
+
+<p>The adapter 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-adapter-amqp-vertx/">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/1.0/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 AMQP adapter.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_AMQP_AUTHENTICATION_REQUIRED</code><br><code>--hono.amqp.authenticationRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter requires devices to authenticate when connecting to the adapter. The credentials provided by the device are verified using the configured <a href="#credentials-service-connection-configuration">Credentials Service</a>. Devices that have failed to authenticate are not allowed to publish any data.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_BIND_ADDRESS</code><br><code>--hono.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 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_AMQP_CERT_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_AMQP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_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_AMQP_DEFAULTS_ENABLED</code><br><code>--hono.amqp.defaultsEnabled</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter uses <em>default values</em> registered for a device to augment messages published by the device with missing information like a content type. In particular, the protocol adapter adds default values registered for the device as (application) properties with the same name to the AMQP 1.0 messages it sends downstream to the AMQP Messaging Network.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_IDLE_TIMEOUT</code><br><code>--hono.amqp.idleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>60000</code></td>
+<td align="left">The time interval (milliseconds) to wait for incoming traffic from a device before the connection should be considered stale and thus be closed. Setting this property to <code>0</code> prevents the adapter from detecting and closing stale connections.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.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 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_AMQP_INSECURE_PORT</code><br><code>--hono.amqp.insecurePort</code></td>
+<td align="center">no</td>
+<td align="left"><code>5672</code></td>
+<td align="left">The port number that the protocol adapter should listen on for insecure connections.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_INSECURE_PORT_ENABLED</code><br><code>--hono.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 protocol adapter will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_AMQP_INSECURE_PORT</code> or the default AMQP port number (<code>1883</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_AMQP_KEY_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_AMQP_CERT_PATH</code>. Alternatively, the <code>HONO_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_AMQP_KEY_STORE_PASSWORD</code><br><code>--hono.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_AMQP_KEY_STORE_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. Either this option or the <code>HONO_AMQP_KEY_PATH</code> and <code>HONO_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_AMQP_MAX_CONNECTIONS</code><br><code>--hono.amqp.maxConnections</code></td>
+<td align="center">no</td>
+<td align="left"><code>0</code></td>
+<td align="left">The maximum number of concurrent connections that the protocol adapter should accept. If not set (or set to <code>0</code>), the protocol adapter determines a reasonable value based on the available resources like memory and CPU.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_MAX_FRAME_SIZE</code><br><code>--hono.amqp.maxFrameSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>16384</code></td>
+<td align="left">The maximum number of bytes that can be sent in an AMQP message delivery over the connection with a device. When a client sends an AMQP frame of larger size, the connection is closed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_MAX_PAYLOAD_SIZE</code><br><code>--hono.amqp.maxPayloadSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>2048</code></td>
+<td align="left">The maximum allowed size of an incoming AMQP message in bytes. When a client sends a message with a larger payload, the message is discarded and the link to the client is closed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_MAX_SESSION_FRAMES</code><br><code>--hono.amqp.maxSessionFrames</code></td>
+<td align="center">no</td>
+<td align="left"><code>30</code></td>
+<td align="left">The maximum number of AMQP transfer frames for sessions created on this connection. This is the number of transfer frames that may simultaneously be in flight for all links in the session.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_NATIVE_TLS_REQUIRED</code><br><code>--hono.amqp.nativeTlsRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>false</code></td>
+<td align="left">The server will probe for OpenSSL on startup if a secure port is configured. By default, the server will fall back to the JVM’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_AMQP_PORT</code><br><code>--hono.amqp.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>5671</code></td>
+<td align="left">The secure port that the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AMQP_SECURE_PROTOCOLS</code><br><code>--hono.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_AMQP_TENANT_IDLE_TIMEOUT</code><br><code>--hono.amqp.tenantIdleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>0ms</code></td>
+<td align="left">The duration after which the protocol adapter removes local state of the tenant (e.g. open AMQP links) with an amount and a unit, e.g. <code>2h</code> for 2 hours. See the <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config-conversion-duration">Spring Boot documentation</a> for an explanation of the format. The value <code>0ms</code> disables the timeout.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_APP_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+</tbody>
+</table>
+
+<p>The variables only need to be set if the default values do not match your environment.</p>
+
+<h2 id="port-configuration">Port Configuration</h2>
+
+<p>The AMQP protocol adapter 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 AMQP protocol adapter will fail to start if none of the ports is configured properly.</p>
+
+<h3 id="secure-port-only">Secure Port Only</h3>
+
+<p>The protocol adapter 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>either setting the <code>HONO_AMQP_KEY_STORE_PATH</code> and the <code>HONO_AMQP_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_AMQP_KEY_PATH</code> and <code>HONO_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 protocol adapter will bind a TLS secured socket to the default secure port 5671. The port number can also be set explicitly using the <code>HONO_AMQP_PORT</code> variable.</p>
+
+<p>The <code>HONO_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_AMQP_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default adapter port (5672) by simply setting <code>HONO_AMQP_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The protocol adapter issues a warning on the console if <code>HONO_AMQP_INSECURE_PORT</code> is set to the default secure port (5671) used by the adapter for secure connections.</p>
+
+<p>The <code>HONO_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>The protocol adapter 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>
+
+<h3 id="ephemeral-ports">Ephemeral Ports</h3>
+
+<p>Both the secure as well as the insecure port numbers may be explicitly set to <code>0</code>. The protocol adapter will then use arbitrary (unused) port numbers determined by the operating system during startup.</p>
+
+<h2 id="amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</h2>
+
+<p>The adapter requires a connection to the <em>AMQP 1.0 Messaging Network</em> in order to forward telemetry data and events received from devices to downstream consumers.</p>
+
+<p>The connection to the messaging network is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_MESSAGING</code> being used as <code>${PREFIX}</code>. Since there are no responses being received, the properties for configuring response caching can be ignored.</p>
+
+<h2 id="command-control-connection-configuration">Command & Control Connection Configuration</h2>
+
+<p>The adapter requires an additional connection to the <em>AMQP 1.0 Messaging Network</em> in order to receive
+commands from downstream applications and send responses to commands back to applications.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_COMMAND</code> being used as <code>${PREFIX}</code>. The properties for configuring response caching can be ignored.</p>
+
+<h2 id="tenant-service-connection-configuration">Tenant Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/tenant/">Tenant API</a> in order to retrieve information for a tenant.</p>
+
+<p>The connection to the Tenant Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_TENANT</code> and the additional values for response caching apply.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-registration-service-connection-configuration">Device Registration Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-registration/">Device Registration API</a> in order to retrieve registration status assertions for connected devices.</p>
+
+<p>The connection to the Device Registration Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_REGISTRATION</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="credentials-service-connection-configuration">Credentials Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/credentials/">Credentials API</a> in order to retrieve credentials stored for devices that needs to be authenticated. During connection establishment, the adapter uses the Credentials API to retrieve the credentials on record for the device and matches that with the credentials provided by a device.</p>
+
+<p>The connection to the Credentials Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_CREDENTIALS</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-connection-service-connection-configuration">Device Connection Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-connection/">Device Connection API</a> in order to determine the gateway that a device is connected via to a protocol adapter. This information is required in order to forward commands issued by applications to the protocol adapter instance that the gateway is connected to.</p>
+
+<p>The connection to the Device Connection service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_DEVICECONNECTION</code>.</p>
+
+<p>Responses from the Device Connection service are never cached, so the properties for configuring the cache are ignored.</p>
+
+<h2 id="resource-limits-checker-configuration">Resource Limits Checker Configuration</h2>
+
+<p>The adapter can use metrics collected by a Prometheus server to enforce certain limits set at the tenant level like the overall number of connected devices allowed per tenant.</p>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the checker.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_HOST</code><br><code>--hono.resourceLimits.prometheusBased.host</code></td>
+<td align="center">no</td>
+<td align="left">none</td>
+<td align="left">The host name or IP address of the Prometheus server to retrieve the metrics data from. This property needs to be set in order to enable the Prometheus based checks.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_PORT</code><br><code>--hono.resourceLimits.prometheusBased.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>9090</code></td>
+<td align="left">The port of the Prometheus server to retrieve metrics data from.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MIN_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMinSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The minimum size of the cache to store the metrics data retrieved from the Prometheus server. The cache is used for storing the current amount of data exchanged with devices of tenants.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MAX_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMaxSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum size of the cache to store the metrics data retrieved from the Prometheus server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_TIMEOUT</code><br><code>--hono.resourceLimits.prometheusBased.cacheTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>600</code></td>
+<td align="left">The number of seconds after which the cached metrics data should be considered invalid.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/amqp-network-config/index.html b/docs/1.0/admin-guide/amqp-network-config/index.html
new file mode 100644
index 0000000..9ac74ad
--- /dev/null
+++ b/docs/1.0/admin-guide/amqp-network-config/index.html
@@ -0,0 +1,2302 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>AMQP 1.0 Messaging Network Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="AMQP 1.0 Messaging Network Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="AMQP 1.0 Messaging Network Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-network-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/amqp-network-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/amqp-network-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/amqp-network-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/amqp-network-config/">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>© 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>1.0</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/amqp-network-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > AMQP 1.0 Messaging Network Configuration
+
+
+
+
+
+
+
+ </span>
+ </div>
+
+ <div class="progress">
+ <div class="wrapper">
+<nav id="TableOfContents">
+<ul>
+<li>
+<ul>
+<li><a href="#dispatch-router-configuration">Dispatch Router Configuration</a></li>
+<li><a href="#artemis-broker-configuration">Artemis Broker Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>AMQP 1.0 Messaging Network Configuration</h1>
+
+
+
+
+
+<p>The <em>Qpid Dispatch Router</em>, together with the <em>Apache Artemis</em> message broker, serves as the default <em>AMQP 1.0 Messaging Network</em> that is used in Hono’s example deployment as described in the <a href="/hono/docs/1.0/deployment/">Deployment Guides</a>.</p>
+
+<p>The Dispatch Router component exposes service endpoints implementing the <em>north bound</em> part of Hono’s <a href="/hono/docs/1.0/api/telemetry/">Telemetry</a>, <a href="/hono/docs/1.0/api/event/">Event</a> and <a href="/hono/docs/1.0/api/command-and-control/">Command & Control</a> APIs which are used by applications to interact with devices.</p>
+
+<h2 id="dispatch-router-configuration">Dispatch Router Configuration</h2>
+
+<p>The Dispatch Router is part of the <a href="https://qpid.apache.org">Apache Qpid project</a>. Hono uses Dispatch Router by means of the <a href="https://enmasse.io">EnMasse</a> project’s <a href="https://quay.io/repository/enmasse/qdrouterd-base">Dispatch Router Docker image</a> created from the Qpid project source code.</p>
+
+<p>The Dispatch Router can be configured by means of configuration files. Hono includes an example configuration in the <code>deploy/src/main/config/qpid</code> folder which is used by the example deployment scripts. Please refer to the <a href="https://qpid.apache.org/components/dispatch-router/index.html">Dispatch Router documentation</a> for details regarding the configuration file format and options.</p>
+
+<h2 id="artemis-broker-configuration">Artemis Broker Configuration</h2>
+
+<p>The Artemis Broker is part of the <a href="https://activemq.apache.org">Apache ActiveMQ project</a>. Hono uses Artemis by means of the <a href="https://enmasse.io">EnMasse</a> project’s <a href="https://hub.docker.com/r/enmasseproject/activemq-artemis">Artemis Docker image</a> created from the Artemis project source code.</p>
+
+<p>The Artemis Broker can be configured by means of configuration files. Hono includes an example configuration in the <code>deploy/src/main/config/artemis</code> folder which is used by the example deployment scripts. Please refer to the <a href="https://activemq.apache.org/components/artemis/documentation/">Artemis documentation</a> for details regarding the configuration file format and options.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/auth-server-config/index.html b/docs/1.0/admin-guide/auth-server-config/index.html
new file mode 100644
index 0000000..c51a023
--- /dev/null
+++ b/docs/1.0/admin-guide/auth-server-config/index.html
@@ -0,0 +1,2508 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Auth Server Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Auth Server Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Auth Server Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/auth-server-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/auth-server-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/auth-server-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/auth-server-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/auth-server-config/">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>© 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>1.0</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/auth-server-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Auth Server 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="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Auth Server Configuration</h1>
+
+
+
+
+
+<p>The Auth Server component exposes a service endpoint implementing Eclipse Hono™’s <a href="/hono/docs/1.0/api/authentication/">Authentication</a> API. Other services use this component for authenticating clients and retrieving a token asserting the client’s identity and corresponding authorities.</p>
+
+<p>This component serves as a default implementation of the <em>Authentication</em> API only. On startup, it reads in all identities and their authorities from a JSON file from the file system. All data is then kept in memory and there are no remote service APIs for managing the identities and their authorities.</p>
+
+<p>The Auth Server 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-auth/">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/1.0/admin-guide/common-config/">Common Configuration</a>.</p>
+
+<p>The server can be configured by means of environment variables or corresponding command line options.
+The following table provides an overview of the configuration variables and corresponding command line options that the server supports:</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_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_AMQP_BIND_ADDRESS</code><br><code>--hono.auth.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 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_AUTH_AMQP_CERT_PATH</code><br><code>--hono.auth.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_AUTH_AMQP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_AUTH_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_AUTH_AMQP_INSECURE_PORT</code><br><code>--hono.auth.amqp.insecurePort</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The insecure port the server should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_AMQP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.auth.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 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_AUTH_AMQP_INSECURE_PORT_ENABLED</code><br><code>--hono.auth.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_AUTH_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_AUTH_AMQP_KEY_PATH</code><br><code>--hono.auth.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. Note that the private key is not protected by a password. You should therefore make sure that the key file can only be read by the user that the server process is running under. This option must be used in conjunction with <code>HONO_AUTH_CERT_PATH</code>.<br>Alternatively, the <code>HONO_AUTH_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_AUTH_AMQP_KEY_STORE_PASSWORD</code><br><code>--hono.auth.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_AUTH_AMQP_KEY_STORE_PATH</code><br><code>--hono.auth.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_AUTH_AMQP_KEY_PATH</code> and <code>HONO_AUTH_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_AUTH_AMQP_NATIVE_TLS_REQUIRED</code><br><code>--hono.auth.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’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_AUTH_AMQP_PORT</code><br><code>--hono.auth.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.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_AMQP_SECURE_PROTOCOLS</code><br><code>--hono.auth.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_AUTH_AMQP_TRUST_STORE_PASSWORD</code><br><code>--hono.auth.amqp.trustStorePassword</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The password required to read the contents of the trust store.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_AMQP_TRUST_STORE_PATH</code><br><code>--hono.auth.amqp.trustStorePath</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The absolute path to the Java key store containing the CA certificates the service uses for authenticating clients. The key store format can be either <code>JKS</code>, <code>PKCS12</code> or <code>PEM</code> indicated by a <code>.jks</code>, <code>.p12</code> or <code>.pem</code> file suffix respectively.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_SVC_PERMISSIONS_PATH</code><br><code>--hono.auth.svc.permissionsPath</code></td>
+<td align="center">no</td>
+<td align="left"><code>classpath:/</code><br><code>permissions.json</code></td>
+<td align="left">The Spring resource URI of the JSON file defining the identities and corresponding authorities on Hono’s endpoint resources. The default file bundled with the Auth Server defines authorities required by protocol adapters and downstream consumer. The default permissions file should <strong>only be used for evaluation purposes</strong>.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_SVC_SIGNING_KEY_PATH</code><br><code>--hono.auth.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 an authenticated client’s identity and authorities. 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_AUTH_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_AUTH_AMQP_KEY_PATH</code> variable. If that variable is also not set, startup of the server fails.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_AUTH_SVC_SIGNING_SHARED_SECRET</code><br><code>--hono.auth.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 an authenticated client’s identity and authorities. The key is derived from the string by using the bytes of the String’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_AUTH_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_AUTH_SVC_SIGNING_TOKEN_EXPIRATION</code><br><code>--hono.auth.svc.signing.tokenExpiration</code></td>
+<td align="center">no</td>
+<td align="left">600</td>
+<td align="left">The number of seconds after which the tokens created by this service for asserting an authenticated client’s identity should be considered invalid. Other Hono components will close AMQP connections with clients after this period in order to force the client to authenticate again and create a new token. In closed environments it should be save to set this value to a much higher value, e.g. several hours.</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 Auth Server 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 server will fail to start if none of the ports is configured properly.</p>
+
+<h3 id="secure-port-only">Secure Port Only</h3>
+
+<p>The server needs to be configured with a private key, a certificate holding the public key and a trust store in order to open a TLS secured port.</p>
+
+<p>There are two alternative ways for setting the private key and certificate:</p>
+
+<ol>
+<li>Setting the <code>HONO_AUTH_AMQP_KEY_STORE_PATH</code> and the <code>HONO_AUTH_AMQP_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_AUTH_AMQP_KEY_PATH</code> and <code>HONO_AUTH_AMQP_CERT_PATH</code> variables in order to load the key and certificate from two separate PEM files in PKCS8 format.</li>
+</ol>
+
+<p>In order to set the trust store, the <code>HONO_AUTH_AMQP_TRUST_STORE_PATH</code> variable needs to be set to a key store containing the trusted root CA certificates. The <code>HONO_AUTH_AMQP_TRUST_STORE_PASSWORD</code> variable needs to be set if the key store requires a pass phrase for reading its contents.</p>
+
+<p>When starting up, the server will bind a TLS secured socket to the default secure AMQP port 5671. The port number can also be set explicitly using the <code>HONO_AUTH_AMQP_PORT</code> variable.</p>
+
+<p>The <code>HONO_AUTH_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_AUTH_AMQP_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default AMQP port (5672) by simply setting <code>HONO_AUTH_AMQP_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The server issues a warning on the console if <code>HONO_AUTH_AMQP_INSECURE_PORT</code> is set to the default secure AMQP port (5671).</p>
+
+<p>The <code>HONO_AUTH_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’s own binding address <code>HONO_AUTH_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="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/common-config/index.html b/docs/1.0/admin-guide/common-config/index.html
new file mode 100644
index 0000000..5e79ce1
--- /dev/null
+++ b/docs/1.0/admin-guide/common-config/index.html
@@ -0,0 +1,2373 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Common Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Common Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Common Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/common-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/common-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/common-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/common-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/common-config/">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>© 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>1.0</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/common-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Common Configuration
+
+
+
+
+
+
+
+ </span>
+ </div>
+
+ <div class="progress">
+ <div class="wrapper">
+<nav id="TableOfContents">
+<ul>
+<li>
+<ul>
+<li><a href="#java-vm-options">Java VM Options</a></li>
+<li><a href="#vert-x-options">Vert.x Options</a>
+<ul>
+<li><a href="#using-epoll-on-linux">Using epoll() on Linux</a></li>
+</ul></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Common Configuration</h1>
+
+
+
+
+
+<p>Most Hono components support a common set of configuration options. This section
+describes those options.</p>
+
+<p>Each component which supports the following options explicitly states so. If
+it doesn’t, then these options are not supported by this component.</p>
+
+<h2 id="java-vm-options">Java VM Options</h2>
+
+<p>The Java VM started in Hono’s components can be configured with arbitrary command line options by means of setting the <code>_JAVA_OPTIONS</code> environment variable.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable</th>
+<th align="center">Mandatory</th>
+<th align="left">Default</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>_JAVA_OPTIONS</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">Any options that should be passed to the Java VM on the command line, e.g. <code>-Xmx128m</code></td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="vert-x-options">Vert.x Options</h2>
+
+<p>The vert.x framework instance used to run Hono’s components on can be configured using the following environment variables or corresponding command line options:</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_VERTX_DNS_QUERY_TIMEOUT</code><br><code>--hono.vertx.dnsQueryTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>5000</code></td>
+<td align="left">The amount of time (in milliseconds) after which a DNS query is considered to be failed. Setting this variable to a smaller value may help to reduce the time required to establish connections to the services this adapter depends on. However, setting it to a value that is too small for any DNS query to succeed will effectively prevent any connections to be established at all.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_VERTX_MAX_EVENT_LOOP_EXECUTE_TIME_MILLIS</code><br><code>--hono.vertx.maxEventLoopExecuteTimeMillis</code></td>
+<td align="center">no</td>
+<td align="left"><code>2000</code></td>
+<td align="left">The maximum number of milliseconds that a task on the event loop may run without being considered to block the event loop.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_VERTX_PREFER_NATIVE</code><br><code>--hono.vertx.preferNative</code></td>
+<td align="center">no</td>
+<td align="left"><code>false</code></td>
+<td align="left">Tries to enable <em>epoll()</em> support on Linux (if available). See the <a href="./#epoll">notes below</a> for an explanation of the benefits of enabling <em>epoll</em>.</td>
+</tr>
+</tbody>
+</table>
+
+<p><a name="epoll"></a></p>
+
+<h3 id="using-epoll-on-linux">Using epoll() on Linux</h3>
+
+<p>Using <code>epoll()</code> on Linux may provide better performance for applications which
+have a high I/O throughput. Especially when the application supports an
+asynchronous I/O model. This is true for most Hono components and applications using Hono.</p>
+
+<p>The <em>Netty</em> framework supports using <code>epoll()</code> on Linux x86_64 based systems.
+Hono provides the a Maven build profile for enabling
+support for <em>epoll</em> during the build process.</p>
+
+<p>In order to use <em>epoll</em></p>
+
+<ul>
+<li>Hono needs to be built with the <code>netty-native-linux-x86_64</code> Maven profile enabled and</li>
+<li>the <code>HONO_VERTX_PREFER_NATIVE</code> environment variable needs to be set to <code>true</code> on startup.</li>
+</ul>
+
+<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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/device-connection-config/index.html b/docs/1.0/admin-guide/device-connection-config/index.html
new file mode 100644
index 0000000..4915488
--- /dev/null
+++ b/docs/1.0/admin-guide/device-connection-config/index.html
@@ -0,0 +1,2560 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Configuring the Device Connection Service :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Configuring the Device Connection Service :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Configuring the Device Connection Service :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/device-connection-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/device-connection-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/device-connection-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/device-connection-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/device-connection-config/">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>© 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>1.0</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/device-connection-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Configuring the Device Connection Service
+
+
+
+
+
+
+
+ </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="#data-grid-connection-configuration">Data Grid Connection Configuration</a></li>
+<li><a href="#authentication-service-connection-configuration">Authentication Service Connection Configuration</a></li>
+<li><a href="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Configuring the Device Connection Service</h1>
+
+
+
+
+
+<p>The Device Connection service provides an implementation of Eclipse Hono™’s <a href="/hono/docs/1.0/api/device-connection/">Device Connection API</a>.</p>
+
+<p>Protocol adapters use this API to store and retrieve information about the gateway that a device is using to connect to Hono’s protocol adapters. This information is necessary for routing commands to the particular protocol adapter instance that the gateway used by the device is connected to.</p>
+
+<p>The Device Connection component provides a production grade implementation of the Device Connection API which uses a remote <em>data grid</em> for storing information about device connections. The data grid can be scaled out independently from the Device Connection service components to meet the storage demands at hand.</p>
+
+<p>The Device Connection component 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-connection/">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/1.0/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 Connection component.</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_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of Verticle instances to deploy. If not set, one Verticle per processor core is deployed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_DEVICE_CONNECTION_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_DEVICE_CONNECTION_AMQP_CERT_PATH</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_DEVICE_CONNECTION_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_DEVICE_CONNECTION_AMQP_INSECURE_PORT</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_INSECURE_PORT_ENABLED</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_KEY_PATH</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_CERT_PATH</code>. Alternatively, the <code>HONO_DEVICE_CONNECTION_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_DEVICE_CONNECTION_AMQP_KEY_STORE_PASSWORD</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_KEY_STORE_PATH</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_KEY_PATH</code> and <code>HONO_DEVICE_CONNECTION_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_DEVICE_CONNECTION_AMQP_NATIVE_TLS_REQUIRED</code><br><code>--hono.deviceConnection.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’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_DEVICE_CONNECTION_AMQP_PORT</code><br><code>--hono.deviceConnection.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_DEVICE_CONNECTION_AMQP_RECEIVER_LINK_CREDIT</code><br><code>--hono.deviceConnection.amqp.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 service’s AMQP endpoint.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_DEVICE_CONNECTION_AMQP_SECURE_PROTOCOLS</code><br><code>--hono.deviceConnection.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>
+</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 Device Connection component supports configuration of both, an AMQP based endpoint as well as an HTTP based endpoint proving RESTful resources for managing registration information and credentials. 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 server will fail to start if none of the ports is configured properly.</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_DEVICE_CONNECTION_AMQP_KEY_STORE_PATH</code> and the <code>HONO_DEVICE_CONNECTION_AMQP_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_DEVICE_CONNECTION_AMQP_KEY_PATH</code> and <code>HONO_DEVICE_CONNECTION_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 AMQP port 5671. The port number can also be set explicitly using the <code>HONO_DEVICE_CONNECTION_AMQP_PORT</code> variable.</p>
+
+<p>The <code>HONO_DEVICE_CONNECTION_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_DEVICE_CONNECTION_AMQP_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default AMQP port (5672) by simply setting <code>HONO_DEVICE_CONNECTION_AMQP_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The server issues a warning on the console if <code>HONO_DEVICE_CONNECTION_AMQP_INSECURE_PORT</code> is set to the default secure AMQP port (5671).</p>
+
+<p>The <code>HONO_DEVICE_CONNECTION_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’s own binding address <code>HONO_DEVICE_CONNECTION_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="data-grid-connection-configuration">Data Grid Connection Configuration</h2>
+
+<p>The Device Connection component requires a connection to a remote data grid using the Infinispan Hotrod protocol to store device connection information in.</p>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the connection to the data grid:</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_DEVICE_CONNECTION_REMOTE_SERVER_LIST</code><br><code>--hono.deviceConnection.remote.serverList</code></td>
+<td align="center">yes</td>
+<td align="left">-</td>
+<td align="left">A list of remote servers in the form: <code>host1[:port][;host2[:port]]....</code>.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_DEVICE_CONNECTION_REMOTE_AUTH_SERVER_NAME</code><br><code>--hono.deviceConnection.remote.authServerName</code></td>
+<td align="center">yes</td>
+<td align="left">-</td>
+<td align="left">The server name to indicate in the SASL handshake when authenticating to the server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_DEVICE_CONNECTION_REMOTE_AUTH_USERNAME</code><br><code>--hono.deviceConnection.remote.authUsername</code></td>
+<td align="center">yes</td>
+<td align="left">-</td>
+<td align="left">The username to use for authenticating to the server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_DEVICE_CONNECTION_REMOTE_AUTH_PASSWORD</code><br><code>--hono.deviceConnection.remote.authPassword</code></td>
+<td align="center">yes</td>
+<td align="left">-</td>
+<td align="left">The password to use for authenticating to the server.</td>
+</tr>
+</tbody>
+</table>
+
+<p>In general, the service supports all configuration properties of the <a href="https://docs.jboss.org/infinispan/9.4/apidocs/org/infinispan/client/hotrod/configuration/package-summary.html#package.description">Infinispan Hotrod client</a> using <code>hono.deviceConnection.remote</code> instead of the <code>infinispan.client.hotrod</code> prefix.</p>
+
+<h2 id="authentication-service-connection-configuration">Authentication Service Connection Configuration</h2>
+
+<p>The Device Connection component requires a connection to an implementation of Hono’s Authentication API in order to authenticate and authorize client requests.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_AUTH</code>. Since Hono’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 need to 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 public key 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, the service falls back to the key indicated by the <code>HONO_AUTH_CERT_PATH</code> variable. If that variable is also not 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’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 asymmetric key pair can be used for validating (and signing) by setting the <code>HONO_AUTH_SIGNING_CERT_PATH</code> variable. If none of these variables is set, startup of the service fails.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/device-registry-config/index.html b/docs/1.0/admin-guide/device-registry-config/index.html
new file mode 100644
index 0000000..3746653
--- /dev/null
+++ b/docs/1.0/admin-guide/device-registry-config/index.html
@@ -0,0 +1,2759 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Device Registry Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Device Registry Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Device Registry Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/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/1.0/admin-guide/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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/device-registry-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/device-registry-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/device-registry-config/">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>© 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>1.0</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/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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > 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>Device Registry Configuration</h1>
+
+
+
+
+
+<p>The Device Registry component provides an exemplary implementation of Eclipse Hono™’s <a href="/hono/docs/1.0/api/device-registration/">Device Registration</a>,
+<a href="/hono/docs/1.0/api/credentials/">Credentials</a>, <a href="/hono/docs/1.0/api/tenant/">Tenant</a> and <a href="/hono/docs/1.0/api/device-connection/">Device Connection</a> APIs.</p>
+
+<p>Protocol adapters use these APIs to determine a device’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’s.</p>
+
+<p>The Device Registry component also exposes <a href="/hono/docs/1.0/user-guide/device-registry/">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/">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/1.0/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_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+
+<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’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’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’s format.</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">The maximum number of iterations that are 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 number of iterations.</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_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 <= 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’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_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.</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.</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.</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.</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 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_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.</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.</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.</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>5671</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_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’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’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 <= 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’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’s registration status. The key is derived from the string by using the bytes of the String’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_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’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’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>
+</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 Device Registry supports configuration of both, an AMQP based endpoint as well as an HTTP based endpoint proving RESTful resources for managing registration information and credentials. 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 server will fail to start if none of the ports is configured properly.</p>
+
+<p>The following sections apply to configuring both, the AMQP endpoint as well as the REST endpoint. The environment variables to use for configuring the REST endpoint are the same as the ones for the AMQP endpoint, substituting <code>_AMQP_</code> with <code>_REST_</code>, e.g. <code>HONO_REGISTRY_REST_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 & 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 AMQP port 5671. 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 AMQP port (5672) by simply 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 <code>HONO_REGISTRY_AMQP_INSECURE_PORT</code> is set to the default secure AMQP port (5671).</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’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’s Authentication API in order to authenticate and authorize client requests.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_AUTH</code>. Since Hono’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 need to 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 public key 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, the service falls back to the key indicated by the <code>HONO_AUTH_CERT_PATH</code> variable. If that variable is also not 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’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 asymmetric key pair can be used for validating (and signing) by setting the <code>HONO_AUTH_SIGNING_CERT_PATH</code> variable. If none of these variables is set, startup of the service fails.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & 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’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’ 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’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’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’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’s device identifier (as determined during the authentication process) in its invocation of the Device Registration API’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’s registration information contains a property called <code>via</code> and that its value is either the gateway’s device identifier or a JSON array which contains the gateway’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’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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/hono-client-configuration/index.html b/docs/1.0/admin-guide/hono-client-configuration/index.html
new file mode 100644
index 0000000..69a7909
--- /dev/null
+++ b/docs/1.0/admin-guide/hono-client-configuration/index.html
@@ -0,0 +1,2563 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Hono Client Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Hono Client Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Hono Client Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/hono-client-configuration//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ <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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/hono-client-configuration/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/hono-client-configuration/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/hono-client-configuration/">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>© 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>1.0</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/hono-client-configuration.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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Hono Client Configuration
+
+
+
+
+
+
+
+ </span>
+ </div>
+
+ <div class="progress">
+ <div class="wrapper">
+<nav id="TableOfContents">
+<ul>
+<li>
+<ul>
+<li><a href="#connection-properties">Connection Properties</a></li>
+<li><a href="#response-caching">Response Caching</a></li>
+<li><a href="#using-tls">Using TLS</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Hono Client Configuration</h1>
+
+
+
+
+
+<p>The <code>org.eclipse.hono.client.HonoConnection</code> factory can be used to create AMQP 1.0 connections to Hono’s service components.</p>
+
+<p>The factory uses environment variables and/or command line options to configure the connection to the service and the caching of responses to service invocations. All variables used for configuring the connection factory for a particular service share a common <em>prefix</em>. This way, multiple sets of variables can be used to configure multiple factories for connecting to different service endpoints without interfering with each other. For example, the set of variables for configuring the connection factory for the Device Registration service may use the common prefix <code>HONO_REGISTRATION</code> whereas the set for configuring the factory for the Credentials service may use <code>HONO_CREDENTIALS</code>.</p>
+
+<h2 id="connection-properties">Connection Properties</h2>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the AMQP connection to the service.
+Note that the variables map to the properties of class <code>org.eclipse.hono.config.ClientConfigProperties</code> which can be used to programmatically configure a client.</p>
+
+<p>The variable names contain <code>${PREFIX}</code> as a placeholder for the particular <em>common prefix</em> being used. The <code>${prefix}</code> placeholder used in the command line option name is the same as <code>${PREFIX}</code>, using all lower case characters and <code>.</code> instead of <code>_</code> as the delimiter, e.g. the variable prefix <code>HONO_CREDENTIALS</code> corresponds to the command line option prefix <code>hono.credentials</code>).</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>${PREFIX}_AMQP_HOSTNAME</code><br><code>--${prefix}.amqpHostname</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The name to use as the <em>hostname</em> in the client’s AMQP <em>open</em> frame during connection establishment. This variable can be used to indicate the <em>virtual host</em> to connect to on the server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_CERT_PATH</code><br><code>--${prefix}.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 client should use for authenticating to the server. This variable must be used in conjunction with <code>${PREFIX}_KEY_PATH</code>.<br>Alternatively, the <code>${PREFIX}_KEY_STORE_PATH</code> variable can be used to configure a key store containing both the key as well as the certificate.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_CONNECT_TIMEOUT</code><br><code>--${prefix}.connectTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>5000</code></td>
+<td align="left">The maximum amount of time (milliseconds) that the client should wait for the AMQP connection to be opened. This includes the time for TCP/TLS connection establishment, SASL handshake and exchange of the AMQP <em>open</em> frame. This property can be used to tune the time period to wait according to the network latency involved with the connection between the client and the service.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_CREDENTIALS_PATH</code><br><code>--${prefix}.credentialsPath</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The absolute path to a properties file that contains a <em>username</em> and a <em>password</em> property to use for authenticating to the service.<br>This variable is an alternative to using <code>${PREFIX}_USERNAME</code> and <code>${PREFIX}_PASSWORD</code> which has the advantage of not needing to expose the secret (password) in the client process’ environment.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_FLOW_LATENCY</code><br><code>--${prefix}.flowLatency</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The maximum amount of time (milliseconds) that the client should wait for <em>credits</em> after a link to the service has been established.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_HOST</code><br><code>--${prefix}.host</code></td>
+<td align="center">no</td>
+<td align="left"><code>localhost</code></td>
+<td align="left">The IP address or name of the host to connect to. <strong>NB</strong> This needs to be set to an address that can be resolved within the network the adapter runs on. When running as a Docker container, use Docker’s <code>--network</code> command line option to attach the local container to the Docker network that the service is running on.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_HOSTNAME_VERIFICATION_REQUIRED</code><br><code>--${prefix}.hostnameVerificationRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">A flag indicating whether the value of the <code>${PREFIX}_HOST</code> variable must match the <em>distinguished name</em> or any of the <em>alternative names</em> asserted by the server’s certificate when connecting using TLS.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_IDLE_TIMEOUT</code><br><code>--${prefix}.idleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>16000</code></td>
+<td align="left">Sets the amount of time in milliseconds after which a connection will be closed when no frames have been received from the remote peer. This property is also used to configure a heartbeat mechanism, checking that the connection is still alive. The corresponding heartbeat interval will be set to <em>idleTimeout/2</em> ms.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_INITIAL_CREDITS</code><br><code>--${prefix}.initialCredits</code></td>
+<td align="center">no</td>
+<td align="left"><code>200</code></td>
+<td align="left">The number of <em>credits</em> that a consuming client will initially issue to the service (sender) after link creation. This value effectively limits the number of messages that can be <em>in flight</em> unsettled.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_KEY_PATH</code><br><code>--${prefix}.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 client should use for authenticating to the server. Note that the private key is not protected by a password. You should therefore make sure that the key file can only be read by the user that the client process is running under. This variable must be used in conjunction with <code>${PREFIX}_CERT_PATH</code>. Alternatively, the <code>${PREFIX}_KEY_STORE_PATH</code> variable can be used to configure a key store containing both the key as well as the certificate.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_KEY_STORE_PASSWORD</code><br><code>--${prefix}.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>${PREFIX}_KEY_STORE_PATH</code><br><code>--${prefix}.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 client should use for authenticating to the server. Either this variable or the <code>${PREFIX}_KEY_PATH</code> and <code>${PREFIX}_CERT_PATH</code> variables need to be set in order to enable <em>SASL External</em> based authentication to the server. 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>${PREFIX}_LINK_ESTABLISMENT_TIMEOUT</code><br><code>--${prefix}.linkEstablishmentTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum amount of time (milliseconds) that the client should wait for the service’s <em>attach</em> frame during link establishment. This property can be used to tune the time period to wait according to the network latency involved with the communication link between the client and the service.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_NAME</code><br><code>--${prefix}.name</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The name to use as the <em>container-id</em> in the client’s AMQP <em>open</em> frame during connection establishment.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_PORT</code><br><code>--${prefix}.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>5671</code></td>
+<td align="left">The port that the service is listening on.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_USERNAME</code><br><code>--${prefix}.username</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The username to use for authenticating to the service. This property (and the corresponding <em>password</em>) needs to be set in order to enable <em>SASL Plain</em> based authentication to the service.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_PASSWORD</code><br><code>--${prefix}.password</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The password to use for authenticating to the service.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_SEND_MESSAGE_TIMEOUT</code><br><code>--${prefix}.sendMessageTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum number of milliseconds to wait for a delivery update after an event or command message was sent before the send operation is failed. Setting this value to a higher value increases the chance of successful service invocation in situations where network latency is high.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RECONNECT_ATTEMPTS</code><br><code>--${prefix}.reconnectAttempts</code></td>
+<td align="center">no</td>
+<td align="left"><code>-1</code></td>
+<td align="left">The number of attempts (in addition to the original connection attempt) that the client should make in order to establish an AMQP connection with the peer before giving up. The default value of this property is -1 which means that the client will try forever.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RECONNECT_DELAY_INCREMENT</code><br><code>--${prefix}.reconnectDelayIncrement</code></td>
+<td align="center">no</td>
+<td align="left"><code>100</code></td>
+<td align="left">The factor (milliseconds) used in the exponential backoff algorithm for determining the delay before trying to re-establish an AMQP connection with the peer. The delay after an initial, failed connection attempt will be the value of the <code>${PREFIX}_RECONNECT_MIN_DELAY</code> variable. Each subsequent connection attempt will use a random delay between the minimum delay and the value determined by exponentially increasing the delay by the <code>${PREFIX}_RECONNECT_DELAY_INCREMENT</code> factor. The overall limit of the delay time is defined by the <code>${PREFIX}_RECONNECT_MAX_DELAY</code> variable.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RECONNECT_MAX_DELAY</code><br><code>--${prefix}.reconnectMaxDelay</code></td>
+<td align="center">no</td>
+<td align="left"><code>7000</code></td>
+<td align="left">The maximum number of milliseconds to wait before trying to re-establish an AMQP connection with the peer.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RECONNECT_MIN_DELAY</code><br><code>--${prefix}.reconnectMinDelay</code></td>
+<td align="center">no</td>
+<td align="left"><code>0</code></td>
+<td align="left">The minimum number of milliseconds to wait before trying to re-establish an AMQP connection with the peer.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_REQUEST_TIMEOUT</code><br><code>--${prefix}.requestTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>200</code></td>
+<td align="left">The maximum number of milliseconds to wait for a response before a service invocation is failed. Setting this value to a higher value increases the chance of successful service invocation in situations where network latency is high.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_SECURE_PROTOCOLS</code><br><code>--${prefix}.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>${PREFIX}_TLS_ENABLED</code><br><code>--${prefix}.tlsEnabled</code></td>
+<td align="center">no</td>
+<td align="left"><code>false</code></td>
+<td align="left">If set to <code>true</code> the connection to the peer will be encrypted using TLS and the peer’s identity will be verified using the JVM’s configured standard trust store.<br>This variable only needs to be set to enable TLS explicitly if no specific trust store is configured using the <code>${PREFIX}_TRUST_STORE_PATH</code> variable.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_TRUST_STORE_PATH</code><br><code>--${prefix}.trustStorePath</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The absolute path to the Java key store containing the CA certificates the adapter uses for authenticating the service. This property <strong>must</strong> be set if the service has been configured to support TLS. The key store format can be either <code>JKS</code>, <code>PKCS12</code> or <code>PEM</code> indicated by a <code>.jks</code>, <code>.p12</code> or <code>.pem</code> file suffix respectively.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_TRUST_STORE_PASSWORD</code><br><code>--${prefix}.trustStorePassword</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The password required to read the contents of the trust store.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="response-caching">Response Caching</h2>
+
+<p>The clients created by a Hono client factory support the caching of responses received in response to service invocations. Caching can greatly improve performance by preventing costly invocations of remote service operations. However, it usually only makes sense for resources that do not change too frequently. The Hono client follows the <a href="https://tools.ietf.org/html/rfc2616#section-13.4">approach to caching used in HTTP 1.1</a>. In particular, it supports <a href="https://tools.ietf.org/html/rfc2616#section-14.9"><em>cache directives</em></a> that a service includes in the response messages it sends back to the Hono client.</p>
+
+<p>In order to enable caching, the <code>org.eclipse.hono.client.impl.HonoClientImpl</code> factory class needs to be configured with a cache manager using the <em>setCacheManager</em> method. Any specific client created by the factory will then cache responses to service invocations based on the following rules:</p>
+
+<ol>
+<li>If the response contains a <code>no-cache</code> directive, the response is not cached at all.</li>
+<li>Otherwise, if the response contains a <code>max-age</code> directive, the response is cached for the number of seconds specified by the directive.</li>
+<li>Otherwise, if the response message does not contain any of the above directives and the response’s status code is one of the codes defined in <a href="https://tools.ietf.org/html/rfc2616#section-13.4">RFC 2616, Section 13.4 Response Cacheability</a>, the response is put to the cache using the default timeout defined by the <code>${PREFIX}_RESPONSE_CACHE_DEFAULT_TIMEOUT</code> variable as the maximum age.</li>
+</ol>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the Hono client’s caching behavior.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>${PREFIX}_RESPONSE_CACHE_MIN_SIZE</code><br><code>--${prefix}.responseCacheMinSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The minimum number of responses that can be cached.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RESPONSE_CACHE_MAX_SIZE</code><br><code>--${prefix}.responseCacheMaxSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum number of responses that can be cached. It is up to the particular cache implementation, how to deal with new cache entries once this limit has been reached.</td>
+</tr>
+
+<tr>
+<td align="left"><code>${PREFIX}_RESPONSE_CACHE_DEFAULT_TIMEOUT</code><br><code>--${prefix}.responseCacheDefaultTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>600</code></td>
+<td align="left">The default number of seconds after which cached responses should be considered invalid.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="using-tls">Using TLS</h2>
+
+<p>The factory can be configured to use TLS for</p>
+
+<ul>
+<li>authenticating the server during connection establishment and</li>
+<li>(optionally) authenticating to the server using a client certificate (if the server supports this)</li>
+</ul>
+
+<p>In order to authenticate the server by means of the server’s certificate, the factory needs to be configured with a <em>trust anchor</em> containing the <em>certificate authorities</em> that the client trusts. The trust anchor can be configured explicitly by means of the <code>${PREFIX}_TRUST_STORE_PATH</code> and <code>${PREFIX}_TRUST_STORE_PASSWORD</code> variables. This is most useful in cases where the server’s certificate has not been signed by one of the public root CAs that are contained in the JRE’s standard trust store. However, if the server does use a certificate signed by such a public CA, then it is sufficient to set the <code>${PREFIX}_TLS_ENABLED</code> variable to <code>true</code> in order for the client to support TLS when connecting to the server.</p>
+
+<p>The client can also be configured to authenticate to the server by means of an X.509 client certificate if the server is configured to support this. The <code>${PREFIX}_CERT_PATH</code> and <code>${PREFIX}_KEY_PATH</code> variables can be used to set the paths to PEM files containing the certificate and private key. Alternatively, the <code>${PREFIX}_KEY_STORE_PATH</code> and <code>${PREFIX}_KEY_STORE_PASSWORD</code> variables can be used to set the path and password of a key store which contains both the certificate as well as the private key.</p>
+
+<p>The factory supports TLS 1.2 only by default for negotiating TLS sessions with servers. Additional protocols can be enabled by setting the <code>${PREFIX}_SECURE_PROTOCOLS</code> variable to a comma separated list of protocol names as defined in the <a href="https://vertx.io/docs/vertx-core/java/#ssl">vert.x documentation</a>. However, great care should be taken when enabling older protocols because most of them are vulnerable to attacks.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/http-adapter-config/index.html b/docs/1.0/admin-guide/http-adapter-config/index.html
new file mode 100644
index 0000000..d35a592
--- /dev/null
+++ b/docs/1.0/admin-guide/http-adapter-config/index.html
@@ -0,0 +1,2606 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>HTTP Adapter Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="HTTP Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="HTTP Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/http-adapter-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/http-adapter-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/http-adapter-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/http-adapter-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/http-adapter-config/">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>© 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>1.0</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/http-adapter-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > HTTP Adapter 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="#amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</a></li>
+<li><a href="#command-control-connection-configuration">Command & Control Connection Configuration</a></li>
+<li><a href="#tenant-service-connection-configuration">Tenant Service Connection Configuration</a></li>
+<li><a href="#device-registration-service-connection-configuration">Device Registration Service Connection Configuration</a></li>
+<li><a href="#credentials-service-connection-configuration">Credentials Service Connection Configuration</a></li>
+<li><a href="#device-connection-service-connection-configuration">Device Connection Service Connection Configuration</a></li>
+<li><a href="#resource-limits-checker-configuration">Resource Limits Checker Configuration</a></li>
+<li><a href="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>HTTP Adapter Configuration</h1>
+
+
+
+
+
+<p>The HTTP protocol adapter exposes a HTTP based API for Eclipse Hono™’s Telemetry and Event endpoints.</p>
+
+<p>The adapter 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-adapter-http-vertx/">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/1.0/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 HTTP adapter.</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_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_AUTHENTICATION_REQUIRED</code><br><code>--hono.http.authenticationRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter requires devices to authenticate when connecting to the adapter. The credentials provided by the device are verified using the configured <a href="#credentials-service-connection-configuration">Credentials Service</a>. Devices that have failed to authenticate are not allowed to publish any data.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_BIND_ADDRESS</code><br><code>--hono.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 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_HTTP_CERT_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_HTTP_KEY_PATH</code>.<br>Alternatively, the <code>HONO_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_HTTP_DEFAULTS_ENABLED</code><br><code>--hono.http.defaultsEnabled</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter uses <em>default values</em> registered for a device to augment messages published by the device with missing information like a content type. In particular, the protocol adapter adds default values registered for the device as (application) properties with the same name to the AMQP 1.0 messages it sends downstream to the AMQP Messaging Network.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_INSECURE_PORT</code><br><code>--hono.http.insecurePort</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The insecure port the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.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 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_HTTP_INSECURE_PORT_ENABLED</code><br><code>--hono.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 protocol adapter will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_HTTP_INSECURE_PORT</code> or the default 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_HTTP_KEY_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_HTTP_CERT_PATH</code>. Alternatively, the <code>HONO_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_HTTP_KEY_STORE_PASSWORD</code><br><code>--hono.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_HTTP_KEY_STORE_PATH</code><br><code>--hono.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 protocol adapter should use for authenticating to clients. Either this option or the <code>HONO_HTTP_KEY_PATH</code> and <code>HONO_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_HTTP_NATIVE_TLS_REQUIRED</code><br><code>--hono.http.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’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_HTTP_MAX_PAYLOAD_SIZE</code><br><code>--hono.http.maxPayloadSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>2048</code></td>
+<td align="left">The maximum allowed size of an incoming HTTP request’s body in bytes. Requests with a larger body size are rejected with a 413 <code>Request entity too large</code> response.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_PORT</code><br><code>--hono.http.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>8443</code></td>
+<td align="left">The secure port that the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_REALM</code><br><code>--hono.http.realm</code></td>
+<td align="center">no</td>
+<td align="left"><code>Hono</code></td>
+<td align="left">The name of the <em>realm</em> that unauthenticated devices are prompted to provide credentials for. The realm is used in the <em>WWW-Authenticate</em> header returned to devices in response to unauthenticated requests.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HTTP_SECURE_PROTOCOLS</code><br><code>--hono.http.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_HTTP_TENANT_IDLE_TIMEOUT</code><br><code>--hono.http.tenantIdleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>0ms</code></td>
+<td align="left">The duration after which the protocol adapter removes local state of the tenant (e.g. open AMQP links) with an amount and a unit, e.g. <code>2h</code> for 2 hours. See the <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config-conversion-duration">Spring Boot documentation</a> for an explanation of the format. The value <code>0ms</code> disables the timeout.</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 HTTP protocol adapter 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 HTTP protocol adapter will fail to start if none of the ports is configured properly.</p>
+
+<h3 id="secure-port-only">Secure Port Only</h3>
+
+<p>The protocol adapter 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_HTTP_KEY_STORE_PATH</code> and the <code>HONO_HTTP_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_HTTP_KEY_PATH</code> and <code>HONO_HTTP_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 protocol adapter will bind a TLS secured socket to the default secure port 8443. The port number can also be set explicitly using the <code>HONO_HTTP_PORT</code> variable.</p>
+
+<p>The <code>HONO_HTTP_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_HTTP_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default port (8080) by simply setting <code>HONO_HTTP_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The protocol adapter issues a warning on the console if <code>HONO_HTTP_INSECURE_PORT</code> is set to the default secure HTTP port (8443).</p>
+
+<p>The <code>HONO_HTTP_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>The protocol adapter 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>
+
+<h3 id="ephemeral-ports">Ephemeral Ports</h3>
+
+<p>Both the secure as well as the insecure port numbers may be explicitly set to <code>0</code>. The protocol adapter will then use arbitrary (unused) port numbers determined by the operating system during startup.</p>
+
+<h2 id="amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</h2>
+
+<p>The adapter requires a connection to the <em>AMQP 1.0 Messaging Network</em> in order to forward telemetry data and events received from devices to downstream consumers.</p>
+
+<p>The connection to the messaging network is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_MESSAGING</code> being used as <code>${PREFIX}</code>. Since there are no responses being received, the properties for configuring response caching can be ignored.</p>
+
+<h2 id="command-control-connection-configuration">Command & Control Connection Configuration</h2>
+
+<p>The adapter requires an additional connection to the <em>AMQP 1.0 Messaging Network</em> in order to receive
+commands from downstream applications and send responses to commands back to applications.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_COMMAND</code> being used as <code>${PREFIX}</code>. The properties for configuring response caching can be ignored.</p>
+
+<h2 id="tenant-service-connection-configuration">Tenant Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/tenant/">Tenant API</a> in order to retrieve information for a tenant.</p>
+
+<p>The connection to the Tenant Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_TENANT</code> and the additional values for response caching apply.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-registration-service-connection-configuration">Device Registration Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-registration/">Device Registration API</a> in order to retrieve registration status assertions for connected devices.</p>
+
+<p>The connection to the Device Registration Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_REGISTRATION</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="credentials-service-connection-configuration">Credentials Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/credentials/">Credentials API</a> in order to retrieve credentials stored for devices that needs to be authenticated. During connection establishment, the adapter uses the Credentials API to retrieve the credentials on record for the device and matches that with the credentials provided by a device.</p>
+
+<p>The connection to the Credentials Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_CREDENTIALS</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-connection-service-connection-configuration">Device Connection Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-connection/">Device Connection API</a> in order to determine the gateway that a device is connected via to a protocol adapter. This information is required in order to forward commands issued by applications to the protocol adapter instance that the gateway is connected to.</p>
+
+<p>The connection to the Device Connection service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_DEVICECONNECTION</code>.</p>
+
+<p>Responses from the Device Connection service are never cached, so the properties for configuring the cache are ignored.</p>
+
+<h2 id="resource-limits-checker-configuration">Resource Limits Checker Configuration</h2>
+
+<p>The adapter can use metrics collected by a Prometheus server to enforce certain limits set at the tenant level like the overall number of connected devices allowed per tenant.</p>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the checker.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_HOST</code><br><code>--hono.resourceLimits.prometheusBased.host</code></td>
+<td align="center">no</td>
+<td align="left">none</td>
+<td align="left">The host name or IP address of the Prometheus server to retrieve the metrics data from. This property needs to be set in order to enable the Prometheus based checks.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_PORT</code><br><code>--hono.resourceLimits.prometheusBased.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>9090</code></td>
+<td align="left">The port of the Prometheus server to retrieve metrics data from.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MIN_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMinSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The minimum size of the cache to store the metrics data retrieved from the Prometheus server. The cache is used for storing the current amount of data exchanged with devices of tenants.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MAX_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMaxSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum size of the cache to store the metrics data retrieved from the Prometheus server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_TIMEOUT</code><br><code>--hono.resourceLimits.prometheusBased.cacheTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>600</code></td>
+<td align="left">The number of seconds after which the cached metrics data should be considered invalid.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/index.html b/docs/1.0/admin-guide/index.html
new file mode 100644
index 0000000..f366f63
--- /dev/null
+++ b/docs/1.0/admin-guide/index.html
@@ -0,0 +1,2266 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Admin Guide :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Admin Guide :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Admin Guide :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/">
+ <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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+ active
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/">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>© 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>1.0</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/_index.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 class="links">
+
+
+
+
+
+
+
+
+
+ <a href='/hono/docs/1.0/'>Documentation</a> > Admin Guide
+
+
+
+
+
+ </span>
+ </div>
+
+ </div>
+ </div>
+
+
+
+ <div id="chapter">
+
+ <div id="body-inner">
+
+
+
+
+
+
+
+<h1 id="admin-guide">Admin Guide</h1>
+
+<p>Learn how to operate Eclipse Hono™ and look up the configuration options of its components.</p>
+
+
+<footer class=" footline" >
+
+</footer>
+
+
+ </div>
+
+ </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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
diff --git a/docs/1.0/admin-guide/index.xml b/docs/1.0/admin-guide/index.xml
new file mode 100644
index 0000000..b7398b0
--- /dev/null
+++ b/docs/1.0/admin-guide/index.xml
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
+ <channel>
+ <title>Admin Guide on Eclipse Hono&trade; Vers.: 1.0</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/</link>
+ <description>Recent content in Admin Guide on Eclipse Hono&trade; Vers.: 1.0</description>
+ <generator>Hugo -- gohugo.io</generator>
+ <language>en-us</language>
+
+ <atom:link href="https://www.eclipse.org/hono/docs/1.0/admin-guide/index.xml" rel="self" type="application/rss+xml" />
+
+
+ <item>
+ <title>Common Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/common-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/common-config/</guid>
+ <description><p>Most Hono components support a common set of configuration options. This section
+describes those options.</p></description>
+ </item>
+
+ <item>
+ <title>Auth Server Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/auth-server-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/auth-server-config/</guid>
+ <description><p>The Auth Server component exposes a service endpoint implementing Eclipse Hono&trade;&rsquo;s <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/api/authentication/">Authentication</a> API. Other services use this component for authenticating clients and retrieving a token asserting the client&rsquo;s identity and corresponding authorities.</p></description>
+ </item>
+
+ <item>
+ <title>Device Registry Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/device-registry-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/device-registry-config/</guid>
+ <description><p>The Device Registry component provides an exemplary implementation of Eclipse Hono&trade;&rsquo;s <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/api/device-registration/">Device Registration</a>,
+<a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/api/credentials/">Credentials</a>, <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/api/tenant/">Tenant</a> and <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/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></description>
+ </item>
+
+ <item>
+ <title>Configuring the Device Connection Service</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/device-connection-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/device-connection-config/</guid>
+ <description><p>The Device Connection service provides an implementation of Eclipse Hono&trade;&rsquo;s <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/api/device-connection/">Device Connection API</a>.</p>
+
+<p>Protocol adapters use this API to store and retrieve information about the gateway that a device is using to connect to Hono&rsquo;s protocol adapters. This information is necessary for routing commands to the particular protocol adapter instance that the gateway used by the device is connected to.</p></description>
+ </item>
+
+ <item>
+ <title>HTTP Adapter Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/http-adapter-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/http-adapter-config/</guid>
+ <description><p>The HTTP protocol adapter exposes a HTTP based API for Eclipse Hono&trade;&rsquo;s Telemetry and Event endpoints.</p></description>
+ </item>
+
+ <item>
+ <title>AMQP Adapter Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-adapter-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-adapter-config/</guid>
+ <description><p>The AMQP protocol adapter allows clients (devices and gateway components) that speaks AMQP 1.0 to publish telemetry messages and events to Eclipse Hono&trade;&rsquo;s Telemetry and Event endpoints.</p></description>
+ </item>
+
+ <item>
+ <title>MQTT Adapter Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/mqtt-adapter-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/mqtt-adapter-config/</guid>
+ <description><p>The MQTT protocol adapter exposes an MQTT topic hierarchy for publishing messages and events to Eclipse Hono&trade;&rsquo;s Telemetry and Event endpoints.</p></description>
+ </item>
+
+ <item>
+ <title>Kura Adapter Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/kura-adapter-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/kura-adapter-config/</guid>
+ <description><p>The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura&trade; based gateways to publish <em>control</em> and <em>data</em> messages to Eclipse Hono&trade;&rsquo;s Telemetry and Event endpoints.</p></description>
+ </item>
+
+ <item>
+ <title>Hono Client Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/hono-client-configuration/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/hono-client-configuration/</guid>
+ <description><p>The <code>org.eclipse.hono.client.HonoConnection</code> factory can be used to create AMQP 1.0 connections to Hono&rsquo;s service components.</p></description>
+ </item>
+
+ <item>
+ <title>AMQP 1.0 Messaging Network Configuration</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-network-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/amqp-network-config/</guid>
+ <description><p>The <em>Qpid Dispatch Router</em>, together with the <em>Apache Artemis</em> message broker, serves as the default <em>AMQP 1.0 Messaging Network</em> that is used in Hono&rsquo;s example deployment as described in the <a href="https://www.eclipse.org/hono/docs/hono/docs/1.0/deployment/">Deployment Guides</a>.</p></description>
+ </item>
+
+ <item>
+ <title>Secure Communication</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/secure_communication/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/secure_communication/</guid>
+ <description><p>The individual components of an Eclipse Hono&trade; installation, e.g. the protocol adapters, <em>AMQP Messaging Network</em>, <em>Hono Auth</em> etc., and the clients attaching to Hono in order to send and receive data all communicate with each other using AMQP 1.0 over TCP. The Hono components and the clients will usually not be located on the same local network but will probably communicate over public networking infrastructure. For most use cases it is therefore desirable, if not necessary, to provide for confidentiality of the data being transferred between these components. This section describes how Hono supports confidentiality by means of <em>Transport Layer Security</em> (TLS) and how to configure it.</p></description>
+ </item>
+
+ <item>
+ <title>Monitoring & Tracing</title>
+ <link>https://www.eclipse.org/hono/docs/1.0/admin-guide/monitoring-tracing-config/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://www.eclipse.org/hono/docs/1.0/admin-guide/monitoring-tracing-config/</guid>
+ <description><p>The individual components of an Eclipse Hono&trade; installation need to work together in order to provide their functionality to devices and applications. Under normal circumstances these interactions work flawlessly. However, due to the nature of distributed systems, any one (or more) of the components may crash or become otherwise unavailable due to arbitrary reasons. This page describes how Hono supports operations teams by providing insights into the individual service components and their interactions with each other by means of reporting metrics and tracing the processing of individual messages through the system.</p></description>
+ </item>
+
+ </channel>
+</rss>
\ No newline at end of file
diff --git a/docs/1.0/admin-guide/kura-adapter-config/index.html b/docs/1.0/admin-guide/kura-adapter-config/index.html
new file mode 100644
index 0000000..6b47b83
--- /dev/null
+++ b/docs/1.0/admin-guide/kura-adapter-config/index.html
@@ -0,0 +1,2620 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Kura Adapter Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Kura Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Kura Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/kura-adapter-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/kura-adapter-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/kura-adapter-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/kura-adapter-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/kura-adapter-config/">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>© 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>1.0</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/kura-adapter-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Kura Adapter 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="#amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</a></li>
+<li><a href="#command-control-connection-configuration">Command & Control Connection Configuration</a></li>
+<li><a href="#tenant-service-connection-configuration">Tenant Service Connection Configuration</a></li>
+<li><a href="#device-registration-service-connection-configuration">Device Registration Service Connection Configuration</a></li>
+<li><a href="#credentials-service-connection-configuration">Credentials Service Connection Configuration</a></li>
+<li><a href="#device-connection-service-connection-configuration">Device Connection Service Connection Configuration</a></li>
+<li><a href="#resource-limits-checker-configuration">Resource Limits Checker Configuration</a></li>
+<li><a href="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Kura Adapter Configuration</h1>
+
+
+
+
+
+<p>The Kura protocol adapter exposes an MQTT topic hierarchy allowing Eclipse Kura™ based gateways to publish <em>control</em> and <em>data</em> messages to Eclipse Hono™’s Telemetry and Event endpoints.</p>
+
+<p>The adapter 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-adapter-kura/">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/1.0/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 MQTT adapter.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_APP_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_AUTHENTICATION_REQUIRED</code><br><code>--hono.kura.authenticationRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter requires devices to authenticate when connecting to the adapter. The credentials provided by the device are verified using the configured <a href="#credentials-service-connection-configuration">Credentials Service</a>. Devices that have failed to authenticate are not allowed to publish any data.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_BIND_ADDRESS</code><br><code>--hono.kura.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 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_KURA_CERT_PATH</code><br><code>--hono.kura.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_KURA_KEY_PATH</code>.<br>Alternatively, the <code>HONO_KURA_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_KURA_CONTROL_PREFIX</code><br><code>--hono.kura.controlPrefix</code></td>
+<td align="center">no</td>
+<td align="left"><code>$EDC</code></td>
+<td align="left">The <em>topic.control-prefix</em> to use for determining if a message published by a Kura gateway is a <em>control</em> message. All messages published to a topic that does not start with this prefix are considered <em>data</em> messages.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_CTRL_MSG_CONTENT_TYPE</code><br><code>--hono.kura.ctrlMsgContentType</code></td>
+<td align="center">no</td>
+<td align="left"><code>application/vnd.eclipse.kura-control</code></td>
+<td align="left">The content type to set on AMQP messages created from Kura <em>control</em> messages.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_DATA_MSG_CONTENT_TYPE</code><br><code>--hono.kura.dataMsgContentType</code></td>
+<td align="center">no</td>
+<td align="left"><code>application/vnd.eclipse.kura-data</code></td>
+<td align="left">The content type to set on AMQP messages created from Kura <em>data</em> messages.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_DEFAULTS_ENABLED</code><br><code>--hono.kura.defaultsEnabled</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter uses <em>default values</em> registered for a device to augment messages published by the device with missing information like a content type. In particular, the protocol adapter adds default values registered for the device as (application) properties with the same name to the AMQP 1.0 messages it sends downstream to the AMQP Messaging Network.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_INSECURE_PORT</code><br><code>--hono.kura.insecurePort</code></td>
+<td align="center">no</td>
+<td align="left">-</td>
+<td align="left">The insecure port the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.kura.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 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_KURA_INSECURE_PORT_ENABLED</code><br><code>--hono.kura.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 protocol adapter will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_KURA_INSECURE_PORT</code> or the default MQTT port number (<code>1883</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_KURA_KEY_PATH</code><br><code>--hono.kura.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_KURA_CERT_PATH</code>. Alternatively, the <code>HONO_KURA_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_KURA_KEY_STORE_PASSWORD</code><br><code>--hono.kura.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_KURA_KEY_STORE_PATH</code><br><code>--hono.kura.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 protocol adapter should use for authenticating to clients. Either this option or the <code>HONO_KURA_KEY_PATH</code> and <code>HONO_KURA_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_KURA_MAX_PAYLOAD_SIZE</code><br><code>--hono.kura.maxPayloadSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>2048</code></td>
+<td align="left">The maximum allowed size of an incoming MQTT message’s payload in bytes. When a client sends a message with a larger payload, the message is discarded and the connection to the client gets closed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_NATIVE_TLS_REQUIRED</code><br><code>--hono.kura.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’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_KURA_PORT</code><br><code>--hono.kura.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>8883</code></td>
+<td align="left">The secure port that the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_KURA_SECURE_PROTOCOLS</code><br><code>--hono.kura.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_KURA_TENANT_IDLE_TIMEOUT</code><br><code>--hono.kura.tenantIdleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>0ms</code></td>
+<td align="left">The duration after which the protocol adapter removes local state of the tenant (e.g. open AMQP links) with an amount and a unit, e.g. <code>2h</code> for 2 hours. See the <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config-conversion-duration">Spring Boot documentation</a> for an explanation of the format. The value <code>0ms</code> disables the timeout.</td>
+</tr>
+</tbody>
+</table>
+
+<p>The variables only need to be set if the default values do not match your environment.</p>
+
+<h2 id="port-configuration">Port Configuration</h2>
+
+<p>The Kura protocol adapter 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 Kura protocol adapter will fail to start if none of the ports is configured properly.</p>
+
+<h3 id="secure-port-only">Secure Port Only</h3>
+
+<p>The protocol adapter 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>either setting the <code>HONO_KURA_KEY_STORE_PATH</code> and the <code>HONO_KURA_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_KURA_KEY_PATH</code> and <code>HONO_KURA_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 protocol adapter will bind a TLS secured socket to the default secure MQTT port 8883. The port number can also be set explicitly using the <code>HONO_KURA_PORT</code> variable.</p>
+
+<p>The <code>HONO_KURA_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_KURA_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default MQTT port (1883) by simply setting <code>HONO_KURA_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The protocol adapter issues a warning on the console if <code>HONO_KURA_INSECURE_PORT</code> is set to the default secure MQTT port (8883).</p>
+
+<p>The <code>HONO_KURA_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>The protocol adapter 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>
+
+<h3 id="ephemeral-ports">Ephemeral Ports</h3>
+
+<p>Both the secure as well as the insecure port numbers may be explicitly set to <code>0</code>. The protocol adapter will then use arbitrary (unused) port numbers determined by the operating system during startup.</p>
+
+<h2 id="amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</h2>
+
+<p>The adapter requires a connection to the <em>AMQP 1.0 Messaging Network</em> in order to forward telemetry data and events received from devices to downstream consumers.</p>
+
+<p>The connection to the messaging network is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_MESSAGING</code> being used as <code>${PREFIX}</code>. Since there are no responses being received, the properties for configuring response caching can be ignored.</p>
+
+<h2 id="command-control-connection-configuration">Command & Control Connection Configuration</h2>
+
+<p>The adapter requires an additional connection to the <em>AMQP 1.0 Messaging Network</em> in order to receive
+commands from downstream applications and send responses to commands back to applications.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_COMMAND</code> being used as <code>${PREFIX}</code>. The properties for configuring response caching can be ignored.</p>
+
+<h2 id="tenant-service-connection-configuration">Tenant Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/tenant/">Tenant API</a> in order to retrieve information for a tenant.</p>
+
+<p>The connection to the Tenant Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_TENANT</code> and the additional values for response caching apply.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-registration-service-connection-configuration">Device Registration Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-registration/">Device Registration API</a> in order to retrieve registration status assertions for connected devices.</p>
+
+<p>The connection to the Device Registration Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_REGISTRATION</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="credentials-service-connection-configuration">Credentials Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/credentials/">Credentials API</a> in order to retrieve credentials stored for devices that needs to be authenticated. During connection establishment, the adapter uses the Credentials API to retrieve the credentials on record for the device and matches that with the credentials provided by a device.</p>
+
+<p>The connection to the Credentials Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_CREDENTIALS</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-connection-service-connection-configuration">Device Connection Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-connection/">Device Connection API</a> in order to determine the gateway that a device is connected via to a protocol adapter. This information is required in order to forward commands issued by applications to the protocol adapter instance that the gateway is connected to.</p>
+
+<p>The connection to the Device Connection service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_DEVICECONNECTION</code>.</p>
+
+<p>Responses from the Device Connection service are never cached, so the properties for configuring the cache are ignored.</p>
+
+<h2 id="resource-limits-checker-configuration">Resource Limits Checker Configuration</h2>
+
+<p>The adapter can use metrics collected by a Prometheus server to enforce certain limits set at the tenant level like the overall number of connected devices allowed per tenant.</p>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the checker.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_HOST</code><br><code>--hono.resourceLimits.prometheusBased.host</code></td>
+<td align="center">no</td>
+<td align="left">none</td>
+<td align="left">The host name or IP address of the Prometheus server to retrieve the metrics data from. This property needs to be set in order to enable the Prometheus based checks.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_PORT</code><br><code>--hono.resourceLimits.prometheusBased.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>9090</code></td>
+<td align="left">The port of the Prometheus server to retrieve metrics data from.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MIN_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMinSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The minimum size of the cache to store the metrics data retrieved from the Prometheus server. The cache is used for storing the current amount of data exchanged with devices of tenants.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MAX_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMaxSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum size of the cache to store the metrics data retrieved from the Prometheus server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_TIMEOUT</code><br><code>--hono.resourceLimits.prometheusBased.cacheTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>600</code></td>
+<td align="left">The number of seconds after which the cached metrics data should be considered invalid.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/monitoring-tracing-config/index.html b/docs/1.0/admin-guide/monitoring-tracing-config/index.html
new file mode 100644
index 0000000..9a72889
--- /dev/null
+++ b/docs/1.0/admin-guide/monitoring-tracing-config/index.html
@@ -0,0 +1,2496 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Monitoring & Tracing :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Monitoring & Tracing :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Monitoring & Tracing :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/monitoring-tracing-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/monitoring-tracing-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/monitoring-tracing-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/monitoring-tracing-config/">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>© 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>1.0</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/monitoring-tracing-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Monitoring & Tracing
+
+
+
+
+
+
+
+ </span>
+ </div>
+
+ <div class="progress">
+ <div class="wrapper">
+<nav id="TableOfContents">
+<ul>
+<li>
+<ul>
+<li><a href="#monitoring">Monitoring</a>
+<ul>
+<li><a href="#configuring-a-metrics-back-end">Configuring a Metrics Back End</a></li>
+<li><a href="#using-prometheus">Using Prometheus</a></li>
+</ul></li>
+<li><a href="#health-check-server-configuration">Health Check Server Configuration</a></li>
+<li><a href="#tracing">Tracing</a>
+<ul>
+<li><a href="#configuring-a-tracer">Configuring a Tracer</a></li>
+</ul></li>
+<li><a href="#configuring-usage-of-jaeger-tracing-included-in-docker-images">Configuring usage of Jaeger tracing (included in Docker images)</a></li>
+<li><a href="#enforcing-the-recording-of-traces-for-a-tenant">Enforcing the recording of traces for a tenant</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Monitoring & Tracing</h1>
+
+
+
+
+
+<p>The individual components of an Eclipse Hono™ installation need to work together in order to provide their functionality to devices and applications. Under normal circumstances these interactions work flawlessly. However, due to the nature of distributed systems, any one (or more) of the components may crash or become otherwise unavailable due to arbitrary reasons. This page describes how Hono supports operations teams by providing insights into the individual service components and their interactions with each other by means of reporting metrics and tracing the processing of individual messages through the system.</p>
+
+<p>When a device uploads telemetry data to the HTTP adapter, the adapter invokes operations on the Device Registration, Credentials and the Tenant services in order to authenticate and authorize the device before sending the telemetry data downstream to the AMQP 1.0 Messaging Network. The overall success of this process and the latency involved before the message reaches the consumer is determined by the individual interactions between the service components.</p>
+
+<h2 id="monitoring">Monitoring</h2>
+
+<p>In a production environment, an operations team will usually want to keep track of some <em>key performance indicators</em> (KPI) which allow the team to determine the overall <em>health</em> of the system, e.g. memory and CPU consumption etc. Hono supports the tracking of such KPIs by means of metrics it can be configured to report. The metrics are usually collected in a time series database like <em>InfluxDB</em> or <em>Prometheus</em> and then visualized on a monitoring dash-board built using frameworks like <em>Grafana</em>. Such a dash-board can usually also be configured to send alarms when certain thresholds are exceeded.</p>
+
+<p>Metrics usually provide insights into the past and current status of an individual component. The values can be aggregated to provide a picture of the overall system’s status. As such, metrics provide a great way to <em>monitor</em> system health and, in particular, to anticipate resource shortages and use such knowledge to pro-actively prevent system failure.</p>
+
+<h3 id="configuring-a-metrics-back-end">Configuring a Metrics Back End</h3>
+
+<p>Hono uses <a href="http://micrometer.io/">Micrometer</a> for providing metrics. It is
+possible to drop in any Micrometer compatible back end. Hono also uses the
+Micrometer integration with Spring Boot and Vert.x.</p>
+
+<p>Please refer to the <a href="http://micrometer.io/docs">Micrometer documentation</a>
+for details regarding the configuration of a specific Micrometer back end.
+In most cases, you only need to add the back end specific jar files to the class path and
+add back end specific configuration to the <code>application.yml</code> file.</p>
+
+<p>The Hono build supports configuration of a specific metrics back end by means
+of Maven profiles. The following build profiles are currently supported:</p>
+
+<ul>
+<li><code>metrics-prometheus</code> – Enables the Prometheus backend.</li>
+<li><code>metrics-graphite</code> – Enables the Graphite backend.</li>
+<li><code>metrics-influxdb</code> – Enables the InfluxDB backend.</li>
+</ul>
+
+<p>Additionally to selecting a metrics back end, you may need to configure the
+back end using Spring configuration options. See the documentation mentioned
+above for more information.</p>
+
+<p>Note that none of the above profiles are active by default, i.e. you need to
+explicitly activate one of them when starting the build using Maven’s <code>-p</code>
+command line parameter.</p>
+
+<h3 id="using-prometheus">Using Prometheus</h3>
+
+<p>Most of the metrics back ends have data being <em>pushed</em> to from the components
+reporting the metrics. However, Prometheus is different in that it <em>polls</em>
+(or <em>scrapes</em>) all components periodically for new metrics data.
+For this to work, the Prometheus server needs to be configured with the IP
+addresses of the components to monitor. In the example deployment that comes
+with Hono, the Prometheus server is configured with the names of the Kubernetes
+services corresponding to the Hono components that it should scrape.
+The components themselves need to expose a corresponding HTTP endpoint that
+the Prometheus server can connect to for scraping the meter data. All
+Hono components that report metrics can be configured to expose such an
+endpoint via their <a href="#health-check-server-configuration"><em>Health Check</em> server</a>
+which already exposes endpoints for determining the component’s readiness and liveness status.</p>
+
+<h2 id="health-check-server-configuration">Health Check Server Configuration</h2>
+
+<p>All of Hono’s service components and protocol adapters contain a <em>Health Check</em> server which can be configured to
+expose several HTTP endpoints for determining the component’s status.
+In particular, the server exposes a <code>/readiness</code>, a <code>/liveness</code> and an optional <code>/prometheus</code> URI endpoint.</p>
+
+<p>The former two endpoints are supposed to be used by container orchestration platforms like Kubernetes to monitor the runtime status of the containers
+that it manages. These endpoints are <em>always</em> exposed when the health check server is started.</p>
+
+<p>The <code>/prometheus</code> endpoint can be used by a Prometheus server to retrieve collected meter data from the component. It is <em>only</em> exposed if Prometheus has
+been configured as the metrics back end as described <a href="#configuring-a-metrics-back-end">above</a>.</p>
+
+<p>The health check server can be configured by means of the following environment variables:</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_HEALTHCHECK_BINDADDRESS</code><br><code>--hono.healthCheck.bindAddress</code></td>
+<td align="left"><code>127.0.0.1</code></td>
+<td align="left">The IP address of the network interface that the health check server’s secure port should be bound to. The server will only be started if this property is set to some other than the default value and corresponding key material has been configured using the <code>HONO_HEALTHCHECK_KEYPATH</code> and <code>HONO_HEALTHCHECK_CERTPATH</code> variables.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HEALTHCHECK_CERTPATH</code><br><code>--hono.healthCheck.certPath</code></td>
+<td align="left">-</td>
+<td align="left">The absolute path to the PEM file containing the certificate that the secure server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_HEALTHCHECK_KEYPATH</code>.<br>Alternatively, the <code>HONO_HEALTHCHECK_KEYSTOREPATH</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_HEALTHCHECK_INSECUREPORTBINDADDRESS</code><br><code>--hono.healthCheck.insecurePortBindAddress</code></td>
+<td align="left"><code>127.0.0.1</code></td>
+<td align="left">The IP address of the network interface that the health check server’s insecure port should be bound to. The server will only be started if this property is set to some other than the default value.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HEALTHCHECK_INSECUREPORT</code><br><code>--hono.healthCheck.insecurePort</code></td>
+<td align="left"><code>8088</code></td>
+<td align="left">The port that the insecure server should listen on.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HEALTHCHECK_KEYPATH</code><br><code>--hono.healthCheck.keyPath</code></td>
+<td align="left">-</td>
+<td align="left">The absolute path to the (PKCS8) PEM file containing the private key that the secure server should use for authenticating to clients. This option must be used in conjunction with <code>HONO_HEALTHCHECK_CERTPATH</code>. Alternatively, the <code>HONO_HEALTHCHECK_KEYSTOREPATH</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_HEALTHCHECK_PORT</code><br><code>--hono.healthCheck.port</code></td>
+<td align="left"><code>8088</code></td>
+<td align="left">The port that the secure server should listen on.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_HEALTHCHECK_KEYSTOREPASSWORD</code><br><code>--hono.healthCheck.keyStorePassword</code></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_HEALTHCHECK_KEYSTOREPATH</code><br><code>--hono.healthCheck.keyStorePath</code></td>
+<td align="left">-</td>
+<td align="left">The absolute path to the Java key store containing the private key and certificate that the secure server should use for authenticating to clients. Either this option or the <code>HONO_HEALTHCHECK_KEYPATH</code> and <code>HONO_HEALTHCHECK_CERTPATH</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. The <code>HONO_HEALTHCHECK_KEYSTOREPASSWORD</code> variable can be used to set the password required for reading the key store.</td>
+</tr>
+</tbody>
+</table>
+
+<div class="alert alert-warning">
+ <h4 class="alert-heading"><i class="fas fa-exclamation-triangle"></i> Failure to start</h4>
+ <div>The component/service will fail to start if neither the secure not the insecure server have been configured properly.</div>
+</div>
+
+
+<h2 id="tracing">Tracing</h2>
+
+<p>In normal operation the vast majority of messages should be flowing through the system without any noteworthy delays or problems. In fact, that is the whole purpose of Hono. However, that doesn’t mean that nothing can go wrong. For example, when a tenant’s device administrator changes the credentials of a device in the Credentials service but has not yet updated the credentials on the device yet, then the device will start to fail in uploading any data to the protocol adapter it connects to. After a while, a back end application’s administrator might notice, that there hasn’t been any data being received from that particular device for quite some time. The application administrator therefore calls up the Hono operations team and complains about the data <em>being lost somewhere</em>.</p>
+
+<p>The operations team will have a hard time determining what is happening, because it will need to figure out which components have been involved in the processing of the device and why the data hasn’t been processed as usual. The metrics alone usually do not help much here because metrics are usually not scoped to individual devices. The logs written by the individual components, on the other hand, might contain enough information to correlate individual entries in the log with each other and thus <em>trace</em> the processing of the message throughout the system. However, this is usually a very tedious (and error prone) process and the relevant information is often only logged at a level (e.g. <em>DEBUG</em>) that is not used in production (often <em>INFO</em> or above).</p>
+
+<p>In order to address this problem, Hono’s service components are instrumented using <a href="http://opentracing.io">OpenTracing</a>. OpenTracing provides <em>Vendor-neutral APIs and instrumentation for distributed tracing</em>. The OpenTracing web page provides a <a href="https://opentracing.io/docs/supported-tracers/">list of supported tracer implementations</a> from which users can choose in order to collect (and examine) the tracing information generated by Hono’s individual components.</p>
+
+<h3 id="configuring-a-tracer">Configuring a Tracer</h3>
+
+<p><strong>Hint</strong>: The description in this chapter applies to any compatible OpenTracing implementation. For an easier approach to configure usage of <a href="https://www.jaegertracing.io/">Jaeger tracing</a>, see the next chapter.</p>
+
+<p>Hono’s components use the <a href="https://github.com/opentracing-contrib/java-tracerresolver">OpenTracing Tracer Resolver</a> mechanism to find and initialize a concrete OpenTracing implementation during startup of the component. The discovery mechanism is using Java’s <a href="https://docs.oracle.com/javase/9/docs/api/java/util/ServiceLoader.html">ServiceLoader</a> and as such relies on the required resources to be available on the class path.</p>
+
+<p>When starting up any of Hono’s Docker images as a container, the JVM will look for additional jar files to include in its class path in the container’s <code>/opt/hono/extensions</code> folder. Thus, using a specific implementation of OpenTracing is just a matter of configuring the container to mount a volume or binding a host folder at that location and putting the implementation’s jar files and resources into the corresponding volume or host folder.</p>
+
+<div class="alert alert-notice">
+ <h4 class="alert-heading"><i class="fas fa-info-circle"></i> Note</h4>
+ <div>This also means that (currently) only Tracer implementations can be used with Hono that also implement the Tracer Resolver mechanism.</div>
+</div>
+
+
+<p>Assuming that the HTTP adapter should be configured to use <a href="https://www.jaegertracing.io/">Jaeger tracing</a>, the following steps are necessary:</p>
+
+<ol>
+<li>Download <a href="https://github.com/jaegertracing/jaeger-client-java/tree/master/jaeger-tracerresolver">Jaeger’s Java Tracer Resolver</a> implementation and its dependencies (see the hint at the end).</li>
+<li>Put the jars to a folder on the Docker host, e.g. <code>/tmp/jaeger</code>.</li>
+
+<li><p>Start the HTTP adapter Docker image mounting the host folder:</p>
+
+<pre><code class="language-sh">docker run --name hono-adapter-http-vertx \
+--mount type=bind,src=/tmp/jaeger,dst=/opt/hono/extensions,ro \
+... \
+eclipse/hono-adapter-http-vertx
+</code></pre></li>
+</ol>
+
+<p><strong>Note</strong>: the command given above does not contain the environment variables and secrets that are required to configure the service properly. The environment variables for configuring the Jaeger client are also missing. Please refer to the <a href="https://github.com/jaegertracing/jaeger-client-java/blob/master/jaeger-core/README.md">Jaeger documentation</a> for details.</p>
+
+<p>When the HTTP adapter starts up, it will look for a working implementation of the Tracer Resolver on its classpath and (if found) initialize and use it for publishing traces. The adapter’s log file will indicate the name of the Tracer implementation being used.</p>
+
+<p>Using a Docker <em>volume</em> instead of a <em>bind mount</em> works the same way but requires the use of <code>volume</code> as the <em>type</em> of the <code>--mount</code> parameter. Please refer to the <a href="https://docs.docker.com/edge/engine/reference/commandline/service_create/#add-bind-mounts-volumes-or-memory-filesystems">Docker reference documentation</a> for details.</p>
+
+<p><strong>Hint</strong>: to resolve all dependencies for <code>jaeger-tracerresolver</code> in order to provide them to <code>/opt/hono/extensions</code>, you may want to rely on Maven’s dependency plugin. To obtain all jar files you can invoke the following command in a simple Maven project that contains only the dependency to <code>jaeger-tracerresolver</code>:</p>
+
+<pre><code class="language-sh">mvn dependency:copy-dependencies
+</code></pre>
+
+<p>All jar files can then be found in the directory <code>target/dependency</code>.</p>
+
+<h2 id="configuring-usage-of-jaeger-tracing-included-in-docker-images">Configuring usage of Jaeger tracing (included in Docker images)</h2>
+
+<p>In case <a href="https://www.jaegertracing.io/">Jaeger tracing</a> shall be used, there is an alternative to putting the jar files in the container’s <code>/opt/hono/extensions</code> folder as described above.
+This is to have the Jaeger tracing jar files be included in the Hono Docker images by using the <code>jaeger</code> Maven profile when building Hono.</p>
+
+<p>For example, building the HTTP adapter image with the Jaeger client included:</p>
+
+<pre><code class="language-sh"># in directory: hono/adapters/http-vertx/
+mvn clean install -Pbuild-docker-image,jaeger
+</code></pre>
+
+<p>Note that when running the created docker image, the environment variables for configuring the Jaeger client still need to be set. Please refer to the <a href="https://github.com/jaegertracing/jaeger-client-java/blob/master/jaeger-core/README.md">Jaeger documentation</a> for details.</p>
+
+<h2 id="enforcing-the-recording-of-traces-for-a-tenant">Enforcing the recording of traces for a tenant</h2>
+
+<p>Typically, in production systems, the tracing components will be configured to not store <em>all</em> trace spans in the tracing backend, in order to reduce the performance impact. For debugging purposes it can however be beneficial to enforce the recording of certain traces. Hono allows this by providing a configuration option in the Tenant information with which all traces concerning the processing of telemetry, event and command messages for that specific tenant will be recorded. Furthermore, this enforced trace sampling can be restricted to only apply to messages sent in the context of a specific authentication identifier. Please refer to the <a href="/hono/docs/1.0/api/tenant/#tracing-format">description of the <code>tracing</code> object</a> in the Tenant Information for details.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/mqtt-adapter-config/index.html b/docs/1.0/admin-guide/mqtt-adapter-config/index.html
new file mode 100644
index 0000000..5770ae5
--- /dev/null
+++ b/docs/1.0/admin-guide/mqtt-adapter-config/index.html
@@ -0,0 +1,2613 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>MQTT Adapter Configuration :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="MQTT Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0">
+<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="MQTT Adapter Configuration :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/mqtt-adapter-config//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/mqtt-adapter-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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/mqtt-adapter-config/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/mqtt-adapter-config/">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>© 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>1.0</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/mqtt-adapter-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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > MQTT Adapter 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="#amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</a></li>
+<li><a href="#command-control-connection-configuration">Command & Control Connection Configuration</a></li>
+<li><a href="#tenant-service-connection-configuration">Tenant Service Connection Configuration</a></li>
+<li><a href="#device-registration-service-connection-configuration">Device Registration Service Connection Configuration</a></li>
+<li><a href="#credentials-service-connection-configuration">Credentials Service Connection Configuration</a></li>
+<li><a href="#device-connection-service-connection-configuration">Device Connection Service Connection Configuration</a></li>
+<li><a href="#resource-limits-checker-configuration">Resource Limits Checker Configuration</a></li>
+<li><a href="#metrics-configuration">Metrics Configuration</a></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>MQTT Adapter Configuration</h1>
+
+
+
+
+
+<p>The MQTT protocol adapter exposes an MQTT topic hierarchy for publishing messages and events to Eclipse Hono™’s Telemetry and Event endpoints.</p>
+
+<p>The adapter 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-adapter-mqtt-vertx/">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/1.0/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 MQTT adapter.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_APP_MAX_INSTANCES</code><br><code>--hono.app.maxInstances</code></td>
+<td align="center">no</td>
+<td align="left"><em>#CPU cores</em></td>
+<td align="left">The number of verticle instances to deploy. If not set, one verticle per processor core is deployed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_CONNECTION_EVENTS_PRODUCER</code><br><code>--hono.connectionEvents.producer</code></td>
+<td align="center">no</td>
+<td align="left"><code>logging</code></td>
+<td align="left">The implementation of <em>connection events</em> producer which is to be used. This may be <code>logging</code> or <code>events</code>.<br>See <a href="/hono/docs/1.0/concepts/connection-events/">Connection Events</a></td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_AUTHENTICATION_REQUIRED</code><br><code>--hono.mqtt.authenticationRequired</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter requires devices to authenticate when connecting to the adapter. The credentials provided by the device are verified using the configured <a href="#credentials-service-connection-configuration">Credentials Service</a>. Devices that have failed to authenticate are not allowed to publish any data.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_BIND_ADDRESS</code><br><code>--hono.mqtt.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 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_MQTT_CERT_PATH</code><br><code>--hono.mqtt.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_MQTT_KEY_PATH</code>.<br>Alternatively, the <code>HONO_MQTT_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_MQTT_COMMAND_ACK_TIMEOUT</code><br><code>--hono.mqtt.commandAckTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>100</code></td>
+<td align="left">The amount of time (milliseconds) after which the sending of a command to a device using QoS 1 is considered to be failed. The value of this variable should be increased in cases where devices are connected over a network with high latency.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_DEFAULTS_ENABLED</code><br><code>--hono.mqtt.defaultsEnabled</code></td>
+<td align="center">no</td>
+<td align="left"><code>true</code></td>
+<td align="left">If set to <code>true</code> the protocol adapter uses <em>default values</em> registered for a device to augment messages published by the device with missing information like a content type. In particular, the protocol adapter adds default values registered for the device as (application) properties with the same name to the AMQP 1.0 messages it sends downstream to the AMQP Messaging Network.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_INSECURE_PORT_BIND_ADDRESS</code><br><code>--hono.mqtt.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 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_MQTT_INSECURE_PORT_ENABLED</code><br><code>--hono.mqtt.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 protocol adapter will open an insecure port (not secured by TLS) using either the port number set via <code>HONO_MQTT_INSECURE_PORT</code> or the default MQTT port number (<code>1883</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_MQTT_KEY_PATH</code><br><code>--hono.mqtt.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 protocol adapter should use for authenticating to clients. This option must be used in conjunction with <code>HONO_MQTT_CERT_PATH</code>. Alternatively, the <code>HONO_MQTT_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_MQTT_KEY_STORE_PASSWORD</code><br><code>--hono.mqtt.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_MQTT_KEY_STORE_PATH</code><br><code>--hono.mqtt.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 protocol adapter should use for authenticating to clients. Either this option or the <code>HONO_MQTT_KEY_PATH</code> and <code>HONO_MQTT_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_MQTT_MAX_CONNECTIONS</code><br><code>--hono.mqtt.maxConnections</code></td>
+<td align="center">no</td>
+<td align="left"><code>0</code></td>
+<td align="left">The maximum number of concurrent connections that the protocol adapter should accept. If not set (or set to <code>0</code>), the protocol adapter determines a reasonable value based on the available resources like memory and CPU.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_MAX_PAYLOAD_SIZE</code><br><code>--hono.mqtt.maxPayloadSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>2048</code></td>
+<td align="left">The maximum allowed size of an incoming MQTT message’s payload in bytes. When a client sends a message with a larger payload, the message is discarded and the connection to the client gets closed.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_NATIVE_TLS_REQUIRED</code><br><code>--hono.mqtt.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’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_MQTT_PORT</code><br><code>--hono.mqtt.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>8883</code></td>
+<td align="left">The secure port that the protocol adapter should listen on.<br>See <a href="#port-configuration">Port Configuration</a> below for details.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_MQTT_SECURE_PROTOCOLS</code><br><code>--hono.mqtt.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_MQTT_TENANT_IDLE_TIMEOUT</code><br><code>--hono.mqtt.tenantIdleTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>0ms</code></td>
+<td align="left">The duration after which the protocol adapter removes local state of the tenant (e.g. open AMQP links) with an amount and a unit, e.g. <code>2h</code> for 2 hours. See the <a href="https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-external-config-conversion-duration">Spring Boot documentation</a> for an explanation of the format. The value <code>0ms</code> disables the timeout.</td>
+</tr>
+</tbody>
+</table>
+
+<p>The variables only need to be set if the default values do not match your environment.</p>
+
+<h2 id="port-configuration">Port Configuration</h2>
+
+<p>The MQTT protocol adapter 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 MQTT protocol adapter will fail to start if none of the ports is configured properly.</p>
+
+<h3 id="secure-port-only">Secure Port Only</h3>
+
+<p>The protocol adapter 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>either setting the <code>HONO_MQTT_KEY_STORE_PATH</code> and the <code>HONO_MQTT_KEY_STORE_PASSWORD</code> variables in order to load the key & certificate from a password protected key store, or</li>
+<li>setting the <code>HONO_MQTT_KEY_PATH</code> and <code>HONO_MQTT_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 protocol adapter will bind a TLS secured socket to the default secure MQTT port 8883. The port number can also be set explicitly using the <code>HONO_MQTT_PORT</code> variable.</p>
+
+<p>The <code>HONO_MQTT_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_MQTT_INSECURE_PORT</code> to a valid port number, or by</li>
+<li>implicitly configuring the default MQTT port (1883) by simply setting <code>HONO_MQTT_INSECURE_PORT_ENABLED</code> to <code>true</code>.</li>
+</ul>
+
+<p>The protocol adapter issues a warning on the console if <code>HONO_MQTT_INSECURE_PORT</code> is set to the default secure MQTT port (8883).</p>
+
+<p>The <code>HONO_MQTT_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>The protocol adapter 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>
+
+<h3 id="ephemeral-ports">Ephemeral Ports</h3>
+
+<p>Both the secure as well as the insecure port numbers may be explicitly set to <code>0</code>. The protocol adapter will then use arbitrary (unused) port numbers determined by the operating system during startup.</p>
+
+<h2 id="amqp-1-0-messaging-network-connection-configuration">AMQP 1.0 Messaging Network Connection Configuration</h2>
+
+<p>The adapter requires a connection to the <em>AMQP 1.0 Messaging Network</em> in order to forward telemetry data and events received from devices to downstream consumers.</p>
+
+<p>The connection to the messaging network is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_MESSAGING</code> being used as <code>${PREFIX}</code>. Since there are no responses being received, the properties for configuring response caching can be ignored.</p>
+
+<h2 id="command-control-connection-configuration">Command & Control Connection Configuration</h2>
+
+<p>The adapter requires an additional connection to the <em>AMQP 1.0 Messaging Network</em> in order to receive
+commands from downstream applications and send responses to commands back to applications.</p>
+
+<p>The connection is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+with <code>HONO_COMMAND</code> being used as <code>${PREFIX}</code>. The properties for configuring response caching can be ignored.</p>
+
+<h2 id="tenant-service-connection-configuration">Tenant Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/tenant/">Tenant API</a> in order to retrieve information for a tenant.</p>
+
+<p>The connection to the Tenant Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_TENANT</code> and the additional values for response caching apply.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-registration-service-connection-configuration">Device Registration Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-registration/">Device Registration API</a> in order to retrieve registration status assertions for connected devices.</p>
+
+<p>The connection to the Device Registration Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_REGISTRATION</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="credentials-service-connection-configuration">Credentials Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/credentials/">Credentials API</a> in order to retrieve credentials stored for devices that needs to be authenticated. During connection establishment, the adapter uses the Credentials API to retrieve the credentials on record for the device and matches that with the credentials provided by a device.</p>
+
+<p>The connection to the Credentials Service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_CREDENTIALS</code>.</p>
+
+<p>The adapter caches the responses from the service according to the <em>cache directive</em> included in the response.
+If the response doesn’t contain a <em>cache directive</em> no data will be cached.</p>
+
+<h2 id="device-connection-service-connection-configuration">Device Connection Service Connection Configuration</h2>
+
+<p>The adapter requires a connection to an implementation of Hono’s <a href="/hono/docs/1.0/api/device-connection/">Device Connection API</a> in order to determine the gateway that a device is connected via to a protocol adapter. This information is required in order to forward commands issued by applications to the protocol adapter instance that the gateway is connected to.</p>
+
+<p>The connection to the Device Connection service is configured according to <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client Configuration</a>
+where the <code>${PREFIX}</code> is set to <code>HONO_DEVICECONNECTION</code>.</p>
+
+<p>Responses from the Device Connection service are never cached, so the properties for configuring the cache are ignored.</p>
+
+<h2 id="resource-limits-checker-configuration">Resource Limits Checker Configuration</h2>
+
+<p>The adapter can use metrics collected by a Prometheus server to enforce certain limits set at the tenant level like the overall number of connected devices allowed per tenant.</p>
+
+<p>The following table provides an overview of the configuration variables and corresponding command line options for configuring the checker.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">Environment Variable<br>Command Line Option</th>
+<th align="center">Mandatory</th>
+<th align="left">Default Value</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_HOST</code><br><code>--hono.resourceLimits.prometheusBased.host</code></td>
+<td align="center">no</td>
+<td align="left">none</td>
+<td align="left">The host name or IP address of the Prometheus server to retrieve the metrics data from. This property needs to be set in order to enable the Prometheus based checks.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_PORT</code><br><code>--hono.resourceLimits.prometheusBased.port</code></td>
+<td align="center">no</td>
+<td align="left"><code>9090</code></td>
+<td align="left">The port of the Prometheus server to retrieve metrics data from.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MIN_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMinSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>20</code></td>
+<td align="left">The minimum size of the cache to store the metrics data retrieved from the Prometheus server. The cache is used for storing the current amount of data exchanged with devices of tenants.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_MAX_SIZE</code><br><code>--hono.resourceLimits.prometheusBased.cacheMaxSize</code></td>
+<td align="center">no</td>
+<td align="left"><code>1000</code></td>
+<td align="left">The maximum size of the cache to store the metrics data retrieved from the Prometheus server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>HONO_RESOURCE_LIMITS_PROMETHEUS_BASED_CACHE_TIMEOUT</code><br><code>--hono.resourceLimits.prometheusBased.cacheTimeout</code></td>
+<td align="center">no</td>
+<td align="left"><code>600</code></td>
+<td align="left">The number of seconds after which the cached metrics data should be considered invalid.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="metrics-configuration">Metrics Configuration</h2>
+
+<p>See <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">Monitoring & Tracing Admin Guide</a> for details on how to configure the reporting of metrics.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+
diff --git a/docs/1.0/admin-guide/secure_communication/index.html b/docs/1.0/admin-guide/secure_communication/index.html
new file mode 100644
index 0000000..72e9e66
--- /dev/null
+++ b/docs/1.0/admin-guide/secure_communication/index.html
@@ -0,0 +1,2575 @@
+<!DOCTYPE html>
+<html lang="1.0" 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>Secure Communication :: Eclipse Hono™ Vers.: 1.0</title>
+
+
+ <link href="/hono/docs/css/nucleus.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/fontawesome-all.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hybrid.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/featherlight.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/perfect-scrollbar.min.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/auto-complete.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/theme.css?1581042223" rel="stylesheet">
+ <link href="/hono/docs/css/hugo-theme.css?1581042223" rel="stylesheet">
+
+ <link href="/hono/docs/css/theme-hono.css?1581042223" rel="stylesheet">
+
+
+ <script src="/hono/docs/js/jquery-2.x.min.js?1581042223"></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="Secure Communication :: Eclipse Hono&trade; Vers.: 1.0">
+<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="Secure Communication :: Eclipse Hono&trade; Vers.: 1.0" />
+<meta property="og:type" content="website" />
+<meta property="og:url" content="https://www.eclipse.org/hono/docs/1.0/admin-guide/secure_communication//" />
+<meta property="og:image" content="https://www.eclipse.org/hono/docs/images/twitter_image.png" />
+
+ </head>
+ <body class="" data-url="/hono/docs/1.0/admin-guide/secure_communication/">
+ <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?1581042223"></script>
+<script type="text/javascript" src="/hono/docs/js/auto-complete.js?1581042223"></script>
+<script type="text/javascript">
+
+ var baseurl = "https:\/\/www.eclipse.org\/hono\/docs\/\/1.0";
+
+</script>
+<script type="text/javascript" src="/hono/docs/js/search.js?1581042223"></script>
+
+
+ </div>
+
+ <div class="highlightable">
+ <ul class="topics">
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/" title="Concepts" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/concepts/">
+ <i class="far fa-lightbulb"></i> Concepts
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-identity/" title="Device Identity" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-identity/">
+ Device Identity
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/tenancy/" title="Multi-Tenancy" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/tenancy/">
+ Multi-Tenancy
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/device-notifications/" title="Device Notifications" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/device-notifications/">
+ Device Notifications
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/command-and-control/" title="Command & Control" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/command-and-control/">
+ Command & Control
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/resource-limits/" title="Resource limits" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/resource-limits/">
+ Resource limits
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/concepts/connection-events/" title="Connection Events" class="dd-item ">
+ <a href="/hono/docs/1.0/concepts/connection-events/">
+ Connection Events
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/" title="User Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/user-guide/">
+ <i class="fas fa-book-reader"></i> User Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/device-registry/" title="Device Registry" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/device-registry/">
+ Device Registry
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/http-adapter/" title="HTTP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/http-adapter/">
+ HTTP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/mqtt-adapter/" title="MQTT Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/mqtt-adapter/">
+ MQTT Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/amqp-adapter/" title="AMQP Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/amqp-adapter/">
+ AMQP Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/kura-adapter/" title="Kura Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/kura-adapter/">
+ Kura Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/sigfox-adapter/" title="Sigfox Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/sigfox-adapter/">
+ Sigfox Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/user-guide/jmeter_load_tests/" title="Load Tests with JMeter" class="dd-item ">
+ <a href="/hono/docs/1.0/user-guide/jmeter_load_tests/">
+ Load Tests with JMeter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/" title="Admin Guide" class="dd-item
+ parent
+
+
+ ">
+ <a href="/hono/docs/1.0/admin-guide/">
+ <i class="fas fa-sliders-h"></i> Admin Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/common-config/" title="Common Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/common-config/">
+ Common Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/auth-server-config/" title="Auth Server Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/auth-server-config/">
+ Auth Server Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-registry-config/" title="Device Registry Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-registry-config/">
+ Device Registry Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/device-connection-config/" title="Configuring the Device Connection Service" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/device-connection-config/">
+ Device Connection Service Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/http-adapter-config/" title="HTTP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">
+ HTTP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-adapter-config/" title="AMQP Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-adapter-config/">
+ AMQP Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/mqtt-adapter-config/" title="MQTT Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">
+ MQTT Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/kura-adapter-config/" title="Kura Adapter Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">
+ Kura Adapter Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/hono-client-configuration/" title="Hono Client Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">
+ Hono Client Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/amqp-network-config/" title="AMQP 1.0 Messaging Network Configuration" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/amqp-network-config/">
+ AMQP 1.0 Messaging Network Configuration
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/secure_communication/" title="Secure Communication" class="dd-item active">
+ <a href="/hono/docs/1.0/admin-guide/secure_communication/">
+ Secure Communication
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/admin-guide/monitoring-tracing-config/" title="Monitoring & Tracing" class="dd-item ">
+ <a href="/hono/docs/1.0/admin-guide/monitoring-tracing-config/">
+ Monitoring & Tracing
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/" title="Developer Guide" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/dev-guide/">
+ <i class="fas fa-tools"></i> Developer Guide
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/building_hono/" title="Building from Source" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/building_hono/">
+ Building from Source
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/java_client_consumer/" title="Consuming Messages from Java" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/java_client_consumer/">
+ Consuming Messages from Java
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/dev-guide/custom_http_adapter/" title="Implement a Custom Hono HTTP Protocol Adapter" class="dd-item ">
+ <a href="/hono/docs/1.0/dev-guide/custom_http_adapter/">
+ Implement a Custom Hono HTTP Protocol Adapter
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/" title="API" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/api/">
+ <i class='fas fa-plug'></i> API
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/telemetry/" title="Telemetry API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/telemetry/">
+ Telemetry API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/event/" title="Event API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/event/">
+ Event API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/command-and-control/" title="Command & Control API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/command-and-control/">
+ Command & Control API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/tenant/" title="Tenant API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/tenant/">
+ Tenant API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-connection/" title="Device Connection API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-connection/">
+ Device Connection API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/device-registration/" title="Device Registration API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/device-registration/">
+ Device Registration API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/credentials/" title="Credentials API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/credentials/">
+ Credentials API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/authentication/" title="Authentication API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/authentication/">
+ Authentication API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/management/" title="Device Registry Management API Specification" class="dd-item ">
+ <a href="/hono/docs/1.0/api/management/">
+ Device Registry Management API
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/api/metrics/" title="Metrics" class="dd-item ">
+ <a href="/hono/docs/1.0/api/metrics/">
+ Metrics
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/" title="Deployment" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/deployment/">
+ <i class="fas fa-shipping-fast"></i> Deployment
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/helm-based-deployment/" title="Helm based Deployment" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/helm-based-deployment/">
+ Helm based Deployment
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/openshift/" title="OpenShift / OKD" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/openshift/">
+ OpenShift / OKD
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/create-kubernetes-cluster/" title="Setting up a Kubernetes Cluster" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/create-kubernetes-cluster/">
+ Setting up a Kubernetes Cluster
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/deployment/resource-limitation/" title="Limiting Resource Usage" class="dd-item ">
+ <a href="/hono/docs/1.0/deployment/resource-limitation/">
+ Limiting Resource Usage
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+ </ul>
+
+ </li>
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/" title="Architecture" class="dd-item
+
+
+
+ ">
+ <a href="/hono/docs/1.0/architecture/">
+ <i class="fas fa-landmark"></i> Architecture
+
+ </a>
+
+
+ <ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/component-view/" title="Component View" class="dd-item ">
+ <a href="/hono/docs/1.0/architecture/component-view/">
+ Component View
+
+ </a>
+ </li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li data-nav-id="/hono/docs/1.0/architecture/auth/" title="Authentication/Authorization" class="dd-item ">
+ <a href="/hono/docs/1.0/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'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:
+ <div class="select-style">
+ <select id="select-language" onchange="location = this.value;">
+
+
+
+
+
+
+
+
+ <option id="stable" value="/hono/docs/admin-guide/secure_communication/">stable (1.1)</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="1.0" value="/hono/docs/1.0/admin-guide/secure_communication/" selected>1.0</option>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <option id="dev" value="/hono/docs/dev/admin-guide/secure_communication/">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>© 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>1.0</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/secure_communication.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/1.0/'>Documentation</a> > <a href='/hono/docs/1.0/admin-guide/'>Admin Guide</a> > Secure Communication
+
+
+
+
+
+
+
+ </span>
+ </div>
+
+ <div class="progress">
+ <div class="wrapper">
+<nav id="TableOfContents">
+<ul>
+<li>
+<ul>
+<li><a href="#enabling-tls">Enabling TLS</a>
+<ul>
+<li><a href="#auth-server">Auth Server</a></li>
+<li><a href="#dispatch-router">Dispatch Router</a></li>
+<li><a href="#device-registry">Device Registry</a></li>
+<li><a href="#http-adapter">HTTP Adapter</a></li>
+<li><a href="#mqtt-adapter">MQTT Adapter</a></li>
+<li><a href="#kura-adapter">Kura Adapter</a></li>
+<li><a href="#client-application">Client Application</a></li>
+</ul></li>
+<li><a href="#using-openssl">Using OpenSSL</a>
+<ul>
+<li><a href="#configuring-containers">Configuring Containers</a></li>
+</ul></li>
+</ul></li>
+</ul>
+</nav>
+ </div>
+</div>
+
+
+ </div>
+ </div>
+
+
+
+ <div id="body-inner">
+
+ <h1>Secure Communication</h1>
+
+
+
+
+
+<p>The individual components of an Eclipse Hono™ installation, e.g. the protocol adapters, <em>AMQP Messaging Network</em>, <em>Hono Auth</em> etc., and the clients attaching to Hono in order to send and receive data all communicate with each other using AMQP 1.0 over TCP. The Hono components and the clients will usually not be located on the same local network but will probably communicate over public networking infrastructure. For most use cases it is therefore desirable, if not necessary, to provide for confidentiality of the data being transferred between these components. This section describes how Hono supports confidentiality by means of <em>Transport Layer Security</em> (TLS) and how to configure it.</p>
+
+<h2 id="enabling-tls">Enabling TLS</h2>
+
+<p>All of Hono’s components can be configured to use TLS for establishing an encrypted communication channel with peers. When a client initiates a connection with a server, the TLS handshake protocol is used to negotiate parameters of a secure channel to be used for exchanging data. The most important of those parameters is a secret (symmetric) encryption key that is only known to the client and the server and which is used to transparently encrypt all data being sent over the connection as long as the connection exists. With each new connection, a new secret key is negotiated.</p>
+
+<p>Using TLS in this way requires configuring the server component with a cryptographic <em>private/public key</em> pair and a <em>certificate</em> which <em>binds</em> an <em>identity claim</em> to the public key. It is out of scope of this document to describe the full process of creating such a key pair and acquiring a corresponding certificate. The <code>demo-certs</code> module already contains a set of keys and certificates to be used for evaluation and demonstration purposes. Throughout the rest of this section we will use these keys and certificates . Please refer to the <code>demo-certs/README.md</code> file for details regarding how to create your own keys and certificates.</p>
+
+<p>Within a Hono installation the following communication channels can be secured with TLS:</p>
+
+<ol>
+<li>Applications connecting to <em>Dispatch Router</em> - Client applications consuming e.g. Telemetry data from Hono connect to the AMQP Messaging Network. This connection can be secured by configuring the client and the messaging network for TLS.</li>
+<li><em>Device Registry</em> connecting to <em>Auth Server</em> - The Device Registry connects to the Auth Server in order to verify client credentials and determine the client’s authorities. This (internal) connection can (should) be secured by configuring the Auth Server and Device Registry for TLS.</li>
+<li><em>Protocol Adapter</em> to <em>Device Registry</em> - A protocol adapter connects to the Device Registry in order to retrieve assertions regarding the registration status of devices. This (internal) connection can be secured by configuring the protocol adapter and the Device Registry for TLS.</li>
+<li><em>Protocol Adapter</em> connecting to <em>AMQP Messaging Network</em> - A protocol adapter connects to the messaging network in order to forward telemetry data and commands hence and forth between downstream components (client applications) and devices. This (internal) connection can be secured by configuring the Dispatch Router and the protocol adapters for TLS.</li>
+<li><em>Devices</em> connecting to a <em>Protocol Adapter</em> - Devices use TLS to both authenticate the protocol adapter and to establish an encrypted channel that provides integrity and privacy when transmitting data. Note that the specifics of if and how TLS can be used with a particular protocol adapter is specific to the transport protocol the adapter uses for communicating with the devices.</li>
+<li><em>Liveness/readiness probes</em> connecting to <em>Service Health Checks</em> - Systems like Kubernetes are periodically checking the health status of the individual services . This communication can be secured by configuring the health check of the individual services to expose a secure endpoint.</li>
+</ol>
+
+<h3 id="auth-server">Auth Server</h3>
+
+<p>The Auth Server supports the use of TLS for connections to clients. Please refer to the <a href="/hono/docs/1.0/admin-guide/auth-server-config/">Auth Server admin guide</a> for details regarding the required configuration steps.</p>
+
+<p>The <code>demo-certs/certs</code> folder includes the following demo keys and certificates to be used with the Auth Server for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>auth-server-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>auth-server-cert.pem</code></td>
+<td align="left">The example certificate asserting the server’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="dispatch-router">Dispatch Router</h3>
+
+<p>The Dispatch Router reads its configuration from a file on startup (the default location is <code>/etc/qpid-dispatch/qdrouterd.conf</code>). Please refer to the <a href="https://qpid.apache.org/components/dispatch-router/index.html">Dispatch Router documentation</a> for details regarding the configuration of TLS/SSL.</p>
+
+<p>The <code>demo-certs/certs</code> folder includes the following demo keys and certificates to be used with the Dispatch Router for that purpose:</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>qdrouter-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>qdrouter-cert.pem</code></td>
+<td align="left">The example certificate asserting the server’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="device-registry">Device Registry</h3>
+
+<p>The Device Registry supports the use of TLS for connections to protocol adapters and the Auth Server.
+Please refer to the <a href="/hono/docs/1.0/admin-guide/device-registry-config/">Device Registry admin guide</a> for details regarding the required configuration steps.</p>
+
+<p>The <code>demo-certs/certs</code> folder contains the following demo keys and certificates to be used with the Device Registry for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>auth-server-cert.pem</code></td>
+<td align="left">The certificate of the Auth Server, used to verify the signatures of tokens issued by the Auth Server.</td>
+</tr>
+
+<tr>
+<td align="left"><code>device-registry-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>device-registry-cert.pem</code></td>
+<td align="left">The example certificate asserting the server’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="http-adapter">HTTP Adapter</h3>
+
+<p>The HTTP adapter supports the use of TLS for its connections to the Tenant service, the Device Registration service, the Credentials service and the AMQP Messaging Network. The adapter also supports the use of TLS for connections with devices. For this purpose, the adapter can be configured with a server certificate and private key.
+Please refer to the <a href="/hono/docs/1.0/admin-guide/http-adapter-config/">HTTP adapter admin guide</a> for details regarding the required configuration steps.</p>
+
+<p>The <code>demo-certs/certs</code> folder contains the following demo keys and certificates to be used with the HTTP adapter for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>http-adapter-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>http-adapter-cert.pem</code></td>
+<td align="left">The example certificate asserting the adapter’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="mqtt-adapter">MQTT Adapter</h3>
+
+<p>The MQTT adapter supports the use of TLS for its connections to the Tenant service, the Device Registration service, the Credentials service and the AMQP Messaging Network. The adapter also supports the use of TLS for connections with devices. For this purpose, the adapter can be configured with a server certificate and private key.
+Please refer to the <a href="/hono/docs/1.0/admin-guide/mqtt-adapter-config/">MQTT adapter admin guide</a> for details regarding the required configuration steps.</p>
+
+<p>The <code>demo-certs/certs</code> folder contains the following demo keys and certificates to be used with the MQTT adapter for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>mqtt-adapter-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>mqtt-adapter-cert.pem</code></td>
+<td align="left">The example certificate asserting the adapter’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="kura-adapter">Kura Adapter</h3>
+
+<p>The Kura adapter supports the use of TLS for its connections to the Tenant service, the Device Registration service, the Credentials service and the AMQP Messaging Network. The adapter also supports the use of TLS for connections with devices. For this purpose, the adapter can be configured with a server certificate and private key.
+Please refer to the <a href="/hono/docs/1.0/admin-guide/kura-adapter-config/">Kura adapter admin guide</a> for details regarding the required configuration steps.</p>
+
+<p>The <code>demo-certs/certs</code> folder contains the following demo keys and certificates to be used with the Kura adapter for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>kura-adapter-key.pem</code></td>
+<td align="left">The example private key for creating signatures.</td>
+</tr>
+
+<tr>
+<td align="left"><code>kura-adapter-cert.pem</code></td>
+<td align="left">The example certificate asserting the adapter’s identity.</td>
+</tr>
+
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h3 id="client-application">Client Application</h3>
+
+<p>When the connection between an application client and Hono (i.e. the Dispatch Router) is supposed to be secured by TLS (which is a good idea),
+then the client application needs to be configured to trust the CA that signed the Dispatch Router’s certificate chain.
+Clients can use the <code>org.eclipse.hono.client.HonoConnection.newConnection(ClientConfigProperties)</code> method to establish a connection
+to Hono. The <code>org.eclipse.hono.config.ClientConfigProperties</code> instance passed in to the method needs to be configured
+with the trust store containing the CA’s certificate.
+Please refer to the <a href="/hono/docs/1.0/admin-guide/hono-client-configuration/">Hono Client configuration guide</a> for details regarding the
+corresponding configuration properties that need to be set.</p>
+
+<p>The <code>demo-certs/certs</code> folder contains the following demo keys to be used with client applications for that purpose.</p>
+
+<table>
+<thead>
+<tr>
+<th align="left">File</th>
+<th align="left">Description</th>
+</tr>
+</thead>
+
+<tbody>
+<tr>
+<td align="left"><code>trusted-certs.pem</code></td>
+<td align="left">Trusted CA certificates to use for verifying signatures.</td>
+</tr>
+</tbody>
+</table>
+
+<h2 id="using-openssl">Using OpenSSL</h2>
+
+<p>Hono’s individual services are implemented in Java and therefore, by default, use the SSL/TLS engine that comes with the Java Virtual Machine that the services are running on. In case of the Docker images provided by Hono this is the SSL engine of OpenJDK. While the standard SSL engine has the advantage of being a part of the JVM itself and thus being available on every operating system that the JVM is running on without further installation, it provides only limited performance and throughput when compared to native TLS implementations like <a href="https://www.openssl.org/">OpenSSL</a>.</p>
+
+<p>In order to address this problem, the Netty networking library that is used in Hono’s components can be configured to employ the OpenSSL instead of the JVM’s SSL engine by means of Netty’s <a href="http://netty.io/wiki/forked-tomcat-native.html">Forked Tomcat Native</a> (tcnative) module.</p>
+
+<p>The tcnative module comes in several flavors, corresponding to the way that the OpenSSL library has been linked in. The statically linked versions include a specific version of OpenSSL (or <a href="https://boringssl.googlesource.com/">BoringSSL</a> for that matter) and is therefore most easy to use on supported platforms, regardless of whether another version of OpenSSL is already installed or not. In contrast, the dynamically linked variants depend on a particular version of OpenSSL being already installed on the operating system. Both approaches have their pros and cons and Hono therefore does not include tcnative in its Docker images by default, i.e. Hono’s services will use the JVM’s default SSL engine by default.</p>
+
+<h3 id="configuring-containers">Configuring Containers</h3>
+
+<p>When starting up any of Hono’s Docker images as a container, the JVM will look for additional jar files to include in its classpath in the container’s <code>/opt/hono/extensions</code> folder. Thus, using a specific variant of tcnative is just a matter of configuring the container to mount a volume or binding a host folder at that location and putting the desired variant of tcnative into the corresponding volume or host folder.r
+Assuming that the Auth Server should be run with the statically linked, BoringSSL based tcnative variant, the following steps are necessary:</p>
+
+<ol>
+<li><a href="http://netty.io/wiki/forked-tomcat-native.html#how-to-download-netty-tcnative-boringssl-static">Download tcnative</a> matching the platform architecture (<em>linux-x86_64</em>).</li>
+<li>Put the jar file to a folder on the Docker host, e.g. <code>/tmp/tcnative</code>.</li>
+
+<li><p>Start the Auth Server Docker image mounting the host folder:</p>
+
+<pre><code class="language-sh">docker run --name hono-auth-server --mount type=bind,src=/tmp/tcnative,dst=/opt/hono/extensions,ro ... eclipse/hono-service-auth
+</code></pre></li>
+</ol>
+
+<p>Note that the command given above does not contain the environment variables and secrets that are usually required to configure the service properly.</p>
+
+<p>When the Auth Server starts up, it will look for a working variant of tcnative on its classpath and (if found) use it for establishing TLS connections. The service’s log file will indicate whether the JVM’s default SSL engine or OpenSSL is used.</p>
+
+<p>Using a Docker <em>volume</em> instead of a <em>bind mount</em> works the same way but requires the use of <code>volume</code> as the <em>type</em> of the <code>--mount</code> parameter. Please refer to the <a href="https://docs.docker.com/edge/engine/reference/commandline/service_create/#add-bind-mounts-volumes-or-memory-filesystems">Docker reference documentation</a> for details.</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?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.min.js?1581042223"></script>
+ <script src="/hono/docs/js/perfect-scrollbar.jquery.min.js?1581042223"></script>
+ <script src="/hono/docs/js/jquery.sticky.js?1581042223"></script>
+ <script src="/hono/docs/js/featherlight.min.js?1581042223"></script>
+ <script src="/hono/docs/js/html5shiv-printshiv.min.js?1581042223"></script>
+ <script src="/hono/docs/js/highlight.pack.js?1581042223"></script>
+ <script>hljs.initHighlightingOnLoad();</script>
+ <script src="/hono/docs/js/modernizr.custom.71422.js?1581042223"></script>
+ <script src="/hono/docs/js/learn.js?1581042223"></script>
+ <script src="/hono/docs/js/hugo-learn.js?1581042223"></script>
+
+ <link href="/hono/docs/mermaid/mermaid.css?1581042223" type="text/css" rel="stylesheet" />
+ <script src="/hono/docs/mermaid/mermaid.js?1581042223"></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>
+