Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add default Elasticsearch credentials to docs #72617

Merged
merged 6 commits into from
Jul 26, 2020
Merged

Conversation

sorenlouv
Copy link
Member

@sorenlouv sorenlouv commented Jul 21, 2020

There are currently no credentials to be found in the contributor docs making it harder to get started.

@apmmachine
Copy link
Contributor

apmmachine commented Jul 21, 2020

💚 Build Succeeded

Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Build Cause: [Pull request #72617 updated]

  • Start Time: 2020-07-21T12:20:37.576+0000

  • Duration: 5 min 46 sec

@sorenlouv sorenlouv added release_note:plugin_api_changes Contains a Plugin API changes section for the breaking plugin API changes section. v8.0.0 labels Jul 21, 2020
@@ -13,7 +13,7 @@ This will run a snapshot of {es} that is usually built nightly. Read more about
----
yarn es snapshot
----

The default credentials are `elastic:changeme` (superuser) and `kibana_system:changeme` when connecting from Kibana.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think some additional context could be helpful about the difference between the two and when to use which.

Suggested change
The default credentials are `elastic:changeme` (superuser) and `kibana_system:changeme` when connecting from Kibana.
By default, two users are added to Elasticsearch:
- A superuser with username: `elastic` and password: `changeme`, which can be used to log into Kibana with.
- A user with username: `kibana_system` and password `changeme`. This is what the Kibana system uses to access certain capabilities, even when the logged in user lacks access. These credentials aren't meant to be used by a real user. They can be configured via the kibana.yml file. Read more: <<using-kibana-with-security>>.

@legrego - is what I wrote accurate?

Just a suggestion!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's true enough for now, but we do want to change this in the future: #52036

Running with the elastic user makes it too easy for engineers to develop features which require privileges they aren't aware of, thereby reducing the utility of Feature Controls. Requiring privileges beyond what the Kibana Privilege model permits also leads to frustrating defects, and an even more frustrating user experience.

Ideally, we want to get to a place where we provision feature-specific users and roles for engineers to use on startup, but we aren't there yet.

A user with username: kibana_system and password changeme. This is what the Kibana system uses to access certain capabilities, even when the logged in user lacks access. These credentials aren't meant to be used by a real user. They can be configured via the kibana.yml file. Read more: <>.

I'd maybe go with something more direct. What do you think about:

A user with username: kibana_system and password changeme. This account is used by the Kibana server to authenticate itself to Elasticsearch, and to perform certain actions on behalf of the end user. These credentials should be specified in your kibana.yml as described in <<using-kibana-with-security>>

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the suggestions both! Which suggestion should I go with? :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@legregos ! :D

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done!

Copy link
Member Author

@sorenlouv sorenlouv Jul 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The text "A user with username: kibana_system and password changeme." seems like it's missing something. Shouldn't it be "A user with username: kibana_system and password changeme exists" or "The credentials for connecting to Elasticsearch with Kibana are kibana_system / changeme"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it makes sense grammatically because it's a bullet point following the top sentence.

By default, two users are added to Elasticsearch:
  - A superuser.
  - A Kibana system user.

Larry's suggestion was just to change the text of the second bullet point (I believe anyway).

By default, two users are added to Elasticsearch:
  - A superuser with username: `elastic` and password: `changeme`, which can be used to log into Kibana with.
  - A user with username: `kibana_system` and password `changeme`. This account is used by the Kibana server to authenticate itself to Elasticsearch, and to perform certain actions on behalf of the end user. These credentials should be specified in your kibana.yml as described in <<using-kibana-with-security>>

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh, now it clicks. Thank you! :)

@sorenlouv sorenlouv merged commit 9656cbc into master Jul 26, 2020
@sorenlouv sorenlouv deleted the add-default-credentials branch July 26, 2020 22:45
@sorenlouv sorenlouv added the backport:skip This commit does not require backporting label Jul 26, 2020
gmmorris added a commit to gmmorris/kibana that referenced this pull request Jul 27, 2020
* master: (111 commits)
  Remove flaky note from gauge tests (elastic#73240)
  Convert functional vega tests to ts and unskip tests (elastic#72238)
  [Graph] Unskip graph tests (elastic#72291)
  Add default Elasticsearch credentials to docs (elastic#72617)
  [APM] Read body from indicesStats in upload-telemetry-data (elastic#72732)
  The directory in the command was missing the /generated directory and would cause all definitions to be regenerated in the wrong place. (elastic#72766)
  [KP] use new ES client in SO service (elastic#72289)
  [Security Solution][Exceptions] Prevents value list entries from co-existing with non value list entries (elastic#72995)
  Return EUI CSS to Shareable Runtime (elastic#72990)
  Removed useless karma test (elastic#73190)
  [INGEST_MANAGER] Make package config name blank for endpoint on Package Config create (elastic#73082)
  [Ingest Manager] Support DEGRADED state in fleet agent event (elastic#73104)
  [Security Solution][Detections] Change detections breadcrumb title (elastic#73059)
  [ML] Fixing unnecessary deleting job polling (elastic#73087)
  [ML] Fixing recognizer wizard create job button (elastic#73025)
  [Composable template] Preview composite template (elastic#72598)
  [Uptime] Use manual intervals for ping histogram (elastic#72928)
  [Security Solution][Endpoint] Task/policy save modal text change, remove duplicate policy details text (elastic#73130)
  [Maps] fix tile layer attibution text and attribution link validation errors (elastic#73160)
  skip ingest pipeline api tests
  ...
@sorenlouv sorenlouv added release_note:skip Skip the PR/issue when compiling release notes and removed release_note:plugin_api_changes Contains a Plugin API changes section for the breaking plugin API changes section. labels Dec 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:skip This commit does not require backporting release_note:skip Skip the PR/issue when compiling release notes v8.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants