Expandir um arquivo em uma credencial sem validação de arquivo
Descrição
Este exemplo mostra como você pode usar o Archive
recurso para garantir que um .zip
arquivo seja expandido para um diretório específico em uma conta escolhida. Isso permite que você especifique locais para o arquivo e destino que exigem autorização para acesso e gravação.
Com Ensure definido como Present
, o caminho definido como C:\ExampleArchivePath\Archive.zip
, e o destino definido como C:\ExampleDestinationPath\Destination
, o recurso expande o conteúdo da Archive.zip
Destination
pasta se eles ainda não estiverem lá.
Com a propriedade Credential definida como uma conta com permissões para o Archive.zip
arquivo e a Destination
pasta, o recurso expande o .zip
arquivo como essa conta. Se a conta não tiver permissões para nenhum dos caminhos, o recurso gerará um erro.
Sem as propriedades Validate ou Checksum definidas, o recurso não verifica o conteúdo expandido com os arquivos, Archive.zip
apenas se eles existem. O conteúdo expandido na Destination
pasta pode não corresponder ao conteúdo em Archive.zip
.
Com Invoke-DscResource
Este script mostra como você pode usar o Archive
recurso com o Invoke-DscResource
cmdlet para garantir Archive.zip
que seja expandido para a Destination
pasta, usando a credencial de uma conta especificada para ler e gravar os arquivos.
[CmdletBinding()]
param(
[Parameter(Mandatory)]
[System.Management.Automation.PSCredential]
[System.Management.Automation.Credential()]
$Credential
)
begin {
$SharedParameters = @{
Name = 'Archive'
ModuleName = 'PSDscResource'
Properties = @{
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Credential = $Credential
Ensure = 'Present'
}
}
$NonGetProperties = @(
'Ensure'
)
}
process {
$TestResult = Invoke-DscResource -Method Test @SharedParameters
if ($TestResult.InDesiredState) {
$QueryParameters = $SharedParameters.Clone()
foreach ($Property in $NonGetProperties) {
$QueryParameters.Properties.Remove($Property)
}
Invoke-DscResource -Method Get @QueryParameters
} else {
Invoke-DscResource -Method Set @SharedParameters
}
}
Com uma configuração
Este snippet mostra como você pode definir um com um Configuration
Archive
bloco de recursos para garantir Archive.zip
que seja expandido para a Destination
pasta, usando a credencial de uma conta especificada para ler e gravar os arquivos.
Configuration ExpandArchiveNoValidationCredential {
param(
[Parameter(Mandatory)]
[System.Management.Automation.PSCredential]
[System.Management.Automation.Credential()]
$Credential
)
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
Archive ExampleArchive {
Path = 'C:\ExampleArchivePath\Archive.zip'
Destination = 'C:\ExampleDestinationPath\Destination'
Credential = $Credential
Ensure = 'Present'
}
}
}
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de