From b23f5d5993b04e6ca453049e50bcbf1e02fd88a6 Mon Sep 17 00:00:00 2001 From: crschnick Date: Fri, 15 Aug 2025 04:27:26 +0000 Subject: [PATCH] Fix pubkey permissions --- .../io/xpipe/ext/base/identity/SshIdentityStrategy.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ext/base/src/main/java/io/xpipe/ext/base/identity/SshIdentityStrategy.java b/ext/base/src/main/java/io/xpipe/ext/base/identity/SshIdentityStrategy.java index 71f2e54ab..2e28ab4da 100644 --- a/ext/base/src/main/java/io/xpipe/ext/base/identity/SshIdentityStrategy.java +++ b/ext/base/src/main/java/io/xpipe/ext/base/identity/SshIdentityStrategy.java @@ -57,6 +57,11 @@ public interface SshIdentityStrategy { var base = LocalShell.getShell().getSystemTemporaryDirectory().join("key.pub"); var file = LocalShell.getShell().view().writeTextFileDeterministic(base, publicKey.strip() + "\n"); + + if (OsType.getLocal() != OsType.WINDOWS) { + LocalShell.getShell().command(CommandBuilder.of().add("chmod", "400").addFile(file)).executeAndCheck(); + } + return Optional.of(file); } @@ -332,7 +337,7 @@ public interface SshIdentityStrategy { + " is marked to be a public key file, SSH authentication requires the private key")); } - if ((parent.getOsType() == OsType.LINUX || parent.getOsType() == OsType.MACOS)) { + if (parent.getOsType() != OsType.WINDOWS) { // Try to preserve the same permission set parent.command(CommandBuilder.of() .add("test", "-w")