Skip to content

Commit 0555c84

Browse files
Merge branch 'main' into config-update-thread
Signed-off-by: Darshit Chanpura <[email protected]>
2 parents ab13513 + 20ebf22 commit 0555c84

File tree

123 files changed

+4742
-1839
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+4742
-1839
lines changed

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,17 @@ updates:
1111
labels:
1212
- "dependabot"
1313
- "dependencies"
14+
- package-ecosystem: "gradle"
15+
directory: "/libs/opensaml/"
16+
schedule:
17+
interval: "weekly"
18+
ignore:
19+
# For all packages, ignore all major versions to minimize breaking issues
20+
- dependency-name: "*"
21+
update-types: [ "version-update:semver-major" ]
22+
labels:
23+
- "dependabot"
24+
- "dependencies"
1425
- package-ecosystem: "github-actions"
1526
directory: "/"
1627
schedule:

.github/workflows/ci.yml

Lines changed: 4 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ jobs:
116116
./build/reports/
117117
118118
report-coverage:
119-
needs: ["test-windows", "test-linux", "integration-tests-windows", "integration-tests-linux", "spi-tests-linux", "spi-tests-windows", "sample-plugin-integration-tests-linux", "sample-plugin-integration-tests-windows"]
119+
needs: ["test-windows", "test-linux", "integration-tests-windows", "integration-tests-linux", "sample-plugin-integration-tests-linux", "sample-plugin-integration-tests-windows"]
120120
runs-on: ubuntu-latest
121121
steps:
122122
- uses: actions/checkout@v5
@@ -215,82 +215,6 @@ jobs:
215215
path: |
216216
./build/reports/
217217
218-
spi-tests-linux:
219-
name: spi-tests
220-
needs: ["Get-CI-Image-Tag"]
221-
strategy:
222-
fail-fast: false
223-
matrix:
224-
jdk: [21, 24]
225-
platform: [ubuntu-latest]
226-
runs-on: ${{ matrix.platform }}
227-
container:
228-
# using the same image which is used by opensearch-build to build the OpenSearch Distribution
229-
# this image tag is subject to change as more dependencies and updates will arrive over time
230-
image: ${{ needs.Get-CI-Image-Tag.outputs.ci-image-version-linux }}
231-
# need to switch to root so that github actions can install runner binary on container without permission issues.
232-
options: ${{ needs.Get-CI-Image-Tag.outputs.ci-image-start-options }}
233-
234-
steps:
235-
- name: Run start commands
236-
run: ${{ needs.Get-CI-Image-Tag.outputs.ci-image-start-command }}
237-
238-
- name: Set up JDK for build and test
239-
uses: actions/setup-java@v5
240-
with:
241-
distribution: temurin # Temurin is a distribution of adoptium
242-
java-version: ${{ matrix.jdk }}
243-
244-
- name: Checkout security
245-
uses: actions/checkout@v5
246-
247-
- name: Run SPI Tests
248-
uses: gradle/gradle-build-action@v3
249-
with:
250-
cache-disabled: true
251-
arguments: |
252-
:opensearch-security-spi:test -Dbuild.snapshot=false
253-
254-
- uses: actions/upload-artifact@v4
255-
if: always()
256-
with:
257-
name: spi-${{ matrix.platform }}-JDK${{ matrix.jdk }}-reports
258-
path: |
259-
./build/reports/
260-
261-
spi-tests-windows:
262-
name: spi-tests
263-
strategy:
264-
fail-fast: false
265-
matrix:
266-
jdk: [21, 24]
267-
platform: [windows-latest]
268-
runs-on: ${{ matrix.platform }}
269-
270-
steps:
271-
- name: Set up JDK for build and test
272-
uses: actions/setup-java@v5
273-
with:
274-
distribution: temurin # Temurin is a distribution of adoptium
275-
java-version: ${{ matrix.jdk }}
276-
277-
- name: Checkout security
278-
uses: actions/checkout@v5
279-
280-
- name: Run SPI Tests
281-
uses: gradle/gradle-build-action@v3
282-
with:
283-
cache-disabled: true
284-
arguments: |
285-
:opensearch-security-spi:test -Dbuild.snapshot=false
286-
287-
- uses: actions/upload-artifact@v4
288-
if: always()
289-
with:
290-
name: spi-${{ matrix.platform }}-JDK${{ matrix.jdk }}-reports
291-
path: |
292-
./build/reports/
293-
294218
sample-plugin-integration-tests-linux:
295219
name: sample-plugin-integration-tests
296220
needs: [ "Get-CI-Image-Tag" ]
@@ -444,17 +368,17 @@ jobs:
444368
with:
445369
distribution: temurin # Temurin is a distribution of adoptium
446370
java-version: 21
447-
- uses: github/codeql-action/init@v3
371+
- uses: github/codeql-action/init@v4
448372
with:
449373
languages: java
450374
- run: ./gradlew clean assemble
451-
- uses: github/codeql-action/analyze@v3
375+
- uses: github/codeql-action/analyze@v4
452376

453377
build-health:
454378
runs-on: ubuntu-latest
455379
steps:
456380
- uses: actions/checkout@v5
457-
- uses: actions/setup-java@v4
381+
- uses: actions/setup-java@v5
458382
with:
459383
distribution: temurin # Temurin is a distribution of adoptium
460384
java-version: 21

.github/workflows/dependabot_pr.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
./gradlew updateSHAs
3636
3737
- name: Commit the changes
38-
uses: stefanzweifel/git-auto-commit-action@v6
38+
uses: stefanzweifel/git-auto-commit-action@v7
3939
with:
4040
commit_message: Updating SHAs
4141
branch: ${{ github.head_ref }}
@@ -48,7 +48,7 @@ jobs:
4848
./gradlew spotlessApply
4949
5050
- name: Commit the changes
51-
uses: stefanzweifel/git-auto-commit-action@v6
51+
uses: stefanzweifel/git-auto-commit-action@v7
5252
with:
5353
commit_message: Spotless formatting
5454
branch: ${{ github.head_ref }}
@@ -63,7 +63,7 @@ jobs:
6363
sectionHeader: "Maintenance"
6464

6565
- name: Commit the changes
66-
uses: stefanzweifel/git-auto-commit-action@v6
66+
uses: stefanzweifel/git-auto-commit-action@v7
6767
with:
6868
commit_message: "Update changelog"
6969
branch: ${{ github.head_ref }}

.github/workflows/maven-publish.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,13 @@ jobs:
2929
export-env: true
3030
env:
3131
OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }}
32-
SONATYPE_USERNAME: op://opensearch-infra-secrets/maven-central-portal-credentials/username
33-
SONATYPE_PASSWORD: op://opensearch-infra-secrets/maven-central-portal-credentials/password
32+
MAVEN_SNAPSHOTS_S3_REPO: op://opensearch-infra-secrets/maven-snapshots-s3/repo
33+
MAVEN_SNAPSHOTS_S3_ROLE: op://opensearch-infra-secrets/maven-snapshots-s3/role
34+
- name: Configure AWS credentials
35+
uses: aws-actions/configure-aws-credentials@v5
36+
with:
37+
role-to-assume: ${{ env.MAVEN_SNAPSHOTS_S3_ROLE }}
38+
aws-region: us-east-1
3439
- name: publish snapshots to maven
3540
run: |
3641
./gradlew --no-daemon publishPluginZipPublicationToSnapshotsRepository publishShadowPublicationToSnapshotsRepository

.github/workflows/plugin_install.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Plugin Install
33
on: [push, pull_request, workflow_dispatch]
44

55
env:
6-
OPENSEARCH_VERSION: 3.3.0
6+
OPENSEARCH_VERSION: 3.4.0
77
PLUGIN_NAME: opensearch-security
88

99
jobs:
@@ -41,7 +41,7 @@ jobs:
4141
shell: bash
4242

4343
- name: Run Opensearch with A Single Plugin
44-
uses: derek-ho/start-opensearch@v8
44+
uses: derek-ho/start-opensearch@v9
4545
if: ${{ runner.os != 'Windows' }}
4646
with:
4747
opensearch-version: ${{ env.OPENSEARCH_VERSION }}
@@ -51,7 +51,7 @@ jobs:
5151
jdk-version: 21
5252

5353
- name: Run Opensearch with A Single Plugin
54-
uses: derek-ho/start-opensearch@v8
54+
uses: derek-ho/start-opensearch@v9
5555
if: ${{ runner.os == 'Windows' }}
5656
with:
5757
opensearch-version: ${{ env.OPENSEARCH_VERSION }}

CHANGELOG.md

Lines changed: 19 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -4,63 +4,37 @@ All notable changes to this project are documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to the [Semantic Versioning](https://semver.org/spec/v2.0.0.html). See the [CONTRIBUTING guide](./CONTRIBUTING.md#Changelog) for instructions on how to add changelog entries.
55

66
## [Unreleased 3.x]
7+
### Added
78

89
### Features
910

1011
### Enhancements
11-
12-
- [Resource Sharing] Use DLS to automatically filter sharable resources for authenticated user based on `all_shared_principals` ([#5600](https://github.com/opensearch-project/security/pull/5600))
13-
- [Resource Sharing] Keep track of list of principals for which sharable resource is visible for searching ([#5596](https://github.com/opensearch-project/security/pull/5596))
14-
- [Resource Sharing] Keep track of tenant for sharable resources by persisting user requested tenant with sharing info ([#5588](https://github.com/opensearch-project/security/pull/5588))
15-
- [SecurityPlugin Health Check] Add AuthZ initialization completion check in health check API [(#5626)](https://github.com/opensearch-project/security/pull/5626)
1612
- Moved configuration reloading to dedicated thread to improve node stability ([#5479](https://github.com/opensearch-project/security/pull/5479))
17-
- [Resource Sharing] Adds API to provide dashboards support for resource access management ([#5597](https://github.com/opensearch-project/security/pull/5597))
18-
- Direct JWKS (JSON Web Key Set) support in the JWT authentication backend ([#5578](https://github.com/opensearch-project/security/pull/5578))
13+
- Makes resource settings dynamic ([#5677](https://github.com/opensearch-project/security/pull/5677))
1914

2015
### Bug Fixes
16+
- Create a WildcardMatcher.NONE when creating a WildcardMatcher with an empty string ([#5694](https://github.com/opensearch-project/security/pull/5694))
17+
- Improve array validator to also check for blank string in addition to null ([#5714](https://github.com/opensearch-project/security/pull/5714))
18+
- Use RestRequestFilter.getFilteredRequest to declare sensitive API params ([#5710](https://github.com/opensearch-project/security/pull/5710))
2119

22-
- Added new option skip_users to client cert authenticator (clientcert_auth_domain.http_authenticator.config.skip_users in config.yml)([#4378](https://github.com/opensearch-project/security/pull/5525))
23-
- [Resource Sharing] Fixes accessible resource ids search by marking created_by.user field as keyword search instead of text ([#5574](https://github.com/opensearch-project/security/pull/5574))
24-
- [Resource Sharing] Reverts @Inject pattern usage for ResourceSharingExtension to client accessor pattern. ([#5576](https://github.com/opensearch-project/security/pull/5576))
25-
- Inject user custom attributes when injecting user and role information to the thread context ([#5560](https://github.com/opensearch-project/security/pull/5560))
26-
- Allow any plugin system request when `plugins.security.system_indices.enabled` is set to `false` ([#5579](https://github.com/opensearch-project/security/pull/5579))
27-
- [Resource Sharing] Always treat GET _doc request as indices request even when performed on sharable resource index ([#5631](https://github.com/opensearch-project/security/pull/5631))
28-
- Fix JWT log spam when JWT authenticator is configured with an empty list for roles_key ([#5640](https://github.com/opensearch-project/security/pull/5640))
29-
- Updates resource visibility when handling PATCH api to update sharing record ([#5654](https://github.com/opensearch-project/security/pull/5654))
3020

3121
### Refactoring
32-
33-
- [Resource Sharing] Match index settings of .kibana indices for resource sharing indices ([#5605](https://github.com/opensearch-project/security/pull/5605))
22+
- [Resource Sharing] Make migrate api require default access level to be supplied and updates documentations + tests ([#5717](https://github.com/opensearch-project/security/pull/5717))
23+
- [Resource Sharing] Removes share and revoke java APIs ([#5718](https://github.com/opensearch-project/security/pull/5718))
3424

3525
### Maintenance
36-
- Update delete_backport_branch workflow to include release-chores branches ([#5548](https://github.com/opensearch-project/security/pull/5548))
37-
- Bump `1password/load-secrets-action` from 2 to 3 ([#5573](https://github.com/opensearch-project/security/pull/5573))
38-
- Bump `actions/checkout` from 4 to 5 ([#5572](https://github.com/opensearch-project/security/pull/5572), [#5660](https://github.com/opensearch-project/security/pull/5660))
39-
- Bump `jjwt_version` from 0.12.6 to 0.13.0 ([#5568](https://github.com/opensearch-project/security/pull/5568), [#5581](https://github.com/opensearch-project/security/pull/5581))
40-
- Bump `org.mockito:mockito-core` from 5.18.0 to 5.20.0 ([#5566](https://github.com/opensearch-project/security/pull/5566), [#5650](https://github.com/opensearch-project/security/pull/5650))
41-
- Bump `open_saml_version` from 5.1.4 to 5.1.6 ([#5567](https://github.com/opensearch-project/security/pull/5567), [#5614](https://github.com/opensearch-project/security/pull/5614))
42-
- Bump `com.google.j2objc:j2objc-annotations` from 3.0.0 to 3.1 ([#5570](https://github.com/opensearch-project/security/pull/5570))
43-
- Bump `spring_version` from 6.2.9 to 6.2.11 ([#5569](https://github.com/opensearch-project/security/pull/5569), [#5636](https://github.com/opensearch-project/security/pull/5636))
44-
- Bump `com.github.spotbugs` from 6.2.4 to 6.4.1 ([#5584](https://github.com/opensearch-project/security/pull/5584), [#5611](https://github.com/opensearch-project/security/pull/5611), [#5637](https://github.com/opensearch-project/security/pull/5637))
45-
- Bump `open_saml_shib_version` from 9.1.4 to 9.1.6 ([#5585](https://github.com/opensearch-project/security/pull/5585), [#5612](https://github.com/opensearch-project/security/pull/5612))
46-
- Bump `org.springframework.kafka:spring-kafka-test` from 4.0.0-M3 to 4.0.0-M4 ([#5583](https://github.com/opensearch-project/security/pull/5583))
47-
- Bump `net.bytebuddy:byte-buddy` from 1.17.6 to 1.17.7 ([#5586](https://github.com/opensearch-project/security/pull/5586))
48-
- Bump `io.dropwizard.metrics:metrics-core` from 4.2.33 to 4.2.37 ([#5589](https://github.com/opensearch-project/security/pull/5589), [#5638](https://github.com/opensearch-project/security/pull/5638))
49-
- Bump `com.nimbusds:nimbus-jose-jwt:9.48` from 9.48 to 10.4.2 ([#5595](https://github.com/opensearch-project/security/pull/5595))
50-
- Bump `actions/github-script` from 7 to 8 ([#5610](https://github.com/opensearch-project/security/pull/5610))
51-
- Bump `org.eclipse.platform:org.eclipse.core.runtime` from 3.33.100 to 3.34.0 ([#5628](https://github.com/opensearch-project/security/pull/5628))
52-
- Bump `org.opensearch:protobufs` from 0.6.0 to 0.13.0 ([#5553](https://github.com/opensearch-project/security/pull/5553))
53-
- Bump `org.checkerframework:checker-qual` from 3.49.5 to 3.51.0 ([#5627](https://github.com/opensearch-project/security/pull/5627))
54-
- Bump `com.nimbusds:nimbus-jose-jwt` from 10.4.2 to 10.5 ([#5629](https://github.com/opensearch-project/security/pull/5629))
55-
- Bump `derek-ho/start-opensearch` from 7 to 8 ([#5630](https://github.com/opensearch-project/security/pull/5630))
56-
- Bump `actions/setup-java` from 4 to 5 ([#5582](https://github.com/opensearch-project/security/pull/5582))
57-
- Bump `org.eclipse.platform:org.eclipse.equinox.common` from 3.20.100 to 3.20.200 ([#5651](https://github.com/opensearch-project/security/pull/5651))
58-
- Bump `jakarta.xml.bind:jakarta.xml.bind-api` from 4.0.2 to 4.0.4 ([#5649](https://github.com/opensearch-project/security/pull/5649))
59-
- Bump `com.google.errorprone:error_prone_annotations` from 2.41.0 to 2.42.0 ([#5648](https://github.com/opensearch-project/security/pull/5648))
60-
- Bump `com.google.guava:guava` from 33.4.8-jre to 33.5.0-jre ([#5665](https://github.com/opensearch-project/security/pull/5665))
26+
- Bump `org.junit.jupiter:junit-jupiter` from 5.13.4 to 5.14.0 ([#5678](https://github.com/opensearch-project/security/pull/5678))
27+
- Bump `ch.qos.logback:logback-classic` from 1.5.18 to 1.5.19 ([#5680](https://github.com/opensearch-project/security/pull/5680))
28+
- Bump `org.scala-lang:scala-library` from 2.13.16 to 2.13.17 ([#5682](https://github.com/opensearch-project/security/pull/5682))
29+
- Bump `org.gradle.test-retry` from 1.6.2 to 1.6.4 ([#5706](https://github.com/opensearch-project/security/pull/5706))
30+
- Bump `org.checkerframework:checker-qual` from 3.51.0 to 3.51.1 ([#5705](https://github.com/opensearch-project/security/pull/5705))
31+
- Bump `org.ow2.asm:asm` from 9.8 to 9.9 ([#5707](https://github.com/opensearch-project/security/pull/5707))
32+
- Bump `stefanzweifel/git-auto-commit-action` from 6 to 7 ([#5704](https://github.com/opensearch-project/security/pull/5704))
33+
- Bump `net.bytebuddy:byte-buddy` from 1.17.7 to 1.17.8 ([#5703](https://github.com/opensearch-project/security/pull/5703))
34+
- Bump `derek-ho/start-opensearch` from 7 to 9 ([#5630](https://github.com/opensearch-project/security/pull/5630), [#5679](https://github.com/opensearch-project/security/pull/5679))
35+
- Bump `github/codeql-action` from 3 to 4 ([#5702](https://github.com/opensearch-project/security/pull/5702))
36+
- Bump `com.github.spotbugs` from 6.4.2 to 6.4.4 ([#5727](https://github.com/opensearch-project/security/pull/5727))
6137

6238
### Documentation
6339

64-
- [Resource Sharing] Adds comprehensive documentation for Resource Access Control feature ([#5540](https://github.com/opensearch-project/security/pull/5540))
65-
66-
[Unreleased 3.x]: https://github.com/opensearch-project/security/compare/3.2...main
40+
[Unreleased 3.x]: https://github.com/opensearch-project/security/compare/3.3...main

0 commit comments

Comments
 (0)