Skip to content

Commit 3bb7e60

Browse files
Merge pull request #1863 from ashnwade/patch-to-main
Release/v5.8.14: Merge next-patch to main
2 parents 7e3c828 + c622bed commit 3bb7e60

37 files changed

Lines changed: 195 additions & 147 deletions

‎_static/versions.json‎

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
[
22
{
3-
"name": "v5.8.13 (latest)",
4-
"version": "v5.8.13",
3+
"name": "v5.8.14 (latest)",
4+
"version": "v5.8.14",
55
"url": "/",
66
"preferred": true
77
},
8+
{
9+
"version": "v5.8.13",
10+
"url": "/v5.8.13/"
11+
},
812
{
913
"version": "v5.8.12",
1014
"url": "/v5.8.12/"

‎_tools/dedup-links/default.nix‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
let
22
# use a specific (although arbitrarily chosen) version of the Nix package collection
33
pkgs = import (fetchTarball {
4-
url =
5-
"https://github.com/NixOS/nixpkgs/archive/e0464e47880a69896f0fb1810f00e0de469f770a.tar.gz";
4+
url = "https://github.com/NixOS/nixpkgs/archive/e0464e47880a69896f0fb1810f00e0de469f770a.tar.gz";
65
sha256 = "sha256:1maakx00q48r6q6njxrajyhrq27xsnnayarc8j33p7x9f6pxlbyg";
76
}) { };
87

98
buildGoModule = pkgs.buildGoModule.override { go = pkgs.go_1_23; };
109

11-
in buildGoModule {
10+
in
11+
buildGoModule {
1212
name = "dedup-links";
1313
src = ./.;
1414

‎changelog/5.8.14.md‎

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Changelog for version 5.8.14
2+
3+
## Released 23 April 2026
4+
5+
## Gravwell
6+
7+
```{attention}
8+
This release contains high priority bug fixes to address security concerns related to secret leaking and token permissions. Gravwell highly recommends users change secrets which have been used for MS SQL database connection strings in SQL Query flow nodes.
9+
```
10+
11+
### Additions
12+
13+
* Added a new eval function named `indirect()` that allows for passing a string, EV name, or EV name string that will transparently resolve the EV, name, or string. This function helps with building macros and other automation functions that may need to take a constant, an EV, or an EV name.
14+
* Added API version checks and library enforcement to ensure client compatibility with currently installed Gravwell version.
15+
16+
### Bug Fixes
17+
18+
* Fixed an issue where secrets were not properly masked in error messages when running a Flow with a SQL Query flow node.
19+
* Fixed an issue with using backslashes in MS SQL database connection strings in the SQL Query flow node.
20+
* Fixed an issue with Token ownership caching when a user token is edited by an admin.
21+
* Fixed an issue with type promotion in the eval module `in()` function.
22+
* Fixed an issue with using 0x20 (space) as the separator in the kv module.
23+
* Fixed a hinting issue with eval that occured when using non-fulltext compatible delimiters with the fields or kv modules.
24+
* Fixed the PagerDuty flow node to comply with required fields and field lengths expected by the API.
25+
26+
## Ingesters
27+
28+
### Bug Fixes
29+
30+
* Fixed an issue where the HEC health check was not respected by the HTTP ingester.

‎changelog/list.md‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
maxdepth: 1
88
caption: Current Release
99
---
10-
5.8.13 <5.8.13>
10+
5.8.14 <5.8.14>
1111
```
1212

1313
## Previous Versions
@@ -18,6 +18,7 @@ maxdepth: 1
1818
caption: Previous Releases
1919
---
2020
21+
5.8.13 <5.8.13>
2122
5.8.12 <5.8.12>
2223
5.8.11 <5.8.11>
2324
5.8.10 <5.8.10>

‎conf.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
project = "Gravwell"
2323
copyright = f"Gravwell, Inc. {date.today().year}"
2424
author = "Gravwell, Inc."
25-
release = "v5.8.13"
25+
release = "v5.8.14"
2626

2727
# Default to localhost:8000, so the version switcher looks OK on livehtml
2828
version_list_url = os.environ.get(

‎configuration/sso-okta/okta.md‎

Lines changed: 33 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,64 @@
1-
# Configuring OKTA SSO with Gravwell
1+
# Configuring Okta SSO with Gravwell
22

3-
OKTA is a managed identity provider that provides cloud hosted identity and authentication services; if your organization uses OKTA for identity management, integrating with Gravwell is an incredibly easy process.
3+
Okta is a managed identity provider that provides cloud hosted identity and authentication services; if your organization uses Okta for identity management, integrating with Gravwell is an incredibly easy process.
44

55
In this document, we assume the following:
66

77
* The Gravwell instance has a valid DNS name of gravwell.example.com.
88
* The Gravwell instance is publicly available with valid SSL certificates.
99
* You are an Okta admin and can establish a new application and assign users to it.
1010

11-
1211
## Creating The Okta Application
1312

1413
The first step is to log into the Okta management console and click on `Applications`, then click `Create App Integration` to begin setting up a Gravwell integration.
1514

1615
![](create_app.png)
1716

18-
Name your application and upload an image so that users know what they are interacting with; feel free to grab our logo and use it.
17+
Name your SAML 2.0 application and upload an image so that users know what they are interacting with; feel free to grab our logo and use it. Proceed to step 2 (`Configure SAML`).
1918

20-
![](general_settings.png)
19+
![](okta_saml_step_one.png)
2120

2221
Make sure to set the appropriate fully qualified URL for your SSO URL and SP Entity ID URL; given the domain of `gravwell.example.com` the appropriate URLs are `https://gravwell.example.com/saml/acs` and `https://gravwell.example.com/saml/metadata`.
2322

24-
![](setup_1.png)
23+
![](okta_saml_step_two.png)
2524

26-
Next configure Attribute Statements so that user information such as names, emails, and groups can be transmitted from Okta to Gravwell during account creation. The `uid` and `mail` attributes are mandatory, but we suggest adding `givenName` and `surName` too. Also add the Group Attribute Statements to describe which groups will be sent from Okta to Gravwell; you can filter which groups are sent using a prefix, postfix, or even a regular expression. For this example we are sending all groups.
25+
Finalize this step and use the defaults for step 3 (`Feedback`).
2726

28-
![](setup_2.png)
27+
## Setting Okta SAML Attributes
2928

30-
If you wish to double check the configuration XML click `Preview the SAML Assertion`, it may look something like this:
29+
Next configure Attribute Statements so that user information such as names, email addresses, and groups can be forwarded from Okta to Gravwell.
3130

32-
```
33-
<?xml version="1.0" encoding="UTF-8"?>
34-
<saml2:Assertion ID="id12345678901234567890" IssueInstant="2023-08-08T22:22:08.424Z" Version="2.0"
35-
xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
36-
<saml2:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://www.okta.com/exk6ukjm9vpaGcPe8697</saml2:Issuer>
37-
<saml2:Subject>
38-
<saml2:NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">kris.watts@gravwell.io</saml2:NameID>
39-
<saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
40-
<saml2:SubjectConfirmationData NotOnOrAfter="2023-08-08T22:27:08.424Z" Recipient="https://gravwell.example.com/saml/acs"/>
41-
</saml2:SubjectConfirmation>
42-
</saml2:Subject>
43-
<saml2:Conditions NotBefore="2023-08-08T22:17:08.424Z" NotOnOrAfter="2023-08-08T22:27:08.424Z">
44-
<saml2:AudienceRestriction>
45-
<saml2:Audience>https://gravwell.example.com/saml/metadata</saml2:Audience>
46-
</saml2:AudienceRestriction>
47-
</saml2:Conditions>
48-
<saml2:AuthnStatement AuthnInstant="2023-08-08T21:38:53.551Z" SessionIndex="id12345678.123456789">
49-
<saml2:AuthnContext>
50-
<saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml2:AuthnContextClassRef>
51-
</saml2:AuthnContext>
52-
</saml2:AuthnStatement>
53-
<saml2:AttributeStatement>
54-
<saml2:Attribute Name="uid" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
55-
<saml2:AttributeValue
56-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
57-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">user.dude@example.com
58-
</saml2:AttributeValue>
59-
</saml2:Attribute>
60-
<saml2:Attribute Name="givenName" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
61-
<saml2:AttributeValue
62-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
63-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">User
64-
</saml2:AttributeValue>
65-
</saml2:Attribute>
66-
<saml2:Attribute Name="surName" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
67-
<saml2:AttributeValue
68-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
69-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">Dude
70-
</saml2:AttributeValue>
71-
</saml2:Attribute>
72-
<saml2:Attribute Name="mail" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
73-
<saml2:AttributeValue
74-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
75-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">user.dude@example.com
76-
</saml2:AttributeValue>
77-
</saml2:Attribute>
78-
<saml2:Attribute Name="groups" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
79-
<saml2:AttributeValue
80-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
81-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">group1
82-
</saml2:AttributeValue>
83-
<saml2:AttributeValue
84-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
85-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">group2
86-
</saml2:AttributeValue>
87-
</saml2:Attribute>
88-
</saml2:AttributeStatement>
89-
</saml2:Assertion>
90-
```
31+
Locate the newly created application in your list of Okta applications. Open the application and navigate to the `Sign On` tab. Find the `Attribute statements` block.
32+
33+
34+
Configure Okta SAML attributes using either Option A or Option B as described below. The `uid` and `mail` attributes are mandatory, but we suggest adding `givenName` and
35+
`surName` too. Set the `groups` attribute to select which Okta groups to forward from Okta to Gravwell. Both options (A and B) show how to send **all** groups.
36+
37+
![](okta_saml_attributes_empty.png)
38+
39+
### (Option A) Attribute Statements
9140

92-
After finalizing your application integration, Okta will show a `Sign On Methods` screen containing a SAML 2.0 Metadata URL. Copy the URL (you will need it for your `gravwell.conf` configuration).
41+
Okta's attribute statements have migrated to using the [Okta Expression Language (EL)](https://developer.okta.com/docs/reference/okta-expression-language).
42+
The following example would forward all groups from Okta and grant admin access to members of Okta group `foo-admin-group`.
9343

94-
Next go to your Okta application and assign people and groups to the application; the group assignments can control which groups are passed to Gravwell as well as which users can log into the application.
44+
![](okta_saml_attributes_oel.png)
9545

96-
![](setup_3.png)
46+
### (Option B) Legacy Configuration
47+
48+
If you do not want to use EL for SAML attributes, you can still use Okta's legacy configuration as follows.
49+
50+
![](okta_saml_attributes_legacy.png)
51+
52+
## Okta App Assignments
53+
54+
Next go to your Okta application and assign people and groups to the application to allow sign-on access to Gravwell.
55+
56+
![](okta_app_assignments.png)
9757

9858
## Set up Gravwell configuration block
9959

60+
You will need the metadata URL provided in the Gravwell Okta app -> `Sign On` tab -> `Metadata URL` block.
61+
10062
On the system running the Gravwell webserver, create a file named `/opt/gravwell/etc/gravwell.conf.d/sso.conf` and paste the following into it:
10163

10264
```
File renamed without changes.
61.3 KB
Loading
30.5 KB
Loading
68.3 KB
Loading

0 commit comments

Comments
 (0)