我使用CyberArk 12.1通过SDK获取数据库密码。应用程序是用NetCore3.1编写的,我们将其迁移到NET6。遗憾的是 CA 12.1 与 NET6 不兼容,12.6 中出现支持,但我的组织目前不计划升级
我尝试从我的应用程序 (NET6) 执行 PowerShell 脚本以与 CyberArk 代理连接
脚本从 CA 错误返回
APPAP308E - 进程路径无效。需要完整路径
PowerShell
C:\Program Files (x86)\...\CLIPasswordSDK.exe GetPassword /p AppId=xxx /p Query="Safe=xxx;Folder=Root;Object=xxx" /p Reaseon="test"
我不明白在这种情况下path是什么意思? 我该如何解决问题,我的脚本可能有什么问题?
通过创建新进程在应用程序中执行脚本
Process.Start("script.bat"); // Error about path from CyberArk
必须输入绝对路径
Process.Start("c:\\app\\script.bat"); // works
我自己刚刚遇到了这个问题,我不知道这些信息是否仍然与您相关,但我尝试执行一个脚本,从包含的文件夹中实现 cyberark 调用,如下所示:
cd /包含文件夹
bash脚本.sh
并得到同样的错误......但是当这样调用时:
bash /containFolder/script.sh
脚本运行没有错误。
这是由于 Cyberarks“授权路径”政策造成的。我进入仪表板并意识到 /containFolder/ 是我的 Cyberark 安装的授权路径,这意味着该路径之外的其他脚本无权调用 Cyberark 实现脚本。
希望您觉得这很有用。