New-PSRoleCapabilityFile
Létrehoz egy fájlt, amely meghatározza a munkamenet-konfiguráción keresztül közzéteendő képességek készletét.
Syntax
New-PSRoleCapabilityFile
[-Path] <String>
[-Guid <Guid>]
[-Author <String>]
[-Description <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-ModulesToImport <Object[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <Object[]>]
[-VisibleFunctions <Object[]>]
[-VisibleExternalCommands <String[]>]
[-VisibleProviders <String[]>]
[-ScriptsToProcess <String[]>]
[-AliasDefinitions <IDictionary[]>]
[-FunctionDefinitions <IDictionary[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <IDictionary>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-AssembliesToLoad <String[]>]
[<CommonParameters>]
Description
A New-PSRoleCapabilityFile
parancsmag létrehoz egy fájlt, amely meghatározza a munkamenet-konfigurációs fájlokon keresztül elérhető felhasználói képességek készletét. Ez magában foglalja annak meghatározását, hogy mely parancsmagok, függvények és szkriptek érhetők el a felhasználók számára. A képességfájl egy emberi olvasásra alkalmas szövegfájl, amely a munkamenet konfigurációs tulajdonságainak és értékeinek kivonattáblázatát tartalmazza. A fájl .psrc fájlnévkiterjesztéssel rendelkezik, és több munkamenet-konfiguráció is használható.
Az összes paraméter New-PSRoleCapabilityFile
megadása nem kötelező, kivéve az Elérési út paramétert, amely a fájl elérési útját adja meg. Ha nem ad meg paramétert a parancsmag futtatásakor, a munkamenet-konfigurációs fájl megfelelő kulcsát megjegyzésként fűzi hozzá a rendszer, kivéve, ha a paraméter leírása fel van jegyezve. Ha például nem tartalmazza a AssembliesToLoad paramétert, a rendszer megjegyzést fűz a munkamenet-konfigurációs fájlhoz.
A szerepkör-képességfájl munkamenetkonfigurációban való használatához először helyezze a fájlt egy érvényes PowerShell-modulmappa RoleCapabilities almappájába. Ezután hivatkozzon a fájlra név szerint egy PowerShell-munkamenetkonfigurációs (.pssc) fájl RoleDefinitions mezőjében.
Ezt a parancsmagot a Windows PowerShell 5.0-ban vezettük be.
Példák
1. példa: Üres szerepkör-képességfájl létrehozása
Ez a példa létrehoz egy új szerepkör-képességfájlt, amely az alapértelmezett (üres) értékeket használja. A fájl később szerkeszthető egy szövegszerkesztőben a konfigurációs beállítások módosításához.
New-PSRoleCapabilityFile -Path ".\ExampleFile.psrc"
2. példa: Szerepkör-képességfájl létrehozása, amely lehetővé teszi a felhasználók számára a szolgáltatások és bármely VDI-számítógép újraindítását
Ez a példa egy példaszerepkör-képességfájlt hoz létre, amely lehetővé teszi a felhasználók számára egy adott névmintának megfelelő szolgáltatások és számítógépek újraindítását. A névszűrés úgy van definiálva, hogy a ValidatePattern paramétert a normál kifejezésre VDI\d+
állítja.
$roleParameters = @{
Path = ".\Maintenance.psrc"
Author = "User01"
CompanyName = "Fabrikam Corporation"
Description = "This role enables users to restart any service and restart any VDI computer."
ModulesToImport = "Microsoft.PowerShell.Core"
VisibleCmdlets = "Restart-Service", @{
Name = "Restart-Computer"
Parameters = @{ Name = "ComputerName"; ValidatePattern = "VDI\d+" }
}
}
New-PSRoleCapabilityFile @roleParameters
Paraméterek
-AliasDefinitions
Hozzáadja a megadott aliasokat a szerepkör-képességfájlt használó munkamenetekhez. Adjon meg egy kivonattáblát a következő kulcsokkal:
- Név. Az alias neve. Ez a kulcs szükséges.
- Érték. Az alias által képviselt parancs. Ez a kulcs szükséges.
- Leírás. Az aliast leíró szöveges sztring. Ez a kulcs nem kötelező.
- Beállítások. Aliasbeállítások. Ez a kulcs nem kötelező. Az alapértelmezett érték Nincs. A paraméter elfogadható értékei a következők: None, ReadOnly, Constant, Private vagy AllScope.
Például: @{Name="hlp";Value="Get-Help";Description="Gets help";Options="ReadOnly"}
Típus: | IDictionary[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-AssembliesToLoad
Megadja a szerepkör-képességfájlt használó munkamenetekbe betöltendő szerelvényeket.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Author
Megadja a szerepkör-képességfájlt létrehozó felhasználót.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-CompanyName
Azonosítja a szerepkör-képességfájlt létrehozó vállalatot. Az alapértelmezett érték Ismeretlen.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Copyright
A szerepkör-képességfájl szerzői jogának megadása. Ha kihagyja ezt a paramétert, New-PSRoleCapabilityFile
létrehoz egy szerzői jogi nyilatkozatot a Szerző paraméter értékével.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Description
Megadja a szerepkör-képességfájl leírását.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-EnvironmentVariables
Megadja azoknak a munkameneteknek a környezeti változóit, amelyek elérhetővé teszik ezt a szerepkör-képességfájlt. Adjon meg egy kivonattáblát, amelyben a kulcsok a környezeti változók nevei, az értékek pedig a környezeti változó értékei.
Például: EnvironmentVariables=@{TestShare="\\\\Server01\TestShare"}
Típus: | IDictionary |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-FormatsToProcess
Megadja a szerepkör-képességfájlt használó munkamenetekben futtatott formázási fájlokat (.ps1xml
).
A paraméter értékének a formázási fájlok teljes vagy abszolút elérési útjának kell lennie.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-FunctionDefinitions
Hozzáadja a megadott függvényeket a szerepkör-képességet elérhetővé tevő munkamenetekhez. Adjon meg egy kivonattáblát a következő kulcsokkal:
- Név. A függvény neve. Ez a kulcs szükséges.
- ScriptBlock. Függvény törzse. Adjon meg egy szkriptblokkot. Ez a kulcs szükséges.
- Beállítások. Függvénybeállítások. Ez a kulcs nem kötelező. Az alapértelmezett érték Nincs. A paraméter elfogadható értékei a következők: None, ReadOnly, Constant, Private vagy AllScope.
Példa:
@{Name="Get-PowerShellProcess";ScriptBlock={Get-Process PowerShell};Options="AllScope"}
Típus: | IDictionary[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Guid
A szerepkör-képességfájl egyedi azonosítójának megadása. Ha kihagyja ezt a paramétert, New-PSRoleCapabilityFile
létrehoz egy GUID azonosítót a fájlhoz. Ha új GUID-t szeretne létrehozni a PowerShellben, írja be a következőt [guid]::NewGuid()
: .
Típus: | Guid |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-ModulesToImport
Megadja a szerepkör-képességfájlt használó munkamenetekbe automatikusan importált modulokat. Alapértelmezés szerint a felsorolt modulok összes parancsa látható. VisibleCmdlets vagy VisibleFunctions használatakor a megadott modulokból látható parancsok korlátozhatók.
A paraméter értékében használt minden modult egy sztring vagy egy kivonattábla jelölhet. A modul sztringje csak a modul nevéből áll. A modulkivonattáblák tartalmazhatnak ModuleName, ModuleVersion és GUID kulcsokat. Csak a ModuleName kulcs szükséges.
A következő érték például egy sztringből és egy kivonattáblából áll. A sztringek és kivonattáblák tetszőleges kombinációja bármilyen sorrendben érvényes.
"TroubleshootingPack", @{ModuleName="PSDiagnostics"; ModuleVersion="1.0.0.0";GUID="c61d6278-02a3-4618-ae37-a524d40a7f44"}
Típus: | Object[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Path
Megadja a szerepkör-képességfájl elérési útját és fájlnevét. A fájlnak fájlnévkiterjesztéssel .psrc
kell rendelkeznie.
Típus: | String |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-ScriptsToProcess
Megadja a szerepkör-képességfájlt használó munkamenetekhez hozzáadni kívánt szkripteket. Adja meg a szkriptek elérési útját és fájlneveit. A paraméter értékének a szkriptfájlnevek teljes vagy abszolút elérési útjának kell lennie.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-TypesToProcess
Megadja a szerepkör-képességfájlt használó munkamenetekhez hozzáadni kívánt típusfájlokat (.ps1xml
). Adja meg a típusfájlneveket. A paraméter értékének a fájlnevek típusának teljes vagy abszolút elérési útjának kell lennie.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-VariableDefinitions
Meghatározza a szerepkör-képességfájlt használó munkamenetekhez hozzáadni kívánt változókat. Adjon meg egy kivonattáblát a következő kulcsokkal:
- Név. A változó neve. Ez a kulcs szükséges.
- Érték. Változó értéke. Ez a kulcs szükséges.
Például: @{Name="WarningPreference";Value="SilentlyContinue"}
Típus: | Object |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-VisibleAliases
A munkamenet aliasait a paraméter értékében megadott aliasokra korlátozza, valamint az AliasDefinition paraméterben definiált aliasokat. A helyettesítő karakterek támogatottak. Alapértelmezés szerint a PowerShell-motor által definiált összes alias és a modulok által exportált összes alias látható a munkamenetben.
Ha például a rendelkezésre álló aliasokat a gm és a gcm értékre szeretné korlátozni, használja ezt a szintaxist: VisibleAliases="gcm", "gp"
Ha egy látható paraméter szerepel a szerepkör-képességfájlban, a PowerShell eltávolítja a Import-Module
parancsmagot és annak aliasát ipmo
a munkamenetből.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | True |
-VisibleCmdlets
A munkamenet parancsmagjait a paraméter értékében megadottakra korlátozza. A helyettesítő karakterek és a modul minősített nevei támogatottak.
Alapértelmezés szerint a munkamenet-exportálásban szereplő modulok összes parancsmagja látható a munkamenetben. A SessionType és ModulesToImport paraméterekkel meghatározhatja, hogy mely modulok és beépülő modulok legyenek importálva a munkamenetbe. Ha a ModulesToImport egyik modulja sem teszi elérhetővé a parancsmagot, New-PSRoleCapabilityFile
próbálja betölteni a megfelelő modult.
Ha a munkamenet-konfigurációs fájl tartalmaz egy látható paramétert, a PowerShell eltávolítja a Import-Module
parancsmagot és annak aliasát ipmo
a munkamenetből.
Típus: | Object[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | True |
-VisibleExternalCommands
A munkamenetben végrehajtható külső bináris fájlokat, szkripteket és parancsokat a paraméter értékében megadottakra korlátozza.
Ebben a munkamenetben alapértelmezés szerint nem láthatók külső parancsok.
Ha a munkamenet-konfigurációs fájl tartalmaz egy látható paramétert, a PowerShell eltávolítja a Import-Module
parancsmagot és annak aliasát ipmo
a munkamenetből.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-VisibleFunctions
A munkamenetben lévő függvényeket a paraméter értékében megadottakra korlátozza, valamint a FunctionDefinitions paraméterben definiált összes függvényt . A helyettesítő karakterek támogatottak.
Alapértelmezés szerint a munkamenet moduljai által exportált összes függvény látható az adott munkamenetben. A SessionType és ModulesToImport paraméterekkel meghatározhatja, hogy mely modulok legyenek importálva a munkamenetbe.
Ha a munkamenet-konfigurációs fájl tartalmaz egy látható paramétert, a PowerShell eltávolítja a Import-Module
parancsmagot és annak aliasát ipmo
a munkamenetből.
Típus: | Object[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | True |
-VisibleProviders
A munkamenet PowerShell-szolgáltatóinak korlátozása a paraméter értékében megadottakra. A helyettesítő karakterek támogatottak.
Alapértelmezés szerint a munkamenet egy modulja által exportált összes szolgáltató látható a munkamenetben. A SessionType és ModulesToImport paraméterekkel meghatározhatja, hogy mely modulok legyenek importálva a munkamenetbe.
Ha a munkamenet-konfigurációs fájl tartalmaz egy látható paramétert, a PowerShell eltávolítja a Import-Module
parancsmagot és annak aliasát ipmo
a munkamenetből.
Típus: | String[] |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | True |