fix: owner should not be marked as shared when host is shared to their role (#492)

This commit was merged in pull request #492.
This commit is contained in:
ZacharyZcR
2026-01-12 15:29:24 +08:00
committed by GitHub
parent f5d948aa45
commit 4648549e74

View File

@@ -852,7 +852,7 @@ router.get(
socks5ProxyChain: sshData.socks5ProxyChain, socks5ProxyChain: sshData.socks5ProxyChain,
ownerId: sshData.userId, ownerId: sshData.userId,
isShared: sql<boolean>`${hostAccess.id} IS NOT NULL`, isShared: sql<boolean>`${hostAccess.id} IS NOT NULL AND ${sshData.userId} != ${userId}`,
permissionLevel: hostAccess.permissionLevel, permissionLevel: hostAccess.permissionLevel,
expiresAt: hostAccess.expiresAt, expiresAt: hostAccess.expiresAt,
}) })
@@ -1700,8 +1700,9 @@ async function resolveHostCredentials(
if (requestingUserId && requestingUserId !== ownerId) { if (requestingUserId && requestingUserId !== ownerId) {
try { try {
const { SharedCredentialManager } = const { SharedCredentialManager } = await import(
await import("../../utils/shared-credential-manager.js"); "../../utils/shared-credential-manager.js"
);
const sharedCredManager = SharedCredentialManager.getInstance(); const sharedCredManager = SharedCredentialManager.getInstance();
const sharedCred = await sharedCredManager.getSharedCredentialForUser( const sharedCred = await sharedCredManager.getSharedCredentialForUser(
host.id as number, host.id as number,