Commit graph

174 commits

Author SHA1 Message Date
Matthew Kime
b491d8790a
Management: EUI Navigation sidebar (#25905)
* partial work - sidebar works, need to address rendering issues

* rendering fixes

* refactor sidenav into its own file

* refactor sidenav into its own file

* remove unneeded changes

* remove unneeded formatting changes

* remove unneeded formatting changes

* remove unneeded formatting changes

* remove unneeded formatting changes

* remove more unneeded EuiPage

* remove more unneeded EuiPage

* snap snap

* remove unused dependencies

* functional tests

* sidebar tweaks, beats-cm

* lint

* properly sharing UI code

* fix eui export

* type fixes

* add test

* add test

* testy test

* partial progress

* attmpt to fix functional test

* from merge

* snap snap

* clean up management for side nav changes

* functional test fix

* snap, blank landing

* snap snap

* change management item order

* test fix

* disable tslint line

* ts fix

* functional test fix

* functional test fixes

* fix functional test

* minor cleanup

* simplify management registry callback

* remove comment

* react island with kibana version

* merge

* fix scss reference

* fix types

* remove mistaken commit

* remove k7 switch

* snapshot update

* fix sidebar nav headers

* landing page copy

* remove dummy text

* merge

* i18n and revert unneeded change

* Update edit_role_page.tsx

* i18n

* i18n

* snap snap

* better text

* snap snap

* mergi

* pop open nav on mobile

* add management section tests

* NOTICE

* fix subhead text, add padding to bottom of management nav

* Update sidebar_nav.tsx

* merge merge

* fix sass lint
2019-01-03 17:09:42 -06:00
Chandler Prall
23037a3760
Add SCSS linting (#27328)
* scss linting POC

* update yarn.lock

* Include sass linting alongside es/ts lint tasks

* fix linting errors

* replace unceccessary selector on rollup creation
2019-01-03 09:01:43 -07:00
Nathan Reese
20ff1f64ca
EUI 6.0.1 (#27787)
* EUI 6.0.1

* update snapshots
2018-12-26 14:30:27 -07:00
Spencer
b807b09f04
[uiExports/styleSheetPaths] avoid string concatenation for paths (#27471) 2018-12-20 14:58:13 -08:00
Tal Levy
88aa1434b5
Add ILM privileges (#27461)
This commit adds the `manage_ilm`, `read_ilm` cluster
privileges, and the `manage_ilm` index privilege.

these were introduced into ES by:
https://github.com/elastic/elasticsearch/pull/36493
2018-12-20 08:53:46 -08:00
Court Ewing
948932ae45
[security] Token auth provider (#26997)
* [security] Token auth provider

From a user perspective, the token provider behaves similarly to the
basic provider in that it can power the native login experience and can
also be used for API calls via the authorization header (albeit with the
Bearer realm).

From a technical perspective, the token provider deals with
authentication via the token service in Elasticsearch, so while it
handles user credentials in the case of login, a temporary, refreshable
access token is stored in the session cookie instead. This means that
when you log out, not only is the cookie invalidated, but the token
itself cannot be reused.

* token provider integration tests

* include token api integration tests by default

* remove unused ProviderOptions from typedef

* assert that valid login sets an authorization header

* unit tests for refresh token and failure cases

* integration tests for headers and sessions

* clean up login/logout tests for consistent setup functions

* test for header rejection scenarios
2018-12-19 11:13:29 -05:00
dave.snider@gmail.com
a94fd11a3e
EUI 5.8.1 comes with a brand color refresh. Also removes lots of KUI (#27009)
EUI 5.7.0 had a color refresh which switched around our palette to better match branding guidelines. Hex colors are still hard coded in large parts of Kibana so most of the changes not in kbn/ui-framework are simple shifts to match that styling.
2018-12-18 10:59:31 -08:00
Leanid Shutau
eefde19a7f
[I18n] Update locale data for IntlRelativeFormat and IntlMessageFormat (#26468)
* [I18n] Update locale data for IntlRelativeFormat and IntlMessageFormat

* Update locales

* Add default relative formats

* Fix en locale formats

* Update readme

* Make setFormats public

* Update snapshots

* Resolve comments

* Update locales list

* Update snapshots

* Add locale data for pseudo-locale
2018-12-18 13:25:16 +03:00
Larry Gregory
ed1c932d4e
fix DLS query toggle (#27213) 2018-12-14 12:11:20 -05:00
Chandler Prall
cb48cd6432
update eui to 5.6.1 (#27145) 2018-12-13 14:38:53 -07:00
Court Ewing
ded70631aa
[security] Support alternate auth providers for login (#26979)
Login is no longer coupled directly to our basic auth provider, so
alternative auth providers can now be used with our standard login flow.
The LoginAttempt request service is the mechanism for auth providers to
integrate with the login flow.
2018-12-12 19:22:43 -05:00
Brandon Kobel
4e684c7b7e
Redirecting to /, instead of /login, on the successfully logged out page (#26999)
We're using the successfully logged out page with the SAML provider
currently, so redirecting to the /login page is problematic since they
won't be able to login using this url. Instead, we're redirecting them
to '/' so that the auth providers can figure out what to do.
2018-12-12 11:31:07 -08:00
Maryia Lapata
a67cb98839
[i18n] Optimize translation labels for Roles page (#26945)
* [i18n] Optimize translation labels

* Usage of ng-if instead of ng-show
2018-12-12 15:32:44 +03:00
Brandon Kobel
774ce42242
Fixing issues with the url.search being null in Node 10 (#26992)
Node 10 uses `null` to denote the non-existence of a querystring
parameter when `url.parse(urlString, true)` is used, the following
changes fix our usages within the security plugin.
2018-12-11 16:30:00 -08:00
Larry Gregory
f401d031b0
Only show change password form when a password change is possible (#26779)
* only show change password form when a password change is possible

* cleanup

* remove test code

* improved message
2018-12-11 07:35:31 -05:00
Court Ewing
4d0424529e
Fail out of auth flow on first provider failure (#26648)
In practical terms, the flexibility afforded by providers being able to
recover from the failures of previously configured providers isn't
compelling, but the ambiguity is not ideal.
2018-12-10 20:55:07 -05:00
Bhavya RM
7e0207385b
fixing a11y errors so we can add a11y rules for tslint (#26902) 2018-12-10 13:06:19 -05:00
Tiago Costa
45a67701f2
Upgrade to NodeJS 10 (#25157)
* feat(NA): upgrade node js version on file configs.

* chore(NA): migrate configs and 3rd party dependencies to work on node js 10.x

* fix(NA): add missing async function declaration.

* chore(NA): updated elastic/good package to work with node10

* chore(NA): update lockfiles.

* fix(NA): add missing dep.

* fix(NA): types for node 10.

* test(NA): fix error return type for node10.

* fix(NA): kbn-pm webpack config to unlazy a require using lazy-cache. fix(NA): build to work with node 10.

* test(NA): jest integration test for kbn-pluin-helpers.

* test(NA): fix jest tests for kbn-es.

* fix(NA): use ostmpdir instead of a tmp folder inside the fixtures.

* fix(NA): change afterEach on kbn es decompress test.

* fix(NA): change afterEach on kbn es decompress test.

* fix(NA): readd mock-fs for the tests that still use it on kbn-es and that works on node10.

* fix(NA): readd mock-fs for the tests that still use it on kbn-es and that works on node10.

* refact(NA): rewrite tests using mock-fs and completely remove this dependency.

* fix(NA): failing test implementation using jest mock in order to replace mock-fs.

* fix(NA): update jest snapshots to match new ones generated one node 10.

* fix(NA): cli/cluster mock to spyOn off method instead off spyOn removeListener as this was changed on Node 10.

* fix(NA): tests for cluster_manager to also spyOn off and on instead of addListener and removeListener

* test(NA): fix management advance settings image field test flow.

* fix(NA): apply missing types for src/core/server/plugins/discovery/plugins_discovery.ts.

* test(NA): updated 2 missing snapshots for KuiCodeEditor on kbn-ui-framework.

* refact(NA): fix eslint errors.

* refact(NA): fix ts code with tslint fix. chore(NA): update jest snapshots.

* chore(NA): migrate kbn config schema peer dependency to last used joi version to avoid warning on bootstrap.

* fix(NA): tslint errors.

* chore(NA): upgrade types node to the last version.

* fix(NA): missing utf8 input format encoding when reading a file.

* chore(NA): upgrade to node 10.14.1

* fix(NA): Buffer api usage to avoid deprecation warnings.
2018-12-10 17:41:51 +00:00
Chris Koehnke
153deef3fc
Fix Elasticsearch typo on connection error screen (#26815)
`Elastiscearch` -> `Elasticsearch`.
2018-12-07 12:45:32 -05:00
Court Ewing
84f9638b87
Update token API calls in elaticsearch.js (#26650) 2018-12-06 11:59:10 -05:00
tibmt
9c022d8b6a [i18n] Translate Security -> Account and Nav control components (#26011)
* translate login/logout visualization component

* Update login/logout component - change injecti18n name to injectI18n

* Update login/logout component - make needed changes

* update one snapshot

* update login translation

* update one snapshot

* Fix

* Fix unit test

* Localize logout tooltip
2018-12-05 13:15:47 +03:00
Spencer
f524e9efce
[management/security] implement k7Breadcrumbs (#26603)
## Summary

This PR updates the security management routes to provide k7Breadcrumbs used by the new header navigation. See #25884 for general information about the integration with the router and #25689 for the breadcrumb taxonomy

![2018-12-03 19 05 40](https://user-images.githubusercontent.com/1329312/49416328-764b4200-f72e-11e8-9db7-aeb1294d131b.gif)

### Checklist

- [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/master/packages/kbn-i18n/README.md)
2018-12-04 11:16:09 -08:00
tibmt
3a02de7250 translate login/logout visualization component part 2 (#26082)
* translate login/logout visualization component part 2

* Update login translation part 2 - change FormattedMessage to intl.formatMessage

* change some ids

* update Infra Ops Part 2 - directly wrap some classes by injectI18n()

* update one snapshot

* update one snapshot

* update tests

* update collapsible_panel.test.tsx

* update one snapshot

* update one test

* change some code

* update one snapshot

* update roles.html

* Fix unit tests

* Fix message
2018-12-04 13:54:38 +03:00
Larry Gregory
f70776fed8
updates GET /api/security/role to sort on role name (#26491) 2018-12-03 11:31:21 -05:00
Larry Gregory
884e670b8f
fixes documentation links for ES role privileges (#26466) 2018-12-03 11:30:35 -05:00
Leanid Shutau
c800f8d592
[I18n] Support interpreting individual i18n-values as html or text-only (#26274)
* [I18n] Add attribute for interpreting i18n-values as html or text-only

* Switch over to html_ prefixed values solution

* Update readme
2018-11-30 17:48:46 +03:00
Brandon Kobel
7caa727a0a
Respect the basePath for the link to the user profile in the k7 header (#26417) 2018-11-29 08:00:14 -08:00
Brandon Kobel
d61786fbbc
Deleting no longer used privileges (#24873)
* We can now delete old privileges

* Logging message when error deleting specific privilege
2018-11-26 09:30:13 -08:00
Larry Gregory
b0a13c9828
adds manage_follow_index index privilege for CCR (#25720) 2018-11-26 12:27:47 -05:00
tibmt
cf64825ff2 Translate security/roles component (#23984)
Translate security/roles component
2018-11-20 10:22:10 +03:00
tibmt
fb6be4caed Translate Spaces component (#24411)
* Translate Spaces component

* fix one little error

* update Spaces component

* update translation of Spaces components

* Update snapshots

* update Space translation - intl type

* update Space translation - remove view/views id namespace

* rename ids

* use testing helper functions instead of shallow, render, mount from enzyme

* fix unit tests

* fix ts path for enzyme test helpers

* fix path to enzyme helpers test functions

* Update snapshots

* fix path to enzyme test helpers

* Remove unused dependency.
2018-11-15 11:09:12 +03:00
Larry Gregory
53f5f50b71
fix redirect after logging in (#25546) 2018-11-14 16:48:07 -05:00
Larry Gregory
1343ef1ec2
adds read_ccr and manage_ccr cluster privileges (#25605) 2018-11-14 16:32:50 -05:00
Chandler Prall
a62252ce40
Update EUI to v5.0.0 (#25316)
* update EUI to v5.0.0

* update snapshots

* revert snapshot change

* revert snapshot change (2)
2018-11-08 10:16:44 -07:00
Ryan Keairns
7470b632eb
Security - convert LESS to SASS (#25079)
* convert security less to sass

* remove unused less styles from xpack_main
2018-11-05 13:28:18 -06:00
Brandon Kobel
42b758c567
Adding support for single session cookies appearing in an Array (#24984)
* Adding support for single auth cookies appearing in an Array

* Removing redundant newline
2018-11-02 06:23:54 -07:00
Larry Gregory
e0b8cdf859
User management - email and name should be optional (#24842)
Fixes #17952
2018-11-01 08:58:01 -04:00
Brandon Kobel
8cbafdf5fe
Adding "Successfully logged out" page (#23890)
* Adding very basic place for the logged out page

* Redirecting to logged_out when we aren't using SLO

* Basing styles on the login styles

* Fixing linting errors

* Responding to PR feedback

* Fixing issue with the basepath and the login link

* Adding proper i18n prefix

* Updating unit tests
2018-11-01 05:33:32 -07:00
Brandon Kobel
70f1a4094e
Using Joi.object when configuring route validation (#24596)
* Using Joi.object when configuring route validation

* Adding forgotten API

* Fixing test
2018-11-01 05:32:12 -07:00
Brandon Kobel
9f1cdac12b
Reporting cookies 2 (#24752)
* Revert "Reporting cookies (#24177)"

This reverts commit 9f4ec18000.

* Take 2

* Adding comment

* Better escaping and encoding for use in eval

* Checking for an empty string also

* Fixing session test
2018-10-29 15:54:45 -07:00
tibmt
cff438faf9 Translate security/users component (#23940)
Translate security/users
2018-10-29 15:59:31 +03:00
Josh Dover
27e5406d7a
Upgrade Hapi in legacy platform to v17 (#21707)
* Disable even-better monitoring

* Upgrade to Hapi v15

* Upgrade to Hapi v16

* Handle optional req params correctly

* Update http and kbnServer

* Get mocha tests passing

* Convert `reply` usages [wip]

* Fix Joi and Plugin incompatibilities

* Get server up and running

* Get basic logging working

* Fix optimizer

* Fix recent route handlers

* Various fixes

* Fix recent routes

* Upgrade wreck for async/await

* Fix mocha tests

* Fix joi issues

* Fix xpack jest tests

* Fix recent routes

* Fix tests

* Fix index setup

* Decouple monitoring stats collection from good plugin

* Update reload logging test to work

* Reimplement logging with updated good plugin

* Fix unit tests

* Fix getConnections back

* Make LegacyLoggingServer compatible with Hapi v17

* Update joi types

* Fix x-pack unit tests

* Remove stray debugger

* Remove hapi-compat

* Fix API integrations

* Upgrade boom

* Fix security plugin

* Misc fixes

* bump

* Fix licensePreRoutingFactory

* Fix failing integration tests

* Remove unnecessary test change

* Remove hapi-latest package

* fx

* Various cleanup

* Fix race condition in oppsy events

* Use elastic/good fork

* Fix boom.wrap and hapi-latest changes

* Simplify LegacyLoggingServer updates

* package.json cleanup + test fix

* yarn.lock cleanup

* Change good tag

* Fixes

* Change return err -> throw err in routes

* Fix await returns

* Fix new load_data test

* Make cookie security flags consistent

* tmp doc

* Fix types

* Fix tests

* Upgrade canvas plugin

* Move good package to published @elastic/good one

* Fix SO test

* Fix logging reloading

* Update APM apis

* Fix error logging

* Fix logging test

* Convert spaces plugin

* Add validation error shim

* Remove 7.0 release notes

* Await renderApp

* Fix ccr routes

* Prevent header popovers from scrolling with page content (#23850)

* Fix spaces test

* new yarn.lock-s

* Fix spaces tests

* Remove h2o2-latest

* Fix @types/hapi

* Upgrade InfraOps plugin

* Fix package.json

* Add back isSameSite: false

* Upgrade beats_management plugin

* Update snapshot

* Fix InfraOps

* Upgrade kql_telemetry

* Merge upstream/master

* Upgrade apm and ml

* Put snapshot test back

* Fx beats

* Upgrade rollups

* Update boom usages in new plugins
2018-10-25 16:01:12 -05:00
Larry Gregory
b981546290
Always enable the login button (#24407)
The login button should always be enabled, to account for password managers that will auto-fill the form fields.
2018-10-23 15:57:03 -04:00
Larry Gregory
7d8ce7bc01
K7 Login screen (#23512)
This PR implements the K7 Login screen, as described in #20015

@ryankeairns @snide @kobelb 

## Login form
<img width="1310" alt="login" src="https://user-images.githubusercontent.com/3493255/46048123-d9e53d80-c0f5-11e8-9e56-acbe3a8f2b5a.png">

## Invalid credentials
![image](https://user-images.githubusercontent.com/3493255/46147388-621d2d00-c233-11e8-8a75-beba7bb5a2b2.png)


## Session expired
![image](https://user-images.githubusercontent.com/3493255/46147408-6fd2b280-c233-11e8-97c1-8acb7b2e0c06.png)


## No connection to Elasticsearch
![image](https://user-images.githubusercontent.com/3493255/46147515-adcfd680-c233-11e8-8ad4-3a21d2c06b2c.png)


## Insecure connection
![image](https://user-images.githubusercontent.com/3493255/46147433-8416af80-c233-11e8-82dc-6f32a5ec1bd0.png)



Closes #20015
2018-10-22 14:18:17 -04:00
Brandon Kobel
9f4ec18000
Reporting cookies (#24177)
* Switching Reporting to use session cookies explicitly

* Fixing bug when security is explicitly disabled

* Responding to feedback

* Fixing yarn.lock
2018-10-18 09:30:42 -07:00
Brandon Kobel
49168a9132
Using ES list privileges API to determine the authorization mode (#24211)
* Making it easier and more terse to specify the user for a test

* Using ES list privileges API to determine the authorization mode

This let's us correct use RBAC authorization for the proper users when
security is enabled, and spaces is disabled to detect whether they have
privileges of any kind and if so use RBAC.

* Fixing authorization service test

* Fixing tests referencing wrong expects

* Putting create test back

* Update x-pack/plugins/security/server/lib/authorization/mode.js

* Update x-pack/plugins/security/server/lib/authorization/mode.js
2018-10-18 09:28:18 -07:00
Felix Stürmer
36caa6badd
[Infra UI] Merge InfraOps feature branch (#24068) 2018-10-17 12:07:50 +02:00
Josh Dover
2a9cc02d34
Prevent header popovers from scrolling with page content (#23850) 2018-10-08 02:52:06 -05:00
dave.snider@gmail.com
57b1a6ce71
Management core Less to Sass (#23596)
Converts management's less to sass. Makes minor adjustments to those pages for some design cleanup.
2018-10-04 22:33:49 -07:00
Larry Gregory
125e4fa6ad don't throw if authorization mode is already initialized (#23791) 2018-10-03 16:10:20 -07:00