Running `gradlew :server:test` in a fresh clone of the repository on Win10 computer has a failure in one test.

Apparently, with UAC enabled creating symbolic links requires granting a permission via a change in security policies.
https://stackoverflow.com/questions/23217460/how-to-create-soft-symbolic-link-using-java-nio-files

### Repro line

gradlew ':server:test' --tests "org.elasticsearch.env.NodeEnvironmentTests.testSymlinkDataDirectory" -Dtests.seed=64424B2A8125138F -Dtests.locale=ar -Dtests.timezone=Africa/Casablanca -Druntime.java=21

### Does it reproduce?

Yes

### Applicable branches

main

### Failure history

_No response_

### Failure excerpt

java.nio.file.FileSystemException: C:\Development\Projects\elasticsearch\server\build\testrun\test\temp\org.elasticsearch.env.NodeEnvironmentTests_64424B2A8125138F-001\tempDir-070\data_symlink: A required privilege is not held by the client
	at __randomizedtesting.SeedInfo.seed([64424B2A8125138F:C771051254BAD1E8]:0)
	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
	at java.base/sun.nio.fs.WindowsFileSystemProvider.createSymbolicLink(WindowsFileSystemProvider.java:604)
	at org.apache.lucene.tests.mockfile.FilterFileSystemProvider.createSymbolicLink(FilterFileSystemProvider.java:240)
	at org.apache.lucene.tests.mockfile.FilterFileSystemProvider.createSymbolicLink(FilterFileSystemProvider.java:240)
	at java.base/java.nio.file.Files.createSymbolicLink(Files.java:1069)
	at org.elasticsearch.env.NodeEnvironmentTests.testSymlinkDataDirectory(NodeEnvironmentTests.java:643)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)

server/src/test/java/org/elasticsearch/env/NodeEnvironmentTests.java
Thread.sleep(randomIntBetween(1, 10));
                    }
                    latch.countDown();
                }
            });
            t.start();
        } else {
            latch.countDown();
            blockLatch.countDown();
        }
        start.countDown();
        blockLatch.await();
        final SetOnce<Path[]> listener = new SetOnce<>();
        env.deleteIndexDirectorySafe(index, 5000, idxSettings, listener::set);
        assertArrayEquals(env.indexPaths(index), listener.get());
        assertNull(threadException.get());
        for (Path path : env.indexPaths(index)) {
            assertFalse(Files.exists(path));
        }
        latch.await();
        assertTrue("LockedShards: " + env.lockedShards(), env.lockedShards().isEmpty());
        env.close();
    }
    public void testStressShardLock() throws IOException, InterruptedException {
        class Int {
            int value = 0;
        }
        final NodeEnvironment env = newNodeEnvironment();
        final int shards = randomIntBetween(2, 10);
        final Int[] counts = new Int[shards];