@@ -324,15 +324,19 @@ ResolvedIndices resolveIndicesAndAliases(
324324 }
325325 if (indicesOptions .expandWildcardExpressions ()) {
326326 for (String authorizedIndex : authorizedIndices .all ().get ()) {
327- if (IndexAbstractionResolver .isIndexVisible (
328- "*" ,
329- allIndicesPatternSelector ,
330- authorizedIndex ,
331- indicesOptions ,
332- projectMetadata ,
333- nameExpressionResolver ,
334- indicesRequest .includeDataStreams ()
335- )) {
327+ Tuple <String , String > tuple = IndexNameExpressionResolver .splitSelectorExpression (authorizedIndex );
328+ authorizedIndex = tuple .v1 ();
329+ String authorizedSelectorString = tuple .v2 ();
330+ if (IndexAbstractionResolver .selectorsMatch (allIndicesPatternSelector , authorizedSelectorString )
331+ && IndexAbstractionResolver .isIndexVisible (
332+ "*" ,
333+ allIndicesPatternSelector ,
334+ authorizedIndex ,
335+ indicesOptions ,
336+ projectMetadata ,
337+ nameExpressionResolver ,
338+ indicesRequest .includeDataStreams ()
339+ )) {
336340 resolvedIndicesBuilder .addLocal (
337341 IndexNameExpressionResolver .combineSelectorExpression (authorizedIndex , allIndicesPatternSelector )
338342 );
@@ -480,6 +484,10 @@ private static List<String> loadAuthorizedAliases(Supplier<Set<String>> authoriz
480484 List <String > authorizedAliases = new ArrayList <>();
481485 SortedMap <String , IndexAbstraction > existingAliases = projectMetadata .getIndicesLookup ();
482486 for (String authorizedIndex : authorizedIndices .get ()) {
487+ Tuple <String , String > tuple = IndexNameExpressionResolver .splitSelectorExpression (authorizedIndex );
488+ authorizedIndex = tuple .v1 ();
489+ String authorizedSelectorString = tuple .v2 ();
490+ // TODO skip failures here?
483491 IndexAbstraction indexAbstraction = existingAliases .get (authorizedIndex );
484492 if (indexAbstraction != null && indexAbstraction .getType () == IndexAbstraction .Type .ALIAS ) {
485493 authorizedAliases .add (authorizedIndex );
0 commit comments