diff --git a/src/main/java/net/snowflake/client/jdbc/SnowflakeUtil.java b/src/main/java/net/snowflake/client/jdbc/SnowflakeUtil.java index 8a080a6fc..e40044e59 100644 --- a/src/main/java/net/snowflake/client/jdbc/SnowflakeUtil.java +++ b/src/main/java/net/snowflake/client/jdbc/SnowflakeUtil.java @@ -73,8 +73,8 @@ public class SnowflakeUtil { private static final SFLogger logger = SFLoggerFactory.getLogger(SnowflakeUtil.class); private static final ObjectMapper OBJECT_MAPPER = ObjectMapperFactory.getObjectMapper(); - private static final Set ownerOnlyPermission = - PosixFilePermissions.fromString("rw-------"); + private static final Set directoryOwnerOnlyPermission = + PosixFilePermissions.fromString("rwx------"); /** Additional data types not covered by standard JDBC */ public static final int EXTRA_TYPES_TIMESTAMP_LTZ = 50000; @@ -922,7 +922,8 @@ public static boolean createOwnerOnlyPermissionDir(String location) { boolean isDirCreated = true; Path dir = Paths.get(location); try { - Files.createDirectory(dir, PosixFilePermissions.asFileAttribute(ownerOnlyPermission)); + Files.createDirectory( + dir, PosixFilePermissions.asFileAttribute(directoryOwnerOnlyPermission)); } catch (IOException e) { logger.error( "Failed to set OwnerOnly permission for {}. This may cause the file download to fail ", diff --git a/src/test/java/net/snowflake/client/jdbc/SnowflakeUtilTest.java b/src/test/java/net/snowflake/client/jdbc/SnowflakeUtilTest.java index 8c14bc0f2..1eb2f6811 100644 --- a/src/test/java/net/snowflake/client/jdbc/SnowflakeUtilTest.java +++ b/src/test/java/net/snowflake/client/jdbc/SnowflakeUtilTest.java @@ -139,7 +139,7 @@ public void testCreateOwnerOnlyPermissionDir(@TempDir Path tempDir) assertTrue(tmp.toFile().isDirectory()); PosixFileAttributes attributes = Files.readAttributes(tmp, PosixFileAttributes.class); Set permissions = attributes.permissions(); - assertEquals(PosixFilePermissions.toString(permissions), "rw-------"); + assertEquals(PosixFilePermissions.toString(permissions), "rwx------"); } @Test