After introducing https://github.com/elastic/elasticsearch/pull/86135 the underlying Azure SDK sanitizes incorrectly certain SAS tokens, preventing the correct authentication against the Azure storage service.
modules/repository-azure/src/main/java/org/elasticsearch/repositories/azure/AzureClientProvider.java
int nHeapArena = 1;
        int pageSize = PooledByteBufAllocator.defaultPageSize();
        int maxOrder = PooledByteBufAllocator.defaultMaxOrder();
        int tinyCacheSize = PooledByteBufAllocator.defaultTinyCacheSize();
        int smallCacheSize = PooledByteBufAllocator.defaultSmallCacheSize();
        int normalCacheSize = PooledByteBufAllocator.defaultNormalCacheSize();
        return new PooledByteBufAllocator(false, nHeapArena, 0, pageSize, maxOrder, tinyCacheSize, smallCacheSize, normalCacheSize, false);
    }
    AzureBlobServiceClient createClient(
        AzureStorageSettings settings,
        LocationMode locationMode,
        RequestRetryOptions retryOptions,
        ProxyOptions proxyOptions,
        BiConsumer<String, URL> successfulRequestConsumer
    ) {
        if (closed) {
            throw new IllegalStateException("AzureClientProvider is already closed");
        }
        reactor.netty.http.client.HttpClient nettyHttpClient = reactor.netty.http.client.HttpClient.create(connectionProvider);
        nettyHttpClient = nettyHttpClient.port(80)
            .wiretap(false)
            .resolver(DefaultAddressResolverGroup.INSTANCE)
            .runOn(nioLoopResources)
            .option(ChannelOption.ALLOCATOR, byteBufAllocator);
        final HttpClient httpClient = new NettyAsyncHttpClientBuilder(nettyHttpClient).disableBufferCopy(true).proxy(proxyOptions).build();
        final String connectionString = settings.getConnectString();
        BlobServiceClientBuilder builder = new BlobServiceClientBuilder().connectionString(connectionString)
            .httpClient(httpClient)
            .retryOptions(retryOptions);
        if (successfulRequestConsumer != null) {