Partager via


New-PSSessionConfigurationFile

Crée un fichier qui définit une configuration de session.

Syntaxe

Default (Par défaut)

New-PSSessionConfigurationFile
    [-Path] <String>
    [-SchemaVersion <Version>]
    [-Guid <Guid>]
    [-Author <String>]
    [-CompanyName <String>]
    [-Copyright <String>]
    [-Description <String>]
    [-PowerShellVersion <Version>]
    [-SessionType <SessionType>]
    [-ModulesToImport <Object[]>]
    [-AssembliesToLoad <String[]>]
    [-VisibleAliases <String[]>]
    [-VisibleCmdlets <String[]>]
    [-VisibleFunctions <String[]>]
    [-VisibleProviders <String[]>]
    [-AliasDefinitions <Hashtable[]>]
    [-FunctionDefinitions <Hashtable[]>]
    [-VariableDefinitions <Object>]
    [-EnvironmentVariables <Object>]
    [-TypesToProcess <String[]>]
    [-FormatsToProcess <String[]>]
    [-LanguageMode <PSLanguageMode>]
    [-ExecutionPolicy <ExecutionPolicy>]
    [-ScriptsToProcess <String[]>]
    [<CommonParameters>]

Description

L’applet New-PSSessionConfigurationFile de commande crée un fichier de paramètres qui définissent une configuration de session et l’environnement des sessions créées à l’aide de la configuration de session. Pour utiliser le fichier dans une configuration de session, utilisez le paramètre Path des applets de Register-PSSessionConfiguration commande ou Set-PSSessionConfiguration .

Le fichier de configuration de session créé New-PSSessionConfigurationFile est un fichier texte lisible par l’homme qui contient une table de hachage des propriétés et des valeurs de configuration de session. Le fichier a une extension de nom de .pssc fichier.

Tous les paramètres de New-PSSessionConfigurationFile sont facultatifs, à l’exception du paramètre Path . Si vous omettez un paramètre, la clé correspondante dans le fichier de configuration de session fait l’objet d’un commentaire, sauf indication contraire dans la description du paramètre.

Une configuration de session, également appelée point de terminaison, est un ensemble de paramètres sur l’ordinateur local qui définissent l’environnement des sessions PowerShell (PSSessions) qui se connectent à l’ordinateur. Toutes les PSSessions utilisent une configuration de session. Pour spécifier une configuration de session particulière, utilisez le paramètre ConfigurationName des applets de commande qui créent une session, telles que l’applet de New-PSSession commande.

Un fichier de configuration de session permet de définir facilement une configuration de session sans scripts complexes ni assemblages de code. Les paramètres du fichier sont utilisés avec le script de démarrage facultatif et tous les assemblys de la configuration de session.

Pour plus d’informations sur les configurations de session et les fichiers de configuration de session, consultez about_Session_Configurations et about_Session_Configuration_Files.

Cette applet de commande a été introduite dans PowerShell 3.0.

Exemples

Exemple 1 : Création et utilisation d’une session NoLanguage

Cet exemple montre comment créer et les effets de l’utilisation d’une session sans langue.

Les étapes sont les suivantes :

  1. Créez un nouveau fichier de configuration.
  2. Enregistrez la configuration.
  3. Créez une session qui utilise la configuration.
  4. Exécutez des commandes dans cette nouvelle session.

Pour exécuter les commandes de cet exemple, démarrez PowerShell à l’aide de l’option Exécuter en tant qu’administrateur. Cette option est requise pour exécuter l’applet Register-PSSessionConfiguration de commande.

New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode NoLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name NoLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName NoLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
The syntax is not supported by this runspace. This might be because it is in no-language mode.
    + CategoryInfo          : ParserError: (if ((Get-Date) ...') {'Before'}  :String) [], ParseException
    + FullyQualifiedErrorId : ScriptsNotAllowed
    + PSComputerName        : localhost

Dans cet exemple, le échoue car Invoke-Command est défini sur NoLanguage.

Exemple 2 : Création et utilisation d’une session RestrictedLanguage

Cet exemple montre comment créer et les effets de l’utilisation d’une session sans langue.

Les étapes sont les suivantes :

  1. Créez un nouveau fichier de configuration.
  2. Enregistrez la configuration.
  3. Créez une session qui utilise la configuration.
  4. Exécutez des commandes dans cette nouvelle session.

Pour exécuter les commandes de cet exemple, démarrez PowerShell à l’aide de l’option Exécuter en tant qu’administrateur. Cette option est requise pour exécuter l’applet Register-PSSessionConfiguration de commande.

New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode RestrictedLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name RestrictedLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName RestrictedLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
Before

Dans cet exemple, le réussit car Invoke-Command est défini sur RestrictedLanguage.

Exemple 3 : Modification d’un fichier de configuration de session

Cet exemple montre comment modifier le fichier de configuration de session utilisé dans une session existante nommée « ITTasks ». Auparavant, ces sessions ne comportaient que les modules de base et un module interne ITTasks . L’administrateur souhaite ajouter le module PSScheduledJob aux sessions créées à l’aide de la configuration de session ITTasks.

New-PSSessionConfigurationFile -Path .\New-ITTasks.pssc -ModulesToImport Microsoft*, ITTasks, PSScheduledJob
Set-PSSessionConfiguration -Name ITTasks -Path .\New-ITTasks.pssc

Applet New-PSSessionConfigurationFile de commande permettant de créer un fichier de configuration de session qui importe les modules requis. L’applet Set-PSSessionConfiguration de commande remplace le fichier de configuration actuel par le nouveau. Cette nouvelle configuration n’affecte que les nouvelles sessions créées après la modification. Les sessions « ITTasks » existantes ne sont pas affectées.

Exemple 4 : Modifier un fichier de configuration de session

Cet exemple montre comment modifier une configuration de session en modifiant la copie de configuration de session active du fichier de configuration. Pour modifier la copie de configuration de session du fichier de configuration, vous devez disposer d’un accès de contrôle total au fichier. Cela peut vous obliger à modifier les autorisations sur le fichier.

Dans ce scénario, nous souhaitons ajouter un nouvel alias pour l’applet Select-String de commande en modifiant le fichier de configuration actif.

L’exemple de code ci-dessous effectue les étapes suivantes pour effectuer cette modification :

  1. Récupérez le chemin d’accès au fichier de configuration pour la session ITConfig.
  2. L’utilisateur modifie le fichier de configuration à l’aide deNotepad.exe pour modifier la valeur AliasDefinitions comme suit : AliasDefinitions = @(@{Name='slst';Value='Select-String'}).
  3. Testez le fichier de configuration mis à jour.
$ITConfig = Get-PSSessionConfiguration -Name ITConfig
notepad.exe $ITConfig.ConfigFilePath
Test-PSSessionConfigurationFile -Path $ITConfig.ConfigFilePath
True

Utilisez le paramètre Verbose avec Test-PSSessionConfigurationFile pour afficher les erreurs détectées. L’applet de commande est renvoyée $True si aucune erreur n’est détectée dans le fichier.

Exemple 5 : Créer un exemple de fichier de configuration

Cet exemple montre une New-PSSessionConfigurationFile commande qui utilise tous les paramètres de l’applet de commande. Il est inclus pour afficher le format d’entrée correct pour chaque paramètre.

Le fichier SampleFile.pssc résultant s’affiche dans la sortie.

$configSettings = @{
    Path = '.\SampleFile.pssc'
    SchemaVersion = '1.0.0.0'
    Author = 'User01'
    Copyright = '(c) Fabrikam Corporation. All rights reserved.'
    CompanyName = 'Fabrikam Corporation'
    Description = 'This is a sample file.'
    ExecutionPolicy = 'AllSigned'
    PowerShellVersion = '3.0'
    LanguageMode = 'FullLanguage'
    SessionType = 'Default'
    EnvironmentVariables = @{TESTSHARE='\\Test2\Test'}
    ModulesToImport = @{ModuleName='PSScheduledJob'; ModuleVersion='1.0.0.0'; GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'},'PSDiagnostics'
    AssembliesToLoad = 'System.Web.Services','FSharp.Compiler.CodeDom.dll'
    TypesToProcess = 'Types1.ps1xml','Types2.ps1xml'
    FormatsToProcess = 'CustomFormats.ps1xml'
    ScriptsToProcess = 'Get-Inputs.ps1'
    AliasDefinitions = @{Name='hlp';Value='Get-Help';Description='Gets help.';Options='AllScope'},@{Name='Update';Value='Update-Help';Description='Updates help';Options='ReadOnly'}
    FunctionDefinitions = @{Name='Get-Function';ScriptBlock={Get-Command -CommandType Function};Options='ReadOnly'}
    VariableDefinitions = @{Name='WarningPreference';Value='SilentlyContinue'}
    VisibleAliases = 'c*','g*','i*','s*'
    VisibleCmdlets = 'Get*'
    VisibleFunctions = 'Get*'
    VisibleProviders = 'FileSystem','Function','Variable'
}
New-PSSessionConfigurationFile @configSettings
Get-Content SampleFile.pssc
@{

# Version number of the schema used for this configuration file
SchemaVersion = '1.0.0.0'

# ID used to uniquely identify this session configuration
GUID = 'f7039ffa-7e54-4382-b358-a393c75c30d3'

# Specifies the execution policy for this session configuration
ExecutionPolicy = 'AllSigned'

# Specifies the language mode for this session configuration
LanguageMode = 'FullLanguage'

# Initial state of this session configuration
SessionType = 'Default'

# Environment variables defined in this session configuration
EnvironmentVariables = @{
    TESTSHARE='\\Test2\Test'
}

# Author of this session configuration
Author = 'User01'

# Company associated with this session configuration
CompanyName = 'Fabrikam Corporation'

# Copyright statement for this session configuration
Copyright = '(c) Fabrikam Corporation. All rights reserved.'

# Description of the functionality provided by this session configuration
Description = 'This is a sample file.'

# Version of the PowerShell engine used by this session configuration
PowerShellVersion = '3.0'

# Modules that will be imported
ModulesToImport = @{
    ModuleVersion='1.0.0.0'
    ModuleName='PSScheduledJob'
    GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'
}, 'PSDiagnostics'

# Assemblies that will be loaded in this session configuration
AssembliesToLoad = 'System.Web.Services', 'FSharp.Compiler.CodeDom.dll'

# Aliases visible in this session configuration
VisibleAliases = 'c*', 'g*', 'i*', 's*'

# Cmdlets visible in this session configuration
VisibleCmdlets = 'Get*'

# Functions visible in this session configuration
VisibleFunctions = 'Get*'

# Providers visible in this session configuration
VisibleProviders = 'FileSystem', 'Function', 'Variable'

# Aliases defined in this session configuration
AliasDefinitions = @(
@{
    Description='Gets help.'
    Name='hlp'
    Options='AllScope'
    Value='Get-Help'
},
@{
    Description='Updates help'
    Name='Update'
    Options='ReadOnly'
    Value='Update-Help'
}
)

# Functions defined in this session configuration
FunctionDefinitions = @(
@{
    Name='Get-Function'
    Options='ReadOnly'
    ScriptBlock={Get-Command -CommandType Function}
}
)

# Variables defined in this session configuration
VariableDefinitions = @(
@{
    Value='SilentlyContinue'
    Name='WarningPreference'

# Type files (.ps1xml) that will be loaded in this session configuration
TypesToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types1.ps1xml', 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types2.ps1xml'

# Format files (.ps1xml) that will be loaded in this session configuration
FormatsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\CustomFormats.ps1xml'

# Specifies the scripts to execute after the session is configured
ScriptsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Get-Inputs.ps1'
}

Cet exemple affiche une commande New-PSSessionConfigurationFile qui utilise tous les paramètres de l’applet de commande. Il est inclus pour afficher le format d’entrée correct pour chaque paramètre.

Le fichier SampleFile.pssc résultant s’affiche dans la sortie.

Paramètres

-AliasDefinitions

Ajoute les alias spécifiés aux sessions qui utilisent la configuration de session. Entrez une table de hachage avec les clés suivantes :

  • Nom : nom de l’alias. Cette clé est requise.
  • Valeur : commande représentée par l’alias. Cette clé est requise.
  • Description : chaîne de texte qui décrit l’alias. Cette clé est facultative.
  • Options - Options d’alias. Cette clé est facultative. La valeur par défaut est Aucun. Les valeurs acceptables pour ce paramètre sont : None, ReadOnly, Constant, Private ou AllScope.

Par exemple : @{Name='hlp';Value='Get-Help';Description='Gets help';Options='ReadOnly'}

Propriétés du paramètre

Type:

Hashtable[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-AssembliesToLoad

Spécifie les assemblys à charger dans les sessions qui utilisent la configuration de session.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Author

Spécifie l’auteur de la configuration de session ou du fichier de configuration. La valeur par défaut est l’utilisateur actuel. La valeur de ce paramètre est visible dans le fichier de configuration de session, mais il ne s’agit pas d’une propriété de l’objet de configuration de session.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-CompanyName

Spécifie la société qui a créé la configuration de session ou le fichier de configuration. La valeur par défaut est Unknown. La valeur de ce paramètre est visible dans le fichier de configuration de session, mais il ne s’agit pas d’une propriété de l’objet de configuration de session.

Propriétés du paramètre

Type:String
Valeur par défaut:Unknown
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

Spécifie un copyright pour le fichier de configuration de session. La valeur de ce paramètre est visible dans le fichier de configuration de session, mais il ne s’agit pas d’une propriété de l’objet de configuration de session.

Si vous omettez ce paramètre, New-PSSessionConfigurationFile génère une déclaration de copyright à l’aide de la valeur du paramètre Author .

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Description

Spécifie une description de la configuration de session ou du fichier de configuration de session. La valeur de ce paramètre est visible dans le fichier de configuration de session, mais il ne s’agit pas d’une propriété de l’objet de configuration de session.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-EnvironmentVariables

Ajoute des variables d’environnement à la session. Entrez une table de hachage dans laquelle les clés sont les noms des variables d’environnement et les valeurs sont les valeurs des variables d’environnement.

Par exemple : EnvironmentVariables=@{TestShare='\\Server01\TestShare'}

Propriétés du paramètre

Type:Object
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ExecutionPolicy

Spécifie la stratégie d’exécution des sessions qui utilisent la configuration de session. Si vous omettez ce paramètre, la valeur de la clé ExecutionPolicy dans le fichier de configuration de session est Restreint. Pour plus d’informations sur les stratégies d’exécution dans PowerShell, consultez about_Execution_Policies.

Propriétés du paramètre

Type:ExecutionPolicy
Valeur par défaut:None
Valeurs acceptées:Unrestricted, RemoteSigned, AllSigned, Restricted, Default, Bypass, Undefined
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-FormatsToProcess

Spécifie les fichiers de mise en forme (.ps1xml) qui s’exécutent dans les sessions qui utilisent la configuration de session. La valeur de ce paramètre doit être un chemin d’accès complet ou absolu des fichiers de mise en forme.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-FunctionDefinitions

Ajoute les fonctions spécifiées aux sessions qui utilisent la configuration de session. Entrez une table de hachage avec les clés suivantes :

  • Nom : nom de la fonction. Cette clé est requise.
  • ScriptBlock - Corps de la fonction. Entrez un bloc de script. Cette clé est requise.
  • Options - Options de fonction. Cette clé est facultative. La valeur par défaut est Aucun. Les valeurs acceptables pour ce paramètre sont : None, ReadOnly, Constant, Private ou AllScope.

Par exemple : @{Name='Get-PowerShellProcess';ScriptBlock={Get-Process PowerShell};Options='AllScope'}

Propriétés du paramètre

Type:

Hashtable[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Guid

Spécifie un identificateur unique pour le fichier de configuration de session. Si vous omettez ce paramètre, New-PSSessionConfigurationFile génère un GUID pour le fichier. Pour créer un GUID dans PowerShell, tapez New-Guid.

Propriétés du paramètre

Type:Guid
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-LanguageMode

Détermine quels éléments du langage PowerShell sont autorisés dans les sessions qui utilisent cette configuration de session. Vous pouvez utiliser ce paramètre pour restreindre les commandes que certains utilisateurs peuvent exécuter sur l’ordinateur.

Les valeurs acceptables pour ce paramètre sont les suivantes :

  • FullLanguage - Tous les éléments de langue sont autorisés.
  • ConstrainedLanguage : les commandes qui contiennent des scripts à évaluer ne sont pas autorisées. Le mode ConstrainedLanguage restreint l’accès des utilisateurs aux types, objets ou méthodes Microsoft .NET Framework.
  • NoLanguage : les utilisateurs peuvent exécuter des applets de commande et des fonctions, mais ne sont pas autorisés à utiliser des éléments de langage, tels que des blocs de script, des variables ou des opérateurs.
  • RestrictedLanguage : les utilisateurs peuvent exécuter des applets de commande et des fonctions, mais ne sont pas autorisés à utiliser des blocs de script ou des variables, à l’exception des variables autorisées suivantes : $PSCulture, $PSUICulture, $True, $Falseet $Null. Les utilisateurs ne peuvent utiliser que les opérateurs de comparaison de base (-eq, -gt, -lt). Les instructions d’affectation, les références de propriété et les appels de méthode ne sont pas autorisés.

La valeur par défaut du paramètre LanguageMode dépend de la valeur du paramètre SessionType .

  • Vide - NoLanguage
  • RestrictedRemoteServer - NoLanguage
  • Par défaut - FullLanguage

Propriétés du paramètre

Type:PSLanguageMode
Valeur par défaut:None
Valeurs acceptées:FullLanguage, RestrictedLanguage, NoLanguage, ConstrainedLanguage
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ModulesToImport

Spécifie les modules et les composants logiciels enfichables qui sont automatiquement importés dans des sessions qui utilisent la configuration de session.

Par défaut, seul le composant logiciel enfichable Microsoft.PowerShell.Core est importé dans les sessions distantes, mais à moins que les applets de commande ne soient exclues, les utilisateurs peuvent utiliser les applets de commande et Import-Module pour ajouter des Add-PSSnapin modules et des composants logiciels enfichables à la session.

Chaque module ou composant logiciel enfichable dans la valeur de ce paramètre peut être représenté par une chaîne ou sous la forme d’une table de hachage. Une chaîne de module se compose uniquement du nom du module ou du composant logiciel enfichable. Une table de hachage de module peut inclure ModuleName, ModuleVersionet GUID clés. Seule la clé ModuleName est requise.

Par exemple, la valeur suivante se compose d’une chaîne et d’une table de hachage. Toute combinaison de chaînes et de tables de hachage, dans n’importe quel ordre, est valide.

'TroubleshootingPack', @{ModuleName='PSDiagnostics'; ModuleVersion='1.0.0.0';GUID='c61d6278-02a3-4618-ae37-a524d40a7f44'}

La valeur du paramètre ModulesToImport de l’applet Register-PSSessionConfiguration de commande est prioritaire sur la valeur de la clé ModulesToImport dans le fichier de configuration de session.

Propriétés du paramètre

Type:

Object[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Path

Spécifie le chemin d’accès et le nom de fichier du fichier de configuration de session. Le fichier doit avoir une extension de nom de .pssc fichier.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PowerShellVersion

Spécifie la version du moteur PowerShell dans les sessions qui utilisent la configuration de session. Les valeurs acceptables pour ce paramètre sont : 2,0 et 3,0. Si vous omettez ce paramètre, la clé PowerShellVersion est commentée et la version la plus récente de PowerShell s’exécute dans la session.

La valeur du paramètre PSVersion de l’applet Register-PSSessionConfiguration de commande est prioritaire sur la valeur de la clé PowerShellVersion dans le fichier de configuration de session.

Propriétés du paramètre

Type:Version
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-SchemaVersion

Spécifie la version du schéma du fichier de configuration de session. La valeur par défaut est « 1.0.0.0 ».

Propriétés du paramètre

Type:Version
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ScriptsToProcess

Ajoute les scripts spécifiés aux sessions qui utilisent la configuration de session. Entrez le chemin d’accès et les noms de fichiers des scripts. La valeur de ce paramètre doit être un chemin d’accès complet ou absolu des noms de fichiers de script.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-SessionType

Spécifie le type de session créé à l’aide de la configuration de session. La valeur par défaut est Default. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Vide : aucun module n’est ajouté à la session par défaut. Utilisez les paramètres de cette applet de commande pour ajouter des modules, des fonctions, des scripts et d’autres fonctionnalités à la session. Cette option vous permet de créer des sessions personnalisées en ajoutant les commandes sélectionnées. Si vous n’ajoutez pas de commandes à une session vide, celle-ci est limitée aux expressions et risque de ne pas être utilisable.
  • Par défaut : ajoute le module Microsoft.PowerShell.Core à la session. Ce module inclut l’applet de Import-Module commande que les utilisateurs peuvent utiliser pour importer d’autres modules, sauf si vous interdisez explicitement cette applet de commande.
  • RestrictedRemoteServer. Inclut uniquement les fonctions proxy suivantes : Exit-PSSession, , Get-CommandGet-FormatData, Get-HelpMeasure-ObjectOut-Defaultet .Select-Object Utilisez les paramètres de cette applet de commande pour ajouter des modules, des fonctions, des scripts et d’autres fonctionnalités à la session.

Propriétés du paramètre

Type:SessionType
Valeur par défaut:None
Valeurs acceptées:Empty, RestrictedRemoteServer, Default
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-TypesToProcess

Ajoute les fichiers de type spécifiés .ps1xml aux sessions qui utilisent la configuration de session. Entrez les noms de fichiers de type. La valeur de ce paramètre doit être un chemin d’accès complet ou absolu pour taper les noms de fichiers.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VariableDefinitions

Ajoute les variables spécifiées aux sessions qui utilisent la configuration de session. Entrez une table de hachage avec les clés suivantes :

  • Nom : nom de la variable. Cette clé est requise.
  • Valeur : valeur variable. Cette clé est requise.
  • Options - Options variables. Cette clé est facultative. La valeur par défaut est Aucun. Les valeurs acceptables pour ce paramètre sont : None, ReadOnly, Constant, Private ou AllScope.

Par exemple : @{Name='WarningPreference';Value='SilentlyContinue';Options='AllScope'}

Propriétés du paramètre

Type:Object
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VisibleAliases

Limite les alias de la session à ceux spécifiés dans la valeur de ce paramètre, ainsi qu’aux alias que vous définissez dans le paramètre AliasDefinition . Les caractères génériques sont pris en charge. Par défaut, tous les alias définis par le moteur PowerShell et tous les alias que les modules exportent sont visibles dans la session.

Par exemple : VisibleAliases='gcm', 'gp'

Lorsqu’un paramètre Visible est inclus dans le fichier de configuration de session, PowerShell supprime l’applet Import-Module de commande et son alias ipmo de la session.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VisibleCmdlets

Limite les applets de commande de la session à celles spécifiées dans la valeur de ce paramètre. Les caractères génériques et les noms qualifiés de module sont pris en charge.

Par défaut, toutes les applets de commande exportées par les modules de la session sont visibles dans la session. Utilisez les paramètres SessionType et ModulesToImport pour déterminer quels modules et composants logiciels enfichables sont importés dans la session. Si aucun module de ModulesToImport n’expose l’applet de commande, le module approprié tente d’être chargé automatiquement.

Lorsqu’un paramètre Visible est inclus dans le fichier de configuration de session, PowerShell supprime l’applet Import-Module de commande et son alias ipmo de la session.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VisibleFunctions

Limite les fonctions de la session à celles spécifiées dans la valeur de ce paramètre, ainsi qu’aux fonctions que vous définissez dans le paramètre FunctionDefinition . Les caractères génériques sont pris en charge.

Par défaut, toutes les fonctions exportées par les modules de la session sont visibles dans la session. Utilisez les paramètres SessionType et ModulesToImport pour déterminer quels modules et composants logiciels enfichables sont importés dans la session.

Lorsqu’un paramètre Visible est inclus dans le fichier de configuration de session, PowerShell supprime l’applet Import-Module de commande et son alias ipmo de la session.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-VisibleProviders

Limite les fournisseurs PowerShell de la session à ceux spécifiés dans la valeur de ce paramètre. Les caractères génériques sont pris en charge.

Par défaut, tous les fournisseurs que les modules de la session exportent sont visibles dans la session. Utilisez les paramètres SessionType et ModulesToImport pour déterminer quels modules sont importés dans la session.

Quand un paramètre Visible est inclus dans le fichier de configuration de session, PowerShell supprime l’applet de commande Import-Module et son alias de ipmo de la session.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:True
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

None

Vous ne pouvez pas rediriger d’objets vers cette applet de commande.

Sorties

None

Cette applet de commande ne génère aucune sortie.

Notes

  • Les paramètres, tels que VisibleCmdlets et VisibleProviders, n’importent pas d’éléments dans la session. Au lieu de cela, ils sélectionnent parmi les éléments importés dans la session. Par exemple, si la valeur du paramètre VisibleProviders est le fournisseur de certificats, mais que le paramètre ModulesToImport ne spécifie pas le module Microsoft.PowerShell.Security qui contient le fournisseur de certificats, le fournisseur de certificats n’est pas visible dans la session.

  • New-PSSessionConfigurationFile crée un fichier de configuration de session dont le chemin d’accès est défini avec l’extension de nom de fichier .pssc. Lorsque vous utilisez le fichier de configuration de session pour créer une configuration de session, l’applet Register-PSSessionConfiguration de commande copie le fichier et enregistre une copie active du fichier dans le sous-répertoire SessionConfig du $PSHOME répertoire.

    La propriété ConfigFilePath de la configuration de session contient le chemin d’accès complet du fichier de configuration de session actif. Vous pouvez modifier le fichier de configuration actif dans le répertoire à tout moment à l’aide de n’importe $PSHOME quel éditeur de texte. Les modifications que vous apportez affectent toutes les nouvelles sessions qui utilisent la configuration de session, mais pas les sessions existantes.

    Avant d’utiliser un fichier de configuration de session modifié, utilisez l’applet Test-PSSessionConfigurationFile de commande pour vérifier que les entrées du fichier de configuration sont valides.