New-PSRoleCapabilityFile
Oturum yapılandırması aracılığıyla kullanıma sunulacak bir özellik kümesini tanımlayan bir dosya oluşturur.
Sözdizimi
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
cmdlet'i New-PSRoleCapabilityFile
, oturum yapılandırma dosyaları aracılığıyla kullanıma sunulan bir kullanıcı özellikleri kümesini tanımlayan bir dosya oluşturur. Bu, kullanıcılara hangi cmdlet'lerin, işlevlerin ve betiklerin kullanılabilir olduğunu belirlemeyi içerir. Yetenek dosyası, oturum yapılandırma özelliklerinin ve değerlerinin karma tablosunu içeren, insan tarafından okunabilen bir metin dosyasıdır. Dosya bir .psrc dosya adı uzantısına sahiptir ve birden fazla oturum yapılandırması tarafından kullanılabilir.
tüm parametreleriNew-PSRoleCapabilityFile
, dosyanın yolunu belirten Path parametresi dışında isteğe bağlıdır. Cmdlet'ini çalıştırdığınızda parametre eklemezseniz, parametre açıklamasında belirtilenler dışında oturum yapılandırma dosyasındaki ilgili anahtar açıklama satırı yapılır. Örneğin AssembliesToLoad parametresini eklemezseniz oturum yapılandırma dosyasının bu bölümü açıklama satırı yapılır.
Rol özelliği dosyasını bir oturum yapılandırmasında kullanmak için, önce dosyayı geçerli bir PowerShell modül klasörünün RoleCapabilities alt klasörüne yerleştirin. Ardından bir PowerShell Oturum Yapılandırması (.pssc) dosyasındaki RoleDefinitions alanında dosyaya ada göre başvurun.
Bu cmdlet, Windows PowerShell 5.0'da kullanıma sunulmuştur.
Örnekler
Örnek 1: Boş rol yetenek dosyası oluşturma
Bu örnek, varsayılan (boş) değerleri kullanan yeni bir rol özelliği dosyası oluşturur. Dosya daha sonra bu yapılandırma ayarlarını değiştirmek için bir metin düzenleyicisinde düzenlenebilir.
New-PSRoleCapabilityFile -Path ".\ExampleFile.psrc"
Örnek 2: Kullanıcıların hizmetleri ve herhangi bir VDI bilgisayarı yeniden başlatmasına olanak sağlayan bir rol özelliği dosyası oluşturma
Bu örnek, kullanıcıların belirli bir ad desenine uyan hizmetleri ve bilgisayarları yeniden başlatmasını sağlayan örnek bir rol yetenek dosyası oluşturur. Ad filtreleme, ValidatePattern parametresi normal ifade VDI\d+
olarak ayarlanarak tanımlanır.
$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
Parametreler
-AliasDefinitions
Belirtilen diğer adları rol yetenek dosyasını kullanan oturumlara ekler. Aşağıdaki anahtarlara sahip bir karma tablo girin:
- Adı. Diğer adın adı. Bu anahtar gereklidir.
- Değer. Diğer adın temsil ettiği komut. Bu anahtar gereklidir.
- Açıklama. Diğer adı açıklayan bir metin dizesi. Bu anahtar isteğe bağlıdır.
- Seçenekler. Diğer ad seçenekleri. Bu anahtar isteğe bağlıdır. Varsayılan değer olarak Hiçbiri kullanılır. Bu parametre için kabul edilebilir değerler şunlardır: None, ReadOnly, Constant, Private veya AllScope.
Örneğin: @{Name="hlp";Value="Get-Help";Description="Gets help";Options="ReadOnly"}
Tür: | IDictionary[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-AssembliesToLoad
Rol yetenek dosyasını kullanan oturumlara yüklenecek derlemeleri belirtir.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Author
Rol yetenek dosyasını oluşturan kullanıcıyı belirtir.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-CompanyName
Rol yetenek dosyasını oluşturan şirketi tanımlar. Varsayılan değer Bilinmiyor'dur.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Copyright
Rol yeteneği dosyası için bir telif hakkı belirtir. Bu parametreyi atlarsanız Author New-PSRoleCapabilityFile
parametresinin değerini kullanarak bir telif hakkı bildirimi oluşturur.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Description
Rol özelliği dosyası için bir açıklama belirtir.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-EnvironmentVariables
Bu rol yetenek dosyasını kullanıma sunan oturumlar için ortam değişkenlerini belirtir. Anahtarların ortam değişkeni adları ve değerlerin ortam değişkeni değerleri olduğu bir karma tablo girin.
Örneğin: EnvironmentVariables=@{TestShare="\\\\Server01\TestShare"}
Tür: | IDictionary |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-FormatsToProcess
Rol yetenek dosyasını kullanan oturumlarda çalışan biçimlendirme dosyalarını (.ps1xml
) belirtir.
Bu parametrenin değeri, biçimlendirme dosyalarının tam veya mutlak yolu olmalıdır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-FunctionDefinitions
Belirtilen işlevleri rol özelliğini kullanıma sunan oturumlara ekler. Aşağıdaki anahtarlara sahip bir karma tablo girin:
- Adı. İşlevin adı. Bu anahtar gereklidir.
- ScriptBlock. İşlev gövdesi. Bir betik bloğu girin. Bu anahtar gereklidir.
- Seçenekler. İşlev seçenekleri. Bu anahtar isteğe bağlıdır. Varsayılan değer olarak Hiçbiri kullanılır. Bu parametre için kabul edilebilir değerler şunlardır: None, ReadOnly, Constant, Private veya AllScope.
Örneğin:
@{Name="Get-PowerShellProcess";ScriptBlock={Get-Process PowerShell};Options="AllScope"}
Tür: | IDictionary[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Guid
Rol özelliği dosyası için benzersiz bir tanımlayıcı belirtir. Bu parametreyi atlarsanız, New-PSRoleCapabilityFile
dosya için bir GUID oluşturur. PowerShell'de yeni bir GUID oluşturmak için yazın [guid]::NewGuid()
.
Tür: | Guid |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-ModulesToImport
Rol yetenek dosyasını kullanan oturumlara otomatik olarak içeri aktarılan modülleri belirtir. Varsayılan olarak, listelenen modüllerdeki tüm komutlar görünür. VisibleCmdlet'ler veya VisibleFunctions ile kullanıldığında, belirtilen modüllerden görünen komutlar kısıtlanabilir.
Bu parametrenin değerinde kullanılan her modül bir dize veya karma tabloyla temsil edilebilir. Modül dizesi yalnızca modülün adından oluşur. Modül karma tablosu ModuleName, ModuleVersion ve GUID anahtarlarını içerebilir. Yalnızca ModuleName anahtarı gereklidir.
Örneğin, aşağıdaki değer bir dize ve karma tablodan oluşur. Dizelerin ve karma tabloların herhangi bir sırayla birleşimi geçerli olur.
"TroubleshootingPack", @{ModuleName="PSDiagnostics"; ModuleVersion="1.0.0.0";GUID="c61d6278-02a3-4618-ae37-a524d40a7f44"}
Tür: | Object[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Path
Rol yeteneği dosyasının yolunu ve dosya adını belirtir. Dosyanın bir .psrc
dosya adı uzantısı olmalıdır.
Tür: | String |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-ScriptsToProcess
Rol yetenek dosyasını kullanan oturumlara eklenecek betikleri belirtir. Betiklerin yolunu ve dosya adlarını girin. Bu parametrenin değeri, betik dosyası adlarının tam veya mutlak yolu olmalıdır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-TypesToProcess
Rol yetenek dosyasını kullanan oturumlara eklenecek tür dosyalarını (.ps1xml
) belirtir. Dosya adlarını yazın. Bu parametrenin değeri, dosya adlarının türü için tam veya mutlak bir yol olmalıdır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-VariableDefinitions
Rol yetenek dosyasını kullanan oturumlara eklenecek değişkenleri belirtir. Aşağıdaki anahtarlara sahip bir karma tablo girin:
- Adı. Değişkenin adı. Bu anahtar gereklidir.
- Değer. Değişken değeri. Bu anahtar gereklidir.
Örneğin: @{Name="WarningPreference";Value="SilentlyContinue"}
Tür: | Object |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-VisibleAliases
Oturumdaki diğer adları bu parametrenin değerinde belirtilen diğer adlarla ve AliasDefinition parametresinde tanımladığınız diğer adlarla sınırlar. Joker karakterler desteklenmektedir. Varsayılan olarak, PowerShell altyapısı tarafından tanımlanan tüm diğer adlar ve modüllerin dışarı aktardığı tüm diğer adlar oturumda görünür.
Örneğin, kullanılabilir diğer adları gm ve gcm ile sınırlamak için şu söz dizimini kullanın: VisibleAliases="gcm", "gp"
Rol yeteneği dosyasına herhangi bir Visible parametresi eklendiğinde, PowerShell cmdlet'ini Import-Module
ve ipmo
diğer adını oturumdan kaldırır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | True |
-VisibleCmdlets
Oturumdaki cmdlet'leri bu parametrenin değerinde belirtilenlerle sınırlar. Joker karakterler ve Modül Nitelenmiş Adları desteklenir.
Varsayılan olarak, oturum dışarı aktarmadaki modüllerin tüm cmdlet'leri oturumda görünür. Oturuma hangi modüllerin ve ek bileşenin içeri aktarılacağını belirlemek için SessionType ve ModulesToImport parametrelerini kullanın. ModulesToImport'ta cmdlet'i kullanıma sunan modül yoksa uygun New-PSRoleCapabilityFile
modülü yüklemeyi dener.
Oturum yapılandırma dosyasına herhangi bir Visible parametresi eklendiğinde, PowerShell cmdlet'ini Import-Module
ve ipmo
diğer adını oturumdan kaldırır.
Tür: | Object[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | True |
-VisibleExternalCommands
Oturumda yürütülebilecek dış ikili dosyaları, betikleri ve komutları bu parametrenin değerinde belirtilenlerle sınırlar.
Varsayılan olarak, bu oturumda hiçbir dış komut görünmez.
Oturum yapılandırma dosyasına herhangi bir Visible parametresi eklendiğinde, PowerShell cmdlet'ini Import-Module
ve ipmo
diğer adını oturumdan kaldırır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-VisibleFunctions
Oturumdaki işlevleri bu parametrenin değerinde belirtilenlerle ve FunctionDefinitions parametresinde tanımladığınız işlevlerle sınırlar. Joker karakterler desteklenmektedir.
Varsayılan olarak, oturumdaki modüller tarafından dışarı aktarılan tüm işlevler bu oturumda görünür. Oturuma hangi modüllerin içeri aktarılacağını belirlemek için SessionType ve ModulesToImport parametrelerini kullanın.
Oturum yapılandırma dosyasına herhangi bir Visible parametresi eklendiğinde, PowerShell cmdlet'ini Import-Module
ve ipmo
diğer adını oturumdan kaldırır.
Tür: | Object[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | True |
-VisibleProviders
Oturumdaki PowerShell sağlayıcılarını bu parametrenin değerinde belirtilenlerle sınırlar. Joker karakterler desteklenmektedir.
Varsayılan olarak, oturumdaki bir modül tarafından dışarı aktarılan tüm sağlayıcılar oturumda görünür. Oturuma hangi modüllerin içeri aktarılacağını belirlemek için SessionType ve ModulesToImport parametrelerini kullanın.
Oturum yapılandırma dosyasına herhangi bir Visible parametresi eklendiğinde, PowerShell cmdlet'ini Import-Module
ve ipmo
diğer adını oturumdan kaldırır.
Tür: | String[] |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | True |
İlişkili Bağlantılar
PowerShell