diff --git a/src/main/docker/kibana/Dockerfile b/src/main/docker/kibana/Dockerfile
index 9962fe3..21e8925 100644
--- a/src/main/docker/kibana/Dockerfile
+++ b/src/main/docker/kibana/Dockerfile
@@ -23,8 +23,11 @@
 
 FROM  docker.elastic.co/kibana/kibana-oss:6.6.2
 
+# Search Guard plugin
+RUN kibana-plugin install https://repo1.maven.org/maven2/com/floragunn/search-guard-kibana-plugin/6.6.2-18.4/search-guard-kibana-plugin-6.6.2-18.4.zip
+
 MAINTAINER "The Onap Team"
-LABEL Description="Kibana image with saved objects loading"
+LABEL Description="Kibana image with saved objects loading and Search Guard support"
 USER root
 RUN yum install -y python-requests && yum clean all
 
diff --git a/src/main/docker/kibana/backup.py b/src/main/docker/kibana/backup.py
index a2dab22..b1e4518 100755
--- a/src/main/docker/kibana/backup.py
+++ b/src/main/docker/kibana/backup.py
@@ -48,7 +48,7 @@
                               ' matching a configuration item that should be written.'
                               ' Files already in the folder that do not match are'
                               ' left as-is.'))
-    parser.add_argument('-H', '--kibana-host', default='http://localhost:5601',
+    parser.add_argument('-H', '--kibana-host', default='https://localhost:5601',
                         help='Kibana endpoint.')
 
     return parser.parse_args(args)
@@ -68,7 +68,7 @@
 
     # get list of the set of objects we update
     url = "%s/api/saved_objects/_find" % (args.kibana_host.rstrip("/"),)
-    saved_objects_req = requests.get(url,
+    saved_objects_req = requests.get(url, auth=('admin', 'admin'), verify=False,
                                      params={'per_page': PER_PAGE,'type':['config','search','dashboard','visualization','index-pattern']})
 
     saved_objects = saved_objects_req.json()['saved_objects']
diff --git a/src/main/docker/kibana/restore.py b/src/main/docker/kibana/restore.py
index 70f430c..eee2e6b 100755
--- a/src/main/docker/kibana/restore.py
+++ b/src/main/docker/kibana/restore.py
@@ -53,7 +53,7 @@
                               (','.join(OBJECT_TYPES[:-1]), OBJECT_TYPES[-1])
                              )
                        )
-    parser.add_argument('-H', '--kibana-host', default='http://localhost:5601',
+    parser.add_argument('-H', '--kibana-host', default='https://localhost:5601',
                         help='Kibana endpoint.')
     parser.add_argument('-f', '--force', action='store_const',
                         const=True, default=False,
@@ -98,7 +98,7 @@
             logger.info('Restoring %s id:%s (overwrite:%s)', obj_type, obj_id, args.force)
             url = "%s/api/saved_objects/%s/%s" % (args.kibana_host.rstrip("/"), obj_type, obj_id)
             params = {'overwrite': True} if args.force else {}
-            post_object_req = requests.post(url,
+            post_object_req = requests.post(url, auth=('admin', 'admin'), verify=False,
                                             headers={'content-type': 'application/json',
                                                      'kbn-xsrf': 'True'},
                                             params=params,
