如何在 PowerShell 交互式 JEA 会话中使用 VariableDefintions?

问题描述 投票:0回答:1

我一直在尝试使用

VariableDefintions
在配置文件中定义 PowerShell JEA 会话的变量。

但是,对已定义变量的访问被拒绝。所有其他带有

VisibleCmdlets
FunctionDefinitions
等的配置均有效。

VariableDefinitions @(
  @{ Name = 'Test'; Value = 'blah' }
}

以交互方式成功进入配置的会话后,我被拒绝从控制台访问定义的变量。

[remotehost]: PS> $Test

Cannot access the variable '$Test' because it is a private variable.
+ ----
   + CategoryInfo          : PermissionDenied (Test.String) [], SessionException
   + FullyQualifiedErrorId : VariableIsPrivate

但是由于我启用了 FullLanguage 模式,因此我无论如何都可以定义要在交互式会话中使用的变量。所以我用它作为解决方法。

powershell variables powershell-remoting remoting jea
1个回答
0
投票

正如@Mathias所说...

在 JEA 中使用

VariableDefintions
定义的变量仅适用于已定义的函数和脚本。

尝试从交互式 JEA 控制台会话访问它们是不可能的。

如果我需要隐藏敏感数据,非常好用。
当然,非常敏感的数据应尽可能使用

SecureString
SecretVault
系统进行处理。

© www.soinside.com 2019 - 2024. All rights reserved.