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
assertFalse(Files.exists(path.resolve("1")));
        }
        expectThrows(
            ShardLockObtainFailedException.class,
            () -> env.deleteIndexDirectorySafe(index, randomIntBetween(0, 10), idxSettings, indexPaths -> {
                assert false : "should not be called " + indexPaths;
            })
        );
        fooLock.close();
        for (Path path : env.indexPaths(index)) {
            assertTrue(Files.exists(path));
        }
        final AtomicReference<Throwable> threadException = new AtomicReference<>();
        final CountDownLatch latch = new CountDownLatch(1);
        final CountDownLatch blockLatch = new CountDownLatch(1);
        final CountDownLatch start = new CountDownLatch(1);
        if (randomBoolean()) {
            Thread t = new Thread(new AbstractRunnable() {
                @Override
                public void onFailure(Exception e) {
                    logger.error("unexpected error", e);
                    threadException.set(e);
                    latch.countDown();
                    blockLatch.countDown();
                }
                @Override
                protected void doRun() throws Exception {
                    start.await();
                    try (ShardLock autoCloses = env.shardLock(new ShardId(index, 0), "2")) {
                        blockLatch.countDown();