Commit graph

136 commits

Author SHA1 Message Date
Larry Gregory
0ac38ec851
Update copy for API Key management (#175809)
## Summary

Resolves https://github.com/elastic/kibana/issues/166095.

This updates the API Key management screen to reflect the copy
adjustments described in #166095:

1. Change `Cross-Cluster` to `Cross-cluster`, unless it is mid-sentence
in which case `cross-cluster` should be used.
2. Updated ownership & expiry warnings to use the active voice.
3. Renamed `Personal` API Keys to `User` API Keys.


![Larry Gregory 2024-01-29 at 10 12
45@2x](8df4e279-5d68-4353-87aa-e40e6949f528)

![Larry Gregory 2024-01-29 at 10 14
02@2x](290166ea-51a3-43ae-bed4-7278865b1bdc)

![Larry Gregory 2024-01-29 at 10 15
03@2x](97bb6426-e8ce-4bc1-b5ae-44944683978f)


![Larry Gregory 2024-01-29 at 10 15
27@2x](61adfece-05eb-4fbc-bf68-265d5cfaa987)


View docs changes here:
https://kibana_bk_175809.docs-preview.app.elstc.co/diff
2024-01-30 09:36:39 +01:00
Larry Gregory
d76e059173
Clarify spaces documentation (#173866)
Clarifies language for securing access to spaces.
2023-12-21 14:33:53 -05:00
amyjtechwriter
4ffd7562ff
[DOCS] Updating API key page in Kibana docs (#165599)
## Summary

This PR adds the new cross-cluster API key option to the [API Keys
page](https://www.elastic.co/guide/en/kibana/current/api-keys.html) and
makes some further edits to the page.

Relates to: #162363 & #163566

---------

Co-authored-by: István Zoltán Szabó <istvan.szabo@elastic.co>
2023-09-08 12:05:35 +01:00
Thom Heymann
85595ca8ab
Add docs for remote indices (#156510)
Resolves #155289

~~Todo: Add link to ES remote indices docs once available
(https://github.com/elastic/kibana/pull/154948#discussion_r1169266451)~~

Update: I don't think there's a better page to link to right now so will
leave as is. We can always change it in the future.
2023-08-29 13:03:58 -04:00
James Rodewig
8ac82e38d7
[DOCS] Add cross-link for other encryption key settings (#165014)
Problem: The [Configure security in Kibana](https://www.elastic.co/guide/en/kibana/current/using-kibana-with-security.html) docs page only covers the `xpack.security.encryptionKey` setting for session encryption. Users may not know that encryption for Kibana's reporting and saved objects features also require encryption keys.

Solution: Add a cross-link to the respective encryption key settings for  reporting and saved objects
2023-08-28 15:02:22 -04:00
Sid
ad542d0188
Change default session idle timeout to 3 days. (#162313)
Closes https://github.com/elastic/kibana/issues/162215

## Summary

This PR changes the default session idle timeout for users to 3 days. 

## Changes Made

- Updated default `session.idleTimeout` to `3d`. 
- Updated tests to expect the new default timeout
- Updated asciidocs to match the above change

## Release notes

Change the default value of `session.idleTimeout` from 8 hours to 3
days.
2023-07-26 14:29:04 +02:00
Jonathan Buttner
2bf4ed4813
[Cases] Updating the audit log docs (#160335)
This PR updates the security audit logs with some cases values. We added
a new operation for retrieving the `categories` of a case and the users
associated with a case.
2023-06-23 08:20:32 -04:00
Lisa Cawley
668968b758
[DOCS] Replace description attributes with frontmatter for migration (#158126) 2023-05-24 08:16:43 -07:00
Jeramy Soucy
ba6058c147
Uses refresh=false for creating, updating, and invalidating user sessions (#151800)
closes #149338

## Summary
Sets refresh parameter to false in session create, update, and
invalidate. Previously refresh was set to 'wait_for' (or 'true' in the
case of invalidating by query).

### Tests
Several unit tests and functional tests have been updated to reflect the
change in test snapshots and to manually refresh the session index in
order to complete testing. The bulk of the test changes reside in the
[concurrent session limit
suite](66a43be28c/x-pack/test/security_api_integration/tests/session_concurrent_limit/global_limit.ts).

Flaky Test Runner for relevant test suites:
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/1984

### Documentation
Adds a note to the session-management ascii doc to document a known
limitation of enforcing the concurrent sessions limit...
```
NOTE: Due to the rate at which session information is refreshed, there might be a few seconds where the concurrent session limit is not enforced.
This is something to consider for use cases where it is common to create multiple sessions simultaneously.
```

---------

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
2023-03-10 13:18:09 -05:00
Thomas Watson
e7ebb0cf40
[docs] Document new maxSessions config option (#151268) 2023-02-16 13:00:13 -05:00
Jeramy Soucy
5de13d49ac
[Saved Objects] Migrates authorization logic from repository to security extension (#148165)
Closes #147049
Closes #149897

Migrates authorization and audit logic from the Saved Objects Repository
to the Saved Objects Security Extension. This is achieved by
implementing action-specific authorization methods within the security
extension. The SO repository is no longer responsible for making any
authorization decisions, but It is still responsible to know how to call
the extension methods. I've tried to make this as straightforward as
possible such that there is a clear ownership delineation between the
repository and the extension, by keeping the interface simple and
(hopefully) obvious.

### Security Extension Interface
New Public Extension Methods:
- authorizeCreate
- authorizeBulkCreate
- authorizeUpdate
- authorizeBulkUpdate
- authorizeDelete
- authorizeBulkDelete
- authorizeGet
- authorizeBulkGet
- authorizeCheckConflicts
- authorizeRemoveReferences
- authorizeOpenPointInTime
- auditClosePointInTime
- authorizeAndRedactMultiNamespaceReferences
- authorizeAndRedactInternalBulkResolve
- authorizeUpdateSpaces
- authorizeFind
- getFindRedactTypeMap
- authorizeDisableLegacyUrlAliases (for secure spaces client)
- auditObjectsForSpaceDeletion (for secure spaces client)

Removed from public interface:
- authorize
- enforceAuthorization
- addAuditEvent

### Tests
- Most test coverage moved from `repository.security_extension.test.ts`
to `saved_objects_security_extension.test.ts`
- `repository.security_extension.test.ts` tests extension call,
parameters, and return
- Updates repository unit tests to check that all security extension
calls are made with the current space when the spaces extension is also
enabled

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
2023-02-15 10:25:05 -05:00
Jonathan Buttner
bd8e62e45c
[Cases] Add bulk get attachments API (#149269)
This PR adds a new bulk get attachments API.

```
POST internal/cases/<case_id>/attachments/_bulk_get
{
    "ids": ["02441860-9b66-11ed-a8df-f1edb375c327", "2"]
}
```

<details><summary>Example request and response</summary>


Request
```
POST http://localhost:5601/internal/cases/attachments/_bulk_get
{
    "ids": ["283a4600-9cfd-11ed-9e3d-c96d764b0e39", "2", "382e97f0-9cfd-11ed-9e3d-c96d764b0e39"]
}
```

Response
```
{
    "attachments": [
        {
            "id": "283a4600-9cfd-11ed-9e3d-c96d764b0e39",
            "version": "WzI2MiwxXQ==",
            "comment": "Stack comment",
            "type": "user",
            "owner": "cases",
            "created_at": "2023-01-25T22:11:03.398Z",
            "created_by": {
                "email": null,
                "full_name": null,
                "username": "elastic",
                "profile_uid": "u_mGBROF_q5bmFCATbLXAcCwKa0k8JvONAwSruelyKA5E_0"
            },
            "pushed_at": null,
            "pushed_by": null,
            "updated_at": null,
            "updated_by": null
        }
    ],
    "errors": [
        {
            "error": "Not Found",
            "message": "Saved object [cases-comments/2] not found",
            "status": 404,
            "attachmentId": "2"
        },
        {
            "error": "Bad Request",
            "message": "Attachment is not attached to case id=248d6aa0-9cfd-11ed-9e3d-c96d764b0e39",
            "status": 400,
            "attachmentId": "382e97f0-9cfd-11ed-9e3d-c96d764b0e39"
        }
    ]
}
```
</details>

<details><summary>Unauthorized example response</summary>

```
{
    "attachments": [],
    "errors": [
        {
            "error": "Forbidden",
            "message": "Unauthorized to access attachment with owner: \"securitySolution\"",
            "status": 403,
            "attachmentId": "382e97f0-9cfd-11ed-9e3d-c96d764b0e39"
        }
    ]
}

```

</details>

## Notable changes
- Created a new internal route for retrieving attachments
- Refactored the attachments service to take the saved object client in
the constructor instead of each method
- Refactored attachments service by moving the get style operations to
their own class
- Refactored the integration utilities file to move the attachment
operations to their own file
- The API will return a 400 if more than 10k ids are requested

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-01-31 08:55:50 -05:00
Jonathan Buttner
aba0b3037c
[Cases] Adding new bulk create attachments operation for auditing (#149744)
This PR adds a new authorization log operation for the bulk create
attachments API.

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-01-30 13:35:08 -05:00
Jonathan Buttner
a78fece18b
[Cases] Adding _find API for user actions (#148861)
This PR adds a new find API for retrieving a subset of the user actions
for a case.

Issue: https://github.com/elastic/kibana/issues/134344

```
GET /api/cases/<case_id>/user_actions/_find
Query Paramaters
{
  types?: Array of "assignees" | "comment" | "connector" | "description" | "pushed" | "tags" | "title" | "status" | "settings" | "severity" | "create_case" | "delete_case" | "action" | "alert" | "user" | "attachment"
  sortOrder?: "asc" | "desc"
  page?: number as a string
  perPage?: number as a string
}
```

<details><summary>Example request and response</summary>

Request
```
curl --location --request GET 'http://localhost:5601/api/cases/8df5fe00-96b1-11ed-9341-471c9630b5ec/user_actions/_find?types=create_case&sortOrder=asc' \
--header 'kbn-xsrf: hello' \
--header 'Authorization: Basic ZWxhc3RpYzpjaGFuZ2VtZQ==' \
--data-raw ''
```


Response
```
{
    "userActions": [
        {
            "created_at": "2023-01-17T21:54:45.527Z",
            "created_by": {
                "username": "elastic",
                "full_name": null,
                "email": null,
                "profile_uid": "u_mGBROF_q5bmFCATbLXAcCwKa0k8JvONAwSruelyKA5E_0"
            },
            "owner": "cases",
            "action": "create",
            "payload": {
                "title": "Awesome case",
                "tags": [],
                "severity": "low",
                "description": "super",
                "assignees": [],
                "connector": {
                    "name": "none",
                    "type": ".none",
                    "fields": null,
                    "id": "none"
                },
                "settings": {
                    "syncAlerts": false
                },
                "owner": "cases",
                "status": "open"
            },
            "type": "create_case",
            "id": "8e121180-96b1-11ed-9341-471c9630b5ec",
            "case_id": "8df5fe00-96b1-11ed-9341-471c9630b5ec",
            "comment_id": null
        }
    ],
    "page": 1,
    "perPage": 20,
    "total": 1
}
```

</details>

## Notable Changes
- Created the new `_find` route
- Created a new `UserActionFinder` class and moved the find* methods
from the `index.ts` file into there as well as the new find logic
- Extracted the transform logic to its own file since its shared between
multiple files now
- Extracted the user action related integration test functions to the
`user_action.ts` utility file

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: lcawl <lcawley@elastic.co>
2023-01-23 13:25:41 -05:00
Christos Nasikas
a8902e1b6e
[Cases] Create Bulk get cases internal API (#147674)
## Summary

This PR creates the bulk get cases internal API. The endpoint is needed
for the alerts table to be able to get all cases the alerts are attached
to with one call.

Reference: https://github.com/elastic/kibana/issues/146864

### Request

- ids: (Required, array) An array of IDs of the retrieved cases.
- fields: (Optional, array) The fields to return in the attributes key
of the object response.

```
POST <kibana host>:<port>/internal/cases/_bulk_get
{
    "ids": ["case-id-1", "case-id-2", "123", "not-authorized"],
    "fields": ["title"]
}
```

### Response
```
{
    "cases": [
     {
        "title": "case1",
        "owner": "securitySolution",
        "id": "case-id-1",
        "version": "WzIzMTU0NSwxNV0="
     },
     {
        "title": "case2",
        "owner": "observability",
        "id": "case-id-2",
        "version": "WzIzMTU0NSwxNV0="
      }
    ],
    "errors": [
        {
            "error": "Not Found",
            "message": "Saved object [cases/123] not found",
            "status": 404,
            "caseId": "123"
        },
        {
            "error": "Forbidden",
            "message": "Unauthorized to access case with owner: \"cases\"",
            "status": 403,
            "caseId": "not-authorized"
        }
    ]
}
```

### Checklist

Delete any items that are not applicable to this PR.

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios


### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
2023-01-11 16:32:42 +02:00
Jonathan Buttner
9cbe45c42a
[Cases][Security] Updating audit log (#147260)
This PR updates the audit logger docs to reflect the cases audit log
messages. We had not added the RBAC authorization messages so I added
those as well as the user action messages from this PR:
https://github.com/elastic/kibana/pull/145632

I also noticed a discrepancy in the `event.type` for the RBAC message
for a case being pushed and the user action one recently. So changed the
user action to match the RBAC `event.type: change`.

The audit log messages come from these files:
- User actions
-
https://github.com/elastic/kibana/blob/main/x-pack/plugins/cases/server/services/user_actions/audit_logger.ts
-
https://github.com/elastic/kibana/blob/main/x-pack/plugins/cases/server/services/user_actions/builders/*
-
https://github.com/elastic/kibana/blob/main/x-pack/plugins/cases/server/services/user_actions/index.ts
- RBAC
-
https://github.com/elastic/kibana/blob/main/x-pack/plugins/cases/server/authorization/audit_logger.ts
-
https://github.com/elastic/kibana/blob/main/x-pack/plugins/cases/server/authorization/index.ts
2023-01-04 12:47:24 -05:00
Thom Heymann
2ca590e006
Clarify outcome: unknown in audit logging docs (#148153)
Resolves #127507

## Summary

Clarify outcome: `unknown` in audit logging docs
2023-01-03 20:12:00 +00:00
Thom Heymann
ee6170be7a
Include client IP address in audit log (#148055)
Follow up to #147526 which had to be reverted.

Resolves #127481

## Release notes

Include IP address in audit log

## Testing

1. Start Elasticsearch with trial license: `yarn es snapshot --license
trial`
2. Update `kibana.dev.yaml`:

```yaml
xpack.security.audit.enabled: true
xpack.security.audit.appender:
  type: console
  layout:
    type: json
```

3. Observe audit logs in console when interacting with Kibana:

```json
{
  "@timestamp": "2022-12-13T15:50:42.236+00:00",
  "message": "User is requesting [/dev/internal/security/me] endpoint",
  "client": {
    "ip": "127.0.0.1"
  },
  "http": {
    "request": {
      "headers": {
        "x-forwarded-for": "1.1.1.1, 127.0.0.1"
      }
    }
  }
}
```

Note: You will see the `x-forwarded-for` field populated when running
Kibana in development mode (`yarn start`) since Kibana runs behind a
development proxy.

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-01-03 10:17:33 -07:00
Thom Heymann
5f21dbe618
Revert "Include client IP address in audit log" (#147747)
Reverts elastic/kibana#147526

Reverting due to errors when using `FakeRequest`:

```
TypeError: Cannot read properties of undefined (reading 'remoteAddress')
    at KibanaSocket.get remoteAddress [as remoteAddress] (/Users/shahzad-16/elastic/kibana/node_modules/@kbn/core-http-router-server-internal/target_node/src/socket.js:25:24)
    at Object.log (/Users/shahzad-16/elastic/kibana/x-pack/plugins/security/server/audit/audit_service.ts:95:32)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Terminating process...
 server crashed  with status code 1
```
2022-12-19 12:33:21 +01:00
Thom Heymann
a02c7dce50
Include client IP address in audit log (#147526)
Resolves #127481

## Release notes

Include IP address in audit log

## Testing

1. Update `kibana.dev.yaml`:

```yaml
xpack.security.audit.enabled: true
xpack.security.audit.appender:
  type: console
  layout:
    type: json
```

2. Observe audit logs in console when interacting with Kibana:

```json
{
  "@timestamp": "2022-12-13T15:50:42.236+00:00",
  "message": "User is requesting [/dev/internal/security/me] endpoint",
  "client": {
    "ip": "127.0.0.1"
  },
  "http": {
    "request": {
      "headers": {
        "x-forwarded-for": "1.1.1.1, 127.0.0.1"
      }
    }
  }
}
```

Note: You will see the `x-forwarded-for` field populated when running
Kibana in development mode (`yarn start`) since Kibana runs behind a
development proxy.

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
2022-12-16 15:54:38 -07:00
Kurt
9a6985eeef
Allow users to Update API Keys (#146237)
## Summary

API keys can now be updated via the API Keys Management screen

## Release Note

API Keys can now be updated with new Role Descriptors and Metadata via
the API Keys Management screen.

## Testing Instructions

Login as `elastic`

Navigate to Roles and create a new role with the `read_security` cluster
privilege:
<img width="962" alt="Screen Shot 2022-11-30 at 9 42 31 AM"
src="https://user-images.githubusercontent.com/21210601/204826868-a8f6bf03-acf8-404c-90c8-e2b9ab62dc11.png">


Create a new user and assign that new role, `viewer`, and
`kibana_admin`:
<img width="936" alt="Screen Shot 2022-11-30 at 9 43 10 AM"
src="https://user-images.githubusercontent.com/21210601/204827030-e5f97f8e-6676-4c18-8a46-f6afee87ba12.png">


Navigate to Dev Tools and run the following:

```json
POST /_security/api_key/grant
{
  "grant_type": "password",
  "username" : "elastic",  
  "password" : "changeme",  
  "run_as": "elastic",  
  "api_key" : {
    "name": "test-expired-key",
    "expiration": "1ms"
  }
}

POST /_security/api_key/grant
{
  "grant_type": "password",
  "username" : "elastic",  
  "password" : "changeme",  
  "run_as": "test_user",  
  "api_key" : {
    "name": "test-user-key",
    "expiration": "1d"
  }
}
```

The first command will create an API key for the `elastic` user that
expires immediately.

The second command will create an API key for `test_user`.

Navigate to the API Key page, click the name column links to see a
readonly view for the 2 previously created keys as users cannot update
an API key that belongs to another user nor an API key that is expired.

Create a new API key:
<img width="632" alt="Screen Shot 2022-11-30 at 9 44 52 AM"
src="https://user-images.githubusercontent.com/21210601/204829114-672c6583-8801-4af0-bfa8-64ae1072ef46.png">

Click the name link for the newly created API key to see the Update API
key flyout.

Update the fields and click submit:
<img width="642" alt="Screen Shot 2022-11-30 at 9 45 59 AM"
src="https://user-images.githubusercontent.com/21210601/204829914-9fb1f8e6-8b3f-4acc-b63f-d7e4a0906727.png">

If the update was successful:
<img width="904" alt="Screen Shot 2022-11-30 at 9 46 42 AM"
src="https://user-images.githubusercontent.com/21210601/204830133-1dcb083b-f945-4980-9e91-19081c224b55.png">

Now click the name link again for the updated key and click submit
without making changes. You should see a warning:
<img width="895" alt="Screen Shot 2022-11-30 at 9 46 52 AM"
src="https://user-images.githubusercontent.com/21210601/204830570-2ca5e2e0-19b6-43ce-b7e4-ae594be6a86b.png">

Logout the `elastic` user and login as `test_user`

Navigate to API Keys and click the existing API Key to see a readonly
view flyout:
<img width="639" alt="Screen Shot 2022-11-30 at 9 58 25 AM"
src="https://user-images.githubusercontent.com/21210601/204832019-640ecd2e-4bcb-402b-a164-e8b8eb9f8848.png">


Thanks for reviewing!

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2022-12-14 07:50:07 -05:00
Kurt
7d10edcc8f
Removing docs about multi-tenancy (#143698)
* Removing docs about multi-tenancy

* Removing link to multi tenancy
2022-10-24 16:01:43 -04:00
Thom Heymann
c1d0b9387f
Add user profile ID to audit log events (#141092)
* Add user profile ID to audit log events

* Fix merge conflict

* Fix integration tests

* Fix integration tests

* Fix type

* Refactor

* updated functional tests

* updated functional tests

* Added tests for enrichment logic

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2022-10-03 13:30:12 +01:00
Kurt
c6fb0bc7f2
Adding Global Access Agreement (#139217)
* Adding Global Access Agreement

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* Adding docs

* PR Review changes

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* PR Review changes

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* Fixing global access agreement redirect logic

* Fixing unit test

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* Changing verbiage

* Changing local -> provider specific

* Update x-pack/plugins/security/server/routes/views/access_agreement.ts

Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>

* PR Feedback

* removing `only`

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'

* Changing the accessAgreement to be optional

* [CI] Auto-commit changed files from 'node scripts/precommit_hook.js --ref HEAD~1..HEAD --fix'

* Adding docker config

* Update docs/user/security/access-agreement.asciidoc

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>

* Update docs/user/security/access-agreement.asciidoc

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>

* Adding PR Review feedback

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>
Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
2022-09-06 11:54:57 -04:00
Lisa Cawley
5ea3838109
Auto-generate preview links for DOC PRs (#139593) 2022-09-01 08:02:33 -07:00
Kurt
7b07faf7d1
Fixing es template string and programmatic typo (#139014) 2022-08-17 12:17:57 -04:00
Kurt
e22e3a52b5
Adding deprecation warning for Interactive Users using ApiKeys (#136422)
* Adding deprecation warning for Interactive Users using ApiKeys

* Fixing unit test verbiage

* Update docs/user/security/authentication/index.asciidoc

Co-authored-by: Larry Gregory <lgregorydev@gmail.com>

* Update docs/user/security/api-keys/index.asciidoc

Co-authored-by: Larry Gregory <lgregorydev@gmail.com>

* Changing capitalization on 'keys' to avoid confusion with the UI API Keys

* Update docs/user/security/api-keys/index.asciidoc

Co-authored-by: Larry Gregory <lgregorydev@gmail.com>

* Update docs/user/security/authentication/index.asciidoc

Co-authored-by: Larry Gregory <lgregorydev@gmail.com>

* Changing the logging message and unit test descriptions based on PR review feedback

* Update x-pack/plugins/security/server/routes/analytics/authentication_type.test.ts

Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>

* Update x-pack/plugins/security/server/routes/analytics/authentication_type.ts

Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>

* Update x-pack/plugins/security/server/routes/analytics/authentication_type.ts

Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>

* Removing unnecessary whitespace

* Fixing spelling in unit test assertion

Co-authored-by: Larry Gregory <lgregorydev@gmail.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>
2022-07-20 10:52:46 -04:00
Thomas Watson
ef9e3c4265
[docs] Improve Secure saved objects and kibana-encryption-keys docs (#132828) 2022-05-25 06:27:37 +02:00
Pius
f9b065e228
Cross reference audit log settings (#132359)
* Cross reference audit log settings

* Update docs/user/security/audit-logging.asciidoc

Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
2022-05-23 10:07:56 -07:00
Jeramy Soucy
7d8aae5f8a
Deprecate Anonymous Authentication Credentials (#131636)
* Adds deprecation warnings for apiKey and elasticsearch_anonymous_user credentials of  anonymous authentication providers.
Adds telemetry for usage of anonymous authentication credential type.

* Update x-pack/plugins/security/server/config_deprecations.ts

Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>

* Update x-pack/plugins/security/server/config_deprecations.ts

Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>

* Update x-pack/plugins/security/server/config_deprecations.ts

Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>

* Updated all docs to remove deprecated anon auth features, fixed doc link logic and typos.

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
2022-05-18 19:27:40 +02:00
Aleh Zasypkin
ce83b0a5d9
Remove docs reference to ephemeral encryption key. (#129331)
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
2022-04-04 16:08:16 +02:00
Aleh Zasypkin
aa4ce92457
Update API keys docs to remove unnecessary API keys service section. (#128464) 2022-03-29 10:44:00 +02:00
Zacqary Adam Xeper
d102213d1d
[RAM] Add Snooze UI and Unsnooze API (#128214)
* Add Snooze UI and Unsnooze API

* Add unsnooze writeoperation

* Add unsnooze API tests

* Add UI tests

* Add tooltip and enable canceling snooze when clicking Enabled

* Fix rulesClient mock

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2022-03-24 12:59:46 -04:00
Ying Mao
5435cf922e
[Response Ops] API to retrieve execution log entries from event log. (#127339)
* wip

* wip

* Reverting changes not related to event log aggregation

* Reverting changes not related to event log aggregation

* Updating event log client find to take array of sort options

* Updating tests and adding basic aggregation function

* Adding tests

* Fixing functional test

* Fixing functional test

* Revert "Reverting changes not related to event log aggregation"

This reverts commit 939340e252.

* Revert "Reverting changes not related to event log aggregation"

This reverts commit 40a93a4b3c.

* Getting aggregation and parsing aggregation results

* Cleanup

* Changing api to internal

* Fixing types

* PR feedback

* omg types

* types and optional accessors

* Adding fn to calculate num executions based on date range

* Fleshing out rules client function and tests

* http api

* Cleanup

* Adding schedule delay

* Limit to 1000 logs

* Fixing security tests

* Fixing unit tests

* Validating numExecutions

* Changing sort input format

* Adding more sort fields

* Fixing unit tests

* Adding functional tests

* Adding sort to terms aggregation

* Fixing functional test

* Adding audit event for rule GET

* Adding audit event for rule execution log GET

* PR feedback

* Adding gap policy and using static num buckets

* Fixing checks

* Fixing checks

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2022-03-18 18:38:42 -04:00
gchaps
a7deb8ddd2
[DOCS] Updated link to Embed code doc (#126734)
* [DOCS] Fixes link to embedded content

* [DOCS] Updated text for link
2022-03-03 07:14:00 -08:00
Stef Nestor
f493191bea
[+DOC] Add Session Settings Link (#126026)
* [+DOC] Add Session Settings Link

👋🏼 hiya, team! Can we add a link to [Security Sessions & Cookies](https://www.elastic.co/guide/en/kibana/current/security-settings-kb.html#security-session-and-cookie-settings) from [Session Management](https://www.elastic.co/guide/en/kibana/current/xpack-security-session-management.html). (Some info duplicates which I'm ignoring, hoping to call out the supplementary settings which users should be cognizant exist.)

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
2022-02-23 07:43:30 -07:00
Joe Portner
ddc300069d
Add session ID to user login audit event (#124299) 2022-02-04 14:37:57 -07:00
Joe Portner
6e4c311122
Add correlation section to audit logging docs (#123757) 2022-01-26 08:54:24 -05:00
Thom Heymann
39cef8bca9
Add session cleanup audit logging (#122419)
* Add session cleanup audit logging

* Update snapshots

* Added suggestions from code review

* Clean up sessions in batches

* Added suggestions form code review
2022-01-12 23:00:57 +00:00
Thom Heymann
ea24d162d6
Capture user logout events in audit log (#121455)
* Audit user logout events

* Capture all user initiated logout events

* Added suggestions from code review
2021-12-21 21:01:54 +00:00
gchaps
1e12a39cd2
[DOCS] Fixes inconsistency with role management link (#121351)
* [DOCS] Fixes inconsistency with role management link

* Update docs/redirects.asciidoc

Co-authored-by: Lisa Cawley <lcawley@elastic.co>

Co-authored-by: Lisa Cawley <lcawley@elastic.co>
2021-12-15 14:45:23 -08:00
gchaps
c52e130800
[DOCS] Moves encryption key doc to tools section (#121021)
* [DOCS] Moves encryption key doc to tools section

* Update docs/user/commands/encryption-keys/index.asciidoc

Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com>
2021-12-14 13:28:35 -08:00
ymao1
3de6de98a7
[Alerting][Docs] Review usages of Alerting vs alerting (#119314)
* Alerting vs alerting

* PR feedback

* Reverting unnecessary changes

* Apply suggestions from code review

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>

* PR feedback

* PR feedback

* Removing {kib}

* Apply suggestions from code review

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>

* Removing {kib}

Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-11-30 19:24:45 -05:00
Adam Locke
dea83185c9
[DOCS] Fix link and add redirect for removed security page (#119966)
* [DOCS] Fix link and add redirect for removed security page

* Update link to subscriptions page
2021-11-30 12:35:25 -05:00
Adam Locke
a0cf6d3708
[DOCS] Update security configuration for security ON by default (#118088)
* [DOCS] Update security configuration for security ON by default

* Incorporating reviewer feedback + fixing a link

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-11-15 10:37:42 -05:00
gchaps
149e5b61f9
Update securing-kibana.asciidoc (#117572)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2021-11-05 14:36:14 -05:00
Yara Tercero
c2d7f3355d
[RAC][Timeline] - Add audit log to RBAC wrapped search strategy (#112040)
### Summary

Went back to add audit logging to the alerts table search strategy used to query RAC alerts. This PR also includes tests for the logging.
2021-11-03 20:34:01 +00:00
Thomas Watson
8a39a113a0
Finalize removal of legacy audit logger (#116282) 2021-10-30 22:33:37 +01:00
Brandon Morelli
2daadc0d74
docs: update links to APM docs (#115664) 2021-10-20 09:43:30 -07:00
Aleh Zasypkin
83f12a9d82
Change default session idle timeout to 8 hours. (#115565) 2021-10-19 18:38:27 +02:00