Skip to content

Commit eefee72

Browse files
gmaroulijbaiera
andauthored
[Failure store] Only add failure indices when failure store flag is on. (#119934)
* Only add failure indices when failure store flag is on. * Limit test to not look for failure store indices when failure store is disabled --------- Co-authored-by: James Baiera <[email protected]>
1 parent b5c29f1 commit eefee72

File tree

2 files changed

+27
-25
lines changed

2 files changed

+27
-25
lines changed

muted-tests.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -239,12 +239,6 @@ tests:
239239
- class: org.elasticsearch.xpack.inference.action.filter.ShardBulkInferenceActionFilterIT
240240
method: testBulkOperations {p0=false}
241241
issue: https://github.com/elastic/elasticsearch/issues/119901
242-
- class: org.elasticsearch.xpack.security.authz.IndicesAndAliasesResolverTests
243-
method: testBackingIndicesAreVisibleWhenIncludedByRequestWithWildcard
244-
issue: https://github.com/elastic/elasticsearch/issues/119908
245-
- class: org.elasticsearch.xpack.security.authz.IndicesAndAliasesResolverTests
246-
method: testBackingIndicesAreNotVisibleWhenNotIncludedByRequestWithoutWildcard
247-
issue: https://github.com/elastic/elasticsearch/issues/119909
248242
- class: org.elasticsearch.xpack.inference.InferenceCrudIT
249243
method: testGetServicesWithCompletionTaskType
250244
issue: https://github.com/elastic/elasticsearch/issues/119959

x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authz/IndicesAndAliasesResolverTests.java

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ public void setup() {
161161
IndexMetadata dataStreamFailureStore1 = DataStreamTestHelper.createFailureStore(dataStreamName, 1).build();
162162
IndexMetadata dataStreamFailureStore2 = DataStreamTestHelper.createFailureStore(dataStreamName, 2).build();
163163
IndexMetadata dataStreamIndex3 = DataStreamTestHelper.createBackingIndex(otherDataStreamName, 1).build();
164-
Metadata metadata = Metadata.builder()
164+
Metadata.Builder metadataBuilder = Metadata.builder()
165165
.put(
166166
indexBuilder("foo").putAlias(AliasMetadata.builder("foofoobar"))
167167
.putAlias(AliasMetadata.builder("foounauthorized"))
@@ -219,23 +219,27 @@ public void setup() {
219219
.put(dataStreamIndex1, true)
220220
.put(dataStreamIndex2, true)
221221
.put(dataStreamIndex3, true)
222-
.put(dataStreamFailureStore1, true)
223-
.put(dataStreamFailureStore2, true)
224-
.put(
225-
newInstance(
226-
dataStreamName,
227-
List.of(dataStreamIndex1.getIndex(), dataStreamIndex2.getIndex()),
228-
List.of(dataStreamFailureStore1.getIndex(), dataStreamFailureStore2.getIndex())
229-
)
230-
)
231222
.put(newInstance(otherDataStreamName, List.of(dataStreamIndex3.getIndex())))
232-
.put(indexBuilder(securityIndexName).settings(settings))
233-
.build();
223+
.put(indexBuilder(securityIndexName).settings(settings));
234224

225+
// Only add the failure indices if the failure store flag is enabled
226+
if (DataStream.isFailureStoreFeatureFlagEnabled()) {
227+
metadataBuilder.put(dataStreamFailureStore1, true).put(dataStreamFailureStore2, true);
228+
}
229+
metadataBuilder.put(
230+
newInstance(
231+
dataStreamName,
232+
List.of(dataStreamIndex1.getIndex(), dataStreamIndex2.getIndex()),
233+
DataStream.isFailureStoreFeatureFlagEnabled()
234+
? List.of(dataStreamFailureStore1.getIndex(), dataStreamFailureStore2.getIndex())
235+
: List.of()
236+
)
237+
);
235238
if (withAlias) {
236-
metadata = SecurityTestUtils.addAliasToMetadata(metadata, securityIndexName);
239+
this.metadata = SecurityTestUtils.addAliasToMetadata(metadataBuilder.build(), securityIndexName);
240+
} else {
241+
this.metadata = metadataBuilder.build();
237242
}
238-
this.metadata = metadata;
239243

240244
user = new User("user", "role");
241245
userDashIndices = new User("dash", "dash");
@@ -2367,7 +2371,7 @@ public void testDataStreamsAreVisibleWhenIncludedByRequestWithoutWildcard() {
23672371

23682372
public void testBackingIndicesAreVisibleWhenIncludedByRequestWithWildcard() {
23692373
final User user = new User("data-stream-tester3", "data_stream_test3");
2370-
boolean failureStore = randomBoolean();
2374+
boolean failureStore = runFailureStore();
23712375
SearchRequest request = new SearchRequest(failureStore ? ".fs-logs*" : ".ds-logs*");
23722376
assertThat(request, instanceOf(IndicesRequest.Replaceable.class));
23732377
assertThat(request.includeDataStreams(), is(true));
@@ -2447,7 +2451,7 @@ public void testBackingIndicesAreNotVisibleWhenNotIncludedByRequestWithoutWildca
24472451

24482452
public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaWildcardAndRequestThatIncludesDataStreams() {
24492453
final User user = new User("data-stream-tester2", "backing_index_test_wildcards");
2450-
boolean failureStore = randomBoolean();
2454+
boolean failureStore = runFailureStore();
24512455
String indexName = failureStore ? ".fs-logs-foobar-*" : ".ds-logs-foobar-*";
24522456
SearchRequest request = new SearchRequest(indexName);
24532457
assertThat(request, instanceOf(IndicesRequest.Replaceable.class));
@@ -2487,7 +2491,7 @@ public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaWildcar
24872491

24882492
public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaNameAndRequestThatIncludesDataStreams() {
24892493
final User user = new User("data-stream-tester2", "backing_index_test_name");
2490-
boolean failureStore = randomBoolean();
2494+
boolean failureStore = runFailureStore();
24912495
String indexName = failureStore ? ".fs-logs-foobar-*" : ".ds-logs-foobar-*";
24922496
SearchRequest request = new SearchRequest(indexName);
24932497
assertThat(request, instanceOf(IndicesRequest.Replaceable.class));
@@ -2519,7 +2523,7 @@ public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaNameAnd
25192523

25202524
public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaWildcardAndRequestThatExcludesDataStreams() {
25212525
final User user = new User("data-stream-tester2", "backing_index_test_wildcards");
2522-
boolean failureStore = randomBoolean();
2526+
boolean failureStore = runFailureStore();
25232527
String indexName = failureStore ? ".fs-logs-foobar-*" : ".ds-logs-foobar-*";
25242528
GetAliasesRequest request = new GetAliasesRequest(TEST_REQUEST_TIMEOUT, indexName);
25252529
assertThat(request, instanceOf(IndicesRequest.Replaceable.class));
@@ -2559,7 +2563,7 @@ public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaWildcar
25592563

25602564
public void testDataStreamNotAuthorizedWhenBackingIndicesAreAuthorizedViaNameAndRequestThatExcludesDataStreams() {
25612565
final User user = new User("data-stream-tester2", "backing_index_test_name");
2562-
boolean failureStore = randomBoolean();
2566+
boolean failureStore = runFailureStore();
25632567
String indexName = failureStore ? ".fs-logs-foobar-*" : ".ds-logs-foobar-*";
25642568
GetAliasesRequest request = new GetAliasesRequest(TEST_REQUEST_TIMEOUT, indexName);
25652569
assertThat(request, instanceOf(IndicesRequest.Replaceable.class));
@@ -2674,4 +2678,8 @@ private void assertSameValues(List<String> indices, String[] expectedIndices) {
26742678
assertThat(indices.stream().distinct().count(), equalTo((long) expectedIndices.length));
26752679
assertThat(indices, hasItems(expectedIndices));
26762680
}
2681+
2682+
private boolean runFailureStore() {
2683+
return DataStream.isFailureStoreFeatureFlagEnabled() && randomBoolean();
2684+
}
26772685
}

0 commit comments

Comments
 (0)