我正在尝试在我的公司中设置端点服务器并且正在努力连接到它。为了进行测试,我将 RcLogUtil 模块放在导出函数的全局模块路径
C:\windows\system32\WindowsPowershell\v1.0\Modules\RcLogUtil\
中
'Out-LogToEventLog','New-LogMessage'
该计划是让一组特定的用户只访问那些记录功能。
我创建一个会话配置:
New-PSSessionConfigurationFile -Path C:\Scripts\LoggerEp.pssc `
-SessionType RestrictedRemoteServer `
-LanguageMode FullLanguage `
-ExecutionPolicy Unrestricted `
-ModulesToImport 'RcLogUtil' `
-VisibleFunctions 'Out-LogToEventLog' `
-VisibleCmdlets 'Split-Path'
注册它:
Register-PSSessionConfiguration -Path C:\Scripts\LoggerEp.pssc `
-Name loggerep `
-ShowSecurityDescriptorUI
并在我的本地机器上输入:
[W0216]> Enter-PSSession -ComputerName mka-ps-endpoint -ConfigurationName loggerep
Enter-PSSession:处理用于创建此运行空间的 InitialSessionState 对象中指定的模块“RcLogUtil”时发生一个或多个错误。有关错误的完整列表,请参阅 ErrorRecords 属性。第一个错误是:“Split-Path”一词未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。在 line:1 char:1 + Enter-PSSession -ComputerName mka-ps-endpoint -ConfigurationName loggerep + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : OpenError: (:) [Enter-PSSession],RunspaceOpenModuleLoadException + FullyQualifiedErrorId:ErrorLoadingModulesOnRunspaceOpen
现在最大的问题是.. 为什么 Session 无法找到 Split-Path?或者我如何告诉端点加载那个特定的 cmdlet?我用 SessionType='Default' 成功地尝试了同样的方法,它可以工作,但是周围有所有的 powershell 混乱。
我真的很感激我能得到的任何帮助,因为我已经坚持了很长一段时间了。谢谢!