# Elastic search security

**URL:** <https://discuss.elastic.co/t/elastic-search-security/184671>\
**Category:** Kibana\
**Tags:** elastic-stack-security\
**Created:** [June 6, 2019, 10:14pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671 "2019-06-06T22:14:25Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 10:14pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/1 "2019-06-06T22:14:25Z")

</div>

Hi

On rest /api/security/v1/users

I'm getting :  
{"statusCode":403,"error":"Forbidden","message":"Access is denied because Security is disabled in Elasticsearch."}

But i did everything according to security docs.

I have xpack.security.enabled: true and others.

How can i debug the root cause ?

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 10:20pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/2 "2019-06-06T22:20:58Z")

</div>

Moreover - on url /\_security/\_authenticate?pretty

I'm getting more detailed info:  
"Security must be explicitly enabled when using a trial license. Enable security by setting [xpack.security.enabled] to [true] in the elasticsearch.yml file and restart the node."

But i really have this option enabled ...

---

<div class="post-metadata">

**Author:** ![lukeelmers](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/lukeelmers/32/35230_2.png) [@lukeelmers](https://discuss.elastic.co/u/lukeelmers)\
**Post date:** [June 6, 2019, 10:36pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/3 "2019-06-06T22:36:59Z")

</div>

Hi @Piotr_Komisarski, Which version of the Elastic Stack are you using? I assume you've updated `xpack.security.enabled` in the `elasticsearch.yml` on each of your nodes, and performed a restart of each?

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 10:39pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/4 "2019-06-06T22:39:40Z")

</div>

7.0.1.

Yes - everything was restarted

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 10:42pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/5 "2019-06-06T22:42:04Z")

</div>

Stacktrace:

org.elasticsearch.ElasticsearchException: Security must be explicitly enabled when using a trial license. Enable security by setting [xpack.security.enabled] to [true] in the elasticsearch.yml file and restart the node.  
at org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler.checkFeatureAvailable(SecurityBaseRestHandler.java:75) ~[?:?]  
at org.elasticsearch.xpack.security.rest.action.SecurityBaseRestHandler.prepareRequest(SecurityBaseRestHandler.java:51) ~[?:?]  
at org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:92) [elasticsearch-7.0.1.jar:7.0.1]  
at org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleRequest(SecurityRestFilter.java:69) [x-pack-security-7.0.1.jar:7.0.1]  
at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:240) [elasticsearch-7.0.1.jar:7.0.1]  
at org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:337) [elasticsearch-7.0.1.jar:7.0.1]  
at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:174) [elasticsearch-7.0.1.jar:7.0.1]

---

<div class="post-metadata">

**Author:** ![Brandon\_Kobel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/brandon_kobel/32/14829_2.png) [@Brandon\_Kobel](https://discuss.elastic.co/u/Brandon_Kobel)\
**Post date:** [June 6, 2019, 11:18pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/6 "2019-06-06T23:18:57Z")

</div>

Hey @Piotr_Komisarski, that should be all that is required to enable security in Elasticsearch. If you try to curl `http://localhost:9200` what do you get back?

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 11:29pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/7 "2019-06-06T23:29:20Z")

</div>

{  
"name" : "elk",  
"cluster\_name" : "elasticsearch",  
"cluster\_uuid" : "lmBMkDs0TXq-V--NLYXEqA",  
"version" : {  
"number" : "7.0.1",  
"build\_flavor" : "default",  
"build\_type" : "tar",  
"build\_hash" : "e4efcb5",  
"build\_date" : "2019-04-29T12:56:03.145736Z",  
"build\_snapshot" : false,  
"lucene\_version" : "8.0.0",  
"minimum\_wire\_compatibility\_version" : "6.7.0",  
"minimum\_index\_compatibility\_version" : "6.0.0-beta1"  
},  
"tagline" : "You Know, for Search"  
}

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 11:39pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/8 "2019-06-06T23:39:01Z")

</div>

Not sure if this is relevant, but during startup i have this info in log:

[2019-06-06T23:35:39,630][INFO][o.e.p.PluginsService] [elk] loaded module [x-pack-security]

---

<div class="post-metadata">

**Author:** ![TimV](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/timv/32/13162_2.png) [@TimV](https://discuss.elastic.co/u/TimV)\
**Post date:** [June 6, 2019, 11:42pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/9 "2019-06-06T23:42:22Z")

</div>

Please post your `elasticsearch.yml` here.  
It looks like something is wrong there, but we won't be able to debug it by guessing.

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 6, 2019, 11:45pm UTC](https://discuss.elastic.co/t/elastic-search-security/184671/10 "2019-06-06T23:45:46Z")

</div>

RIght now the only uncommented line is:

xpack.security.enabled: true

---

<div class="post-metadata">

**Author:** ![TimV](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/timv/32/13162_2.png) [@TimV](https://discuss.elastic.co/u/TimV)\
**Post date:** [June 7, 2019, 3:05am UTC](https://discuss.elastic.co/t/elastic-search-security/184671/11 "2019-06-07T03:05:51Z")

</div>

Are you 100% sure that you're editing the correct file?  
I've never seen this occur before, so it feels like the cause it likely to be enviromental.

Can you provide the output of:

```auto
curl 'http://localhost:9200/_xpack'

```

and

```auto
curl 'http://localhost:9200/_cluster/settings?include_defaults=true&pretty' | grep -A12 '"security"'

```

---

<div class="post-metadata">

**Author:** ![Piotr\_Komisarski](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/piotr_komisarski/32/47685_2.png) [@Piotr\_Komisarski](https://discuss.elastic.co/u/Piotr_Komisarski)\
**Post date:** [June 7, 2019, 9:45am UTC](https://discuss.elastic.co/t/elastic-search-security/184671/12 "2019-06-07T09:45:26Z")

</div>

Hi

Sorry for this, but I was changing incorrect .yml file.

I'm using elk from docker image and there are 2 files:

- /opt/elasticsearch/config/elasticsearch.yml
- /etc/elasticsearch/elasticsearch.yml

But since we're here i have a question:  
In some documentation there is a statement:

_The `elastic` user is a superuser . We don't recommend using it for any purpose other than administering the system._

From this reason i have rather easy password for elastic. I want to expose kibana to the world so how can i disable elastic user from login to kibana ?

---

<div class="post-metadata">

**Author:** ![TimV](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/timv/32/13162_2.png) [@TimV](https://discuss.elastic.co/u/TimV)\
**Post date:** [June 7, 2019, 10:30am UTC](https://discuss.elastic.co/t/elastic-search-security/184671/13 "2019-06-07T10:30:52Z")

</div>

> [@Piotr\_Komisarski](#):
>
> I want to expose kibana to the world so how can i disable elastic user from login to kibana ?

There is no way to do that.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2019, 10:31am UTC](https://discuss.elastic.co/t/elastic-search-security/184671/14 "2019-07-05T10:31:03Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
