A importação do módulo NTFSSecurity do caminho UNC falha

3

Eu criei um repositório central para os módulos do Powershell, mas estou tendo problemas para carregar um em particular. O módulo NTFSSecurity está falhando ao importar com a seguinte mensagem.

PS Z:\> Import-Module NTFSSecurity
Add-Type : Could not load file or assembly 'file://\fs\PowerShellModules\NTFSSecurity\Security2.dll' or one of its
dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
At \fs\PowerShellModules\NTFSSecurity\NTFSSecurity.Init.ps1:141 char:1
+ Add-Type -Path $PSScriptRoot\Security2.dll
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-Type], FileLoadException
    + FullyQualifiedErrorId : System.IO.FileLoadException,Microsoft.PowerShell.Commands.AddTypeCommand

Add-Type : Could not load file or assembly 'file://\fs\PowerShellModules\NTFSSecurity\PrivilegeControl.dll' or one
of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
At \fs\PowerShellModules\NTFSSecurity\NTFSSecurity.Init.ps1:142 char:1
+ Add-Type -Path $PSScriptRoot\PrivilegeControl.dll -ReferencedAssemblies $PSScrip ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-Type], FileLoadException
    + FullyQualifiedErrorId : System.IO.FileLoadException,Microsoft.PowerShell.Commands.AddTypeCommand

Add-Type : Could not load file or assembly 'file://\fs\PowerShellModules\NTFSSecurity\ProcessPrivileges.dll' or one
of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)
At \fs\PowerShellModules\NTFSSecurity\NTFSSecurity.Init.ps1:143 char:1
+ Add-Type -Path $PSScriptRoot\ProcessPrivileges.dll
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-Type], FileLoadException
    + FullyQualifiedErrorId : System.IO.FileLoadException,Microsoft.PowerShell.Commands.AddTypeCommand

Types added
NTFSSecurity Module loaded
Import-Module : Unable to find type [Security2.IdentityReference2]: make sure that the assembly containing this type
is loaded.
At line:1 char:1
+ Import-Module NTFSSecurity
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (Security2.IdentityReference2:TypeName) [Import-Module], RuntimeExcept
   ion
    + FullyQualifiedErrorId : TypeNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand

Estou executando o Windows Management Foundation 3.0 Beta, que inclui o PowerShell 3.0. Tenho a sensação de que as novas medidas de segurança introduzidas no .NET 4.0 estão desempenhando um papel nisso, mas executar Powershell.exe com a opção -version 2.0 também não corrige nada. Eu modifiquei meus arquivos powershell.exe.config nas pastas system32 e SysWOW64 para o seguinte.

<?xml version="1.0"?>
<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true">
        <supportedRuntime version="v4.0.30319"/>
        <supportedRuntime version="v2.0.50727"/>
    </startup>
    <runtime>
        <loadfromremotesources enabled="true"/>
    </runtime>
</configuration>

Os arquivos não estão "bloqueados", eu verifiquei cada um individualmente (assim como execute Unblock-File no diretório). Permissões do servidor final estão bem, eu verifiquei que tenho acesso a tudo. O que eu não verifiquei?

    
por pk. 10.05.2012 / 18:38

4 respostas

0

Pode ser um arquivo corrompido / download inválido.

Eu estava recebendo o mesmo erro ao tentar carregar o módulo de um dos meus scripts. Eu fui e re-baixei o mais recente v2.3 e extraí-lo em minha pasta Powershell Modules (C: \ windows \ system32 \ WindowsPowershell \ v1.0 \ Módulos \ NTFSSecurity).

Isso resolveu meu problema.

    
por 17.10.2013 / 19:57
0

Em vez de carregar o módulo diretamente de um compartilhamento, tenho a tendência de ter uma função que o copie localmente (isso também pode ser ajustado para procurar por versões mais recentes). Eu suponho que isso poderia ser escrito em linha, mas eu fiz uma função como parte dos meus 'módulos comuns' que eu carrego.

Function Import-NTFSModule {
   $NTModule = 'C:\Windows\System32\WindowsPowershell\v1.0\Modules\NTFSSecurity'
   $NTSource = '\servername.fqdn\sharename\Modules\NTFSSecurity'
   If (!(Get-Module -Name NTFSSecurity)) {
      If (!(Test-Path -Path $NTModule) -and (Test-Path $NTSource)) { Copy-Item $NTSource -Destination "$NTModule\" -Recurse -Force }
   }
}
    
por 16.02.2015 / 23:43
0

Por padrão, o arquivo .ZIP que você baixa não pode ser executado. Clique com o botão direito e escolha "Desbloquear" antes de descompactá-lo, e os arquivos abaixo também serão desbloqueados.

Desculpe, quando eu postei originalmente, não vi que você disse que tinha desbloqueado. Eu só recebi o erro (código de erro idêntico) enquanto os arquivos estavam em estado bloqueado.

    
por 29.12.2016 / 19:45
-1

Execute o NTFSSecurity do Import-Module em Windows Powershell (não no ISE )

    
por 10.05.2017 / 10:41