diff --git a/frontend/src/pages/pam/PamAccountsPage/components/PamAccessAccountModal.tsx b/frontend/src/pages/pam/PamAccountsPage/components/PamAccessAccountModal.tsx index 8e9a0f8da8..2629001828 100644 --- a/frontend/src/pages/pam/PamAccountsPage/components/PamAccessAccountModal.tsx +++ b/frontend/src/pages/pam/PamAccountsPage/components/PamAccessAccountModal.tsx @@ -10,11 +10,26 @@ import { PamResourceType, TPamAccount } from "@app/hooks/api/pam"; type Props = { account?: TPamAccount; + accountPath?: string; isOpen: boolean; onOpenChange: (isOpen: boolean) => void; + projectId: string; }; -export const PamAccessAccountModal = ({ isOpen, onOpenChange, account }: Props) => { +export const PamAccessAccountModal = ({ + isOpen, + onOpenChange, + account, + projectId, + accountPath +}: Props) => { + let fullAccountPath = account?.name; + if (accountPath) { + let path = accountPath; + if (path.startsWith("/")) path = path.slice(1); + fullAccountPath = `${path}/${account?.name}`; + } + const { protocol, hostname, port } = window.location; const portSuffix = port && port !== "80" && port !== "443" ? `:${port}` : ""; const siteURL = `${protocol}//${hostname}${portSuffix}`; @@ -68,9 +83,9 @@ export const PamAccessAccountModal = ({ isOpen, onOpenChange, account }: Props) switch (account.resource.resourceType) { case PamResourceType.Postgres: case PamResourceType.MySQL: - return `infisical pam db access-account ${account.id} --duration ${cliDuration} --domain ${siteURL}`; + return `infisical pam db access-account ${fullAccountPath} --project-id ${projectId} --duration ${cliDuration} --domain ${siteURL}`; case PamResourceType.SSH: - return `infisical pam ssh access-account ${account.id} --duration ${cliDuration} --domain ${siteURL}`; + return `infisical pam ssh access-account ${fullAccountPath} --project-id ${projectId} --duration ${cliDuration} --domain ${siteURL}`; default: return ""; } diff --git a/frontend/src/pages/pam/PamAccountsPage/components/PamAccountsTable.tsx b/frontend/src/pages/pam/PamAccountsPage/components/PamAccountsTable.tsx index d45f89a90d..1dd5e7f307 100644 --- a/frontend/src/pages/pam/PamAccountsPage/components/PamAccountsTable.tsx +++ b/frontend/src/pages/pam/PamAccountsPage/components/PamAccountsTable.tsx @@ -466,6 +466,12 @@ export const PamAccountsTable = ({ projectId }: Props) => { isOpen={popUp.accessAccount.isOpen} onOpenChange={(isOpen) => handlePopUpToggle("accessAccount", isOpen)} account={popUp.accessAccount.data} + accountPath={ + popUp.accessAccount.data?.folderId + ? folderPaths[popUp.accessAccount.data.folderId] + : undefined + } + projectId={projectId} />