Partager via


Prise en main de PowerShell Gallery

PowerShell Gallery est un référentiel de packages contenant des scripts, des modules et des ressources DSC que vous pouvez télécharger et tirer parti. Vous utilisez les applets de commande dans le module PowerShellGet pour installer des packages à partir de PowerShell Gallery. Vous n’avez pas besoin de vous connecter pour télécharger des éléments à partir de PowerShell Gallery.

Note

Il est possible de télécharger un package directement à partir de PowerShell Gallery, mais cette approche n’est pas recommandée. Pour plus d’informations, consultez téléchargement de package manuel.

Vous pouvez trouver des packages dans PowerShell Gallery à l’aide du contrôle recherche sur la page d’accueil powerShell Gallery, ou en parcourant les modules et les scripts à partir de la page packages . Vous pouvez également trouver des packages à partir de PowerShell Gallery en exécutant les Find-Module, les Find-DscResourceet les applets de commande Find-Script, en fonction du type de package, avec -Repository PSGallery.

Vous pouvez filtrer les résultats à partir de la galerie à l’aide des paramètres suivants :

  • Nom
  • AllVersions
  • MinimumVersion
  • RequiredVersion
  • Étiquette
  • Comprend
  • DscResource
  • RoleCapability
  • Commander
  • Filtre

Si vous souhaitez uniquement découvrir des ressources DSC spécifiques dans la galerie, vous pouvez exécuter l’applet de commande Find-DscResource. Find-DscResource retourne des données sur les ressources DSC contenues dans la galerie. Étant donné que les ressources DSC sont toujours fournies dans le cadre d’un module, vous devez toujours exécuter Install-Module pour installer ces ressources DSC.

Une fois que vous avez identifié un package qui vous intéresse, vous pouvez en savoir plus. Pour ce faire, examinez la page spécifique de ce package dans la galerie. Sur cette page, vous pourrez voir toutes les métadonnées chargées avec le package. Ces métadonnées sont fournies par l’auteur du package et ne sont pas vérifiées par Microsoft. Le propriétaire du package est fortement lié au compte galerie utilisé pour publier le package et est plus fiable que le champ Auteur.

Si vous découvrez un package que vous n’avez pas l’impression d’être publié en bonne foi, cliquez sur Signaler un abus sur la page de ce package.

Si vous exécutez Find-Module ou Find-Script, vous pouvez afficher ces données dans l’objet PSGetModuleInfo retourné. L’exemple suivant retourne des données sur le module PSReadLine dans la galerie.

Find-Module -Name PSReadLine -Repository PSGallery | Get-Member

Nous encourageons le processus suivant lors du téléchargement de packages à partir de PowerShell Gallery :

Inspecter

Pour télécharger un package à partir de la galerie à des fins d’inspection, exécutez l’applet de commande Save-Module ou Save-Script, en fonction du type de package. Cela vous permet d’enregistrer le package localement sans l’installer et d’inspecter le contenu du package. N’oubliez pas de supprimer manuellement le package enregistré.

Certains de ces packages sont créés par Microsoft, et d’autres sont créés par la communauté PowerShell. Microsoft vous recommande de passer en revue le contenu et le code des packages sur cette galerie avant l’installation.

Si vous découvrez un package que vous n’avez pas l’impression d’être publié en bonne foi, cliquez sur Signaler un abus sur la page de ce package.

Installer

Pour installer un package à partir de la galerie à utiliser, exécutez l’applet de commande Install-Module ou Install-Script, en fonction du type de package.

Install-Module installe le module pour $env:ProgramFiles\WindowsPowerShell\Modules par défaut. Cela nécessite un compte d’administrateur. Si vous ajoutez le paramètre -Scope CurrentUser, le module est installé sur $HOME\Documents\WindowsPowerShell\Modules .

Install-Script installe le script pour $env:ProgramFiles\WindowsPowerShell\Scripts par défaut. Cela nécessite un compte d’administrateur. Si vous ajoutez le paramètre -Scope CurrentUser, le script est installé sur $HOME\Documents\WindowsPowerShell\Scripts .

Par défaut, Install-Module et Install-Script installe la version la plus récente d’un package. Pour installer une version antérieure du package, ajoutez le paramètre -RequiredVersion.

Déployer

Pour déployer un package à partir de PowerShell Gallery sur Azure Automation, cliquez sur Azure Automation, puis sur Déployer sur Azure Automation dans la page des détails du package. Vous êtes redirigé vers le portail de gestion Azure où vous vous connectez à l’aide des informations d’identification de votre compte Azure. Notez que le déploiement de packages avec des dépendances déploie toutes les dépendances sur Azure Automation. Le bouton « Déployer sur Azure Automation » peut être désactivé en ajoutant la balise AzureAutomationNotSupported à vos métadonnées de package.

Pour en savoir plus sur Azure Automation, consultez la documentation Azure Automation.

Pour mettre à jour les packages installés à partir de PowerShell Gallery, exécutez l’applet de commande Update-Module ou Update-Script. Lors de l’exécution sans paramètres supplémentaires, Update-Module tente de mettre à jour tous les modules installés en exécutant Install-Module. Pour mettre à jour de manière sélective les modules, ajoutez le paramètre -Name.

De même, lors de l’exécution sans paramètres supplémentaires, Update-Script tente également de mettre à jour tous les scripts installés en exécutant Install-Script. Pour mettre à jour les scripts de manière sélective, ajoutez le paramètre -Name.

Pour savoir quels modules vous avez installés à partir de PowerShell Gallery, exécutez l’applet de commande Get-InstalledModule. Cette commande répertorie tous les modules que vous avez sur votre système qui ont été installés directement à partir de PowerShell Gallery.

De même, pour savoir quels scripts vous avez installés à partir de PowerShell Gallery, exécutez l’applet de commande Get-InstalledScript. Cette commande répertorie tous les scripts que vous avez sur votre système qui ont été installés directement à partir de PowerShell Gallery.

Ces noms d’hôte doivent être ajoutés aux listes autorisées qui contrôlent l’accès à partir de votre réseau.

Hôtes requis pour la découverte et le téléchargement de packages :

  • onegetcdn.azureedge.net
  • powershellgallery.azureedge.net
  • psg-prod-eastus.azureedge.net

Hôtes requis lors de l’utilisation du site web PowerShell Gallery :

  • *.powershellgallery.com - site web
  • go.microsoft.com et aka.ms - services de redirection

Important

Depuis avril 2020, PowerShell Gallery ne prend plus en charge les versions TLS (Transport Layer Security) 1.0 et 1.1. Si vous n’utilisez pas TLS 1.2 ou version ultérieure, vous recevez une erreur lors de la tentative d’accès à PowerShell Gallery. Utilisez la commande suivante pour vous assurer que vous utilisez TLS 1.2 :

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

Pour plus d’informations, consultez l’annonce dans le blog PowerShell.