Oturum Yapılandırmaları hakkında


Kısa açıklama

Bilgisayara uzaktan bağlanabilecek kullanıcıları ve çalıştırabilecekleri komutları belirleyen oturum yapılandırmalarını açıklar.

Uzun açıklama

"Uç nokta" olarak da bilinen oturum yapılandırması, yerel bilgisayardaki, uzak veya yerel kullanıcılar yerel bilgisayardaki PowerShell'e bağlandığında oluşturulan PowerShell oturumları için ortamı tanımlayan bir ayarlar grubudur.

Bilgisayar yöneticileri, bilgisayarı korumak ve bilgisayara bağlanan kullanıcılar için özel ortamlar tanımlamak amacıyla oturum yapılandırmalarını kullanabilir.

Yöneticiler, bilgisayara uzaktan bağlanmak için gerekli izinleri belirlemek amacıyla da oturum yapılandırmalarını kullanabilir. Varsayılan olarak, yalnızca Administrators grubunun üyelerinin uzaktan bağlanmak için oturum yapılandırmasını kullanma izni vardır, ancak tüm kullanıcıların veya seçilen kullanıcıların bilgisayarınıza uzaktan bağlanmasına izin vermek için varsayılan ayarları değiştirebilirsiniz.

PowerShell 3,0'dan başlayarak, bir oturum yapılandırmasının öğelerini tanımlamak için bir oturum yapılandırma dosyası kullanabilirsiniz. Bu özellik, kod yazmadan oturumları özelleştirmeyi ve bir oturum yapılandırmasının özelliklerini keşfetmeyi kolaylaştırır. Bir oturum yapılandırma dosyası oluşturmak için New-PSSessionConfiguration cmdlet'ini kullanın. Oturum yapılandırma dosyaları hakkında daha fazla bilgi için bkz. about_Session_Configuration_Files.

Oturum yapılandırmaları, WSMAN tabanlı PowerShell uzaktan iletişiminin bir özelliğidir. Bunlar yalnızca uzak bir Windows bilgisayarına bağlanmak için New-PSSession, Invoke-Command veya Enter-PSSession cmdlet'lerini kullandığınızda kullanılır.

Windows bilgisayardaki oturum yapılandırmalarını yönetmek için PowerShell'i Yönetici olarak çalıştır seçeneğiyle başlatın.

Oturum Yapılandırmaları Hakkında

Her PowerShell oturumu bir oturum yapılandırması kullanır. Bu, New-PSSession veya Enter-PSSession cmdlet'lerini kullanarak oluşturduğunuz kalıcı oturumları ve Invoke-Command gibi WS-Yönetim tabanlı uzaktan iletişim teknolojisini kullanan bir cmdlet'in ComputerName parametresini kullandığınızda PowerShell'in oluşturduğu geçici oturumları içerir. .

Yöneticiler, bilgisayarın kaynaklarını korumak ve bilgisayara bağlanan kullanıcılar için özel ortamlar oluşturmak amacıyla oturum yapılandırmalarını kullanabilir. Örneğin, bilgisayarın oturumda aldığı nesnelerin boyutunu sınırlamak, oturumun dil modunu tanımlamak ve oturumda kullanılabilen cmdlet'leri, sağlayıcıları ve işlevleri belirtmek için bir oturum yapılandırmasını kullanabilirsiniz.

Bir oturum yapılandırmasının güvenlik tanımlayıcısını yapılandırarak, bilgisayara bağlanmak için oturum yapılandırmasını kimlerin kullanabileceğini belirlersiniz. Kullanıcıların bir oturum yapılandırmasını bir oturumda kullanabilmesi için Yürütme iznine sahip olması gerekir. Kullanıcı, bilgisayardaki oturum yapılandırmalarından herhangi birini kullanmak için gerekli izinlere sahip değilse, bilgisayara uzaktan bağlanamaz.

Varsayılan olarak, yalnızca bilgisayarın Yöneticileri varsayılan oturum yapılandırmalarını kullanma iznine sahiptir. Ancak güvenlik tanımlayıcılarını herkesin, hiç kimsenin veya yalnızca seçilen kullanıcıların bilgisayarınızdaki oturum yapılandırmalarını kullanmasına izin verecek şekilde değiştirebilirsiniz.

Yerleşik Oturum Yapılandırmaları

PowerShell 3,0, Microsoft.PowerShell ve Microsoft.PowerShell.Workflow adlı yerleşik oturum yapılandırmalarını içerir. Windows'un 64 bit sürümlerini çalıştıran bilgisayarlarda PowerShell ayrıca 32 bit oturum yapılandırması olan Microsoft.PowerShell32'yi de sağlar.

Microsoft.PowerShell oturum yapılandırması varsayılan olarak oturumlar için kullanılır; yani bir oturum oluşturma komutu New-PSSession, Enter-PSSession veya Invoke-Command cmdlet'inin ConfigurationName parametresini içermediğinde kullanılır.

Varsayılan oturum yapılandırmalarına ilişkin güvenlik tanımlayıcıları, yalnızca yerel bilgisayardaki Administrators grubunun üyelerinin bunları kullanmasına izin verir. Bu nedenle, varsayılan ayarları değiştirmediğiniz sürece yalnızca Administrators grubunun üyeleri bilgisayara uzaktan bağlanabilir.

$PSSessionConfigurationName tercih değişkenini kullanarak varsayılan oturum yapılandırmalarını değiştirebilirsiniz. Daha fazla bilgi için bkz. about_Preference_Variables.

Yerel Bilgisayarda Oturum Yapılandırmalarını Görüntüleme

Yerel bilgisayarınızdaki oturum yapılandırmalarını almak için Get-PSSessionConfiguration cmdlet'ini kullanın.

Örneğin şunu yazın:

PS C:> Get-PSSessionConfiguration | Format-List -Property Name, Permission

Name       : microsoft.powershell
Permission : BUILTIN\Administrators AccessAllowed

Name       : microsoft.powershell.workflow
Permission : BUILTIN\Administrators AccessAllowed

Name       : microsoft.powershell32
Permission : BUILTIN\Administrators AccessAllowed

Oturum yapılandırma nesnesi, bir oturum yapılandırma dosyası kullanılarak yapılandırılan oturum yapılandırmasının özelliklerini görüntülemek için PowerShell 3,0'da genişletildi.

Örneğin, bir oturum yapılandırma nesnesinin tüm özelliklerini görmek için şunu yazın:

PS C:> Get-PSSessionConfiguration | Format-List -Property *

Oturum yapılandırmalarını görüntülemek için PowerShell'deki WSMan sağlayıcısını da kullanabilirsiniz. WSMan sağlayıcısı, oturumunuzda bir WSMAN: sürücüsü oluşturur.

WSMAN: sürücüsünde oturum yapılandırmaları Eklenti düğümünde bulunur. (Tüm oturum yapılandırmaları Eklenti düğümündedir, ancak Eklenti düğümünde oturum yapılandırması olmayan öğeler vardır.)

Örneğin, yerel bilgisayardaki oturum yapılandırmalarını görüntülemek için şunu yazın:

PS C:> dir wsman:\localhost\plugin\microsoft*

WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin

Type       Keys                              Name
----       ----                              ----
Container  {Name=microsoft.powershell}       microsoft.powershell
Container  {Name=microsoft.powershell.wor... microsoft.powershell.workflow
Container  {Name=microsoft.powershell32}     microsoft.powershell32

Uzak Bilgisayardaki Oturum Yapılandırmalarını Görüntüleme

Uzak bilgisayardaki oturum yapılandırmalarını görüntülemek için Connect-WSMan cmdlet'ini kullanarak yerel bilgisayarınızdaki WSMAN: sürücüsüne uzak bilgisayar için bir not ekleyin ve ardından oturum yapılandırmalarını görüntülemek için WSMAN: sürücüsünü kullanın.

Örneğin, aşağıdaki komut, yerel bilgisayardaki WSMAN: sürücüsüne Server01 uzak bilgisayarı için bir düğüm ekler.

PS C:> Connect-WSMan server01.corp.fabrikam.com

Komut tamamlandığında, oturum yapılandırmalarını görüntülemek için Server01 bilgisayarının düğümüne gidebilirsiniz.

Örneğin:

PS C:> cd wsman:

PS WSMan:> dir

ComputerName                                  Type
------------                                  ----
localhost                                     Container
server01.corp.fabrikam.com                    Container

PS WSMan:> dir server01\plugin\

WSManConfig: Microsoft.WSMan.Management\WSMan::server01.corp.fabrikam.com\Pl
ugin

Type       Keys                              Name
----       ----                              ----
Container  {Name=microsoft.powershell}       microsoft.powershell
Container  {Name=microsoft.powershell.wor... microsoft.powershell.workflow
Container  {Name=microsoft.powershell32}     microsoft.powershell32

Oturum Yapılandırmasının Güvenlik Tanımlayıcısını Değiştirme

Windows Server 2012 ve Windows Server'ın daha yeni sürümlerinde, yerleşik oturum yapılandırmaları uzak kullanıcılar için varsayılan olarak etkinleştirilmiştir. Windows'un desteklenen diğer sürümlerinde, uzaktan erişime izin vermek için oturum yapılandırmalarının güvenlik tanımlayıcılarını değiştirmeniz gerekir.

Bilgisayardaki oturum yapılandırmalarına uzaktan erişimi etkinleştirmek için Enable-PSRemoting cmdlet'ini kullanın. Bu cmdlet iki oturum yapılandırması oluşturur:

  • adı şu şekilde tanımlanır: "PowerShell." + "geçerli PowerShell sürümü"
  • "PowerShell.6" adında, herhangi bir belirli PowerShell sürümüne bağlı.

Ayrıca, varsayılan olarak, yalnızca bilgisayardaki Administrators grubunun üyelerinin varsayılan oturum yapılandırmaları için Yürütme izni vardır, ancak varsayılan oturum yapılandırmalarında ve oluşturduğunuz tüm oturum yapılandırmalarında güvenlik tanımlayıcılarını değiştirebilirsiniz.

Diğer kullanıcılara bilgisayara uzaktan bağlanma izni vermek için, bu kullanıcılar için Microsoft.PowerShell ve Microsoft.PowerShell32 oturum yapılandırmalarının güvenlik tanımlayıcılarına "Yürütme" izinlerini eklemek üzere Set-PSSessionConfiguration cmdlet'ini kullanın.

Örneğin, aşağıdaki komut Microsoft.PowerShell varsayılan oturum yapılandırmasının güvenlik tanımlayıcısını değiştirmenize olanak tanıyan bir özellik sayfasını açar.

Set-PSSessionConfiguration -name Microsoft.PowerShell `
  -ShowSecurityDescriptorUI

Bilgisayardaki tüm oturum yapılandırmalarına herkesin iznini reddetmek için Disable-PSSessionConfiguration cmdlet'ini kullanın. Örneğin, aşağıdaki komut bilgisayardaki varsayılan oturum yapılandırmalarını devre dışı bırakır.

PS C:> Disable-PSSessionConfiguration -Name Microsoft.PowerShell

Uzak kullanıcıların bilgisayara bağlanmasını önlemek ancak yerel kullanıcıların bağlanmasına izin vermek için Disable-PSRemoting cmdlet'ini kullanın. Disable-PSRemoting, bilgisayardaki tüm oturum yapılandırmalarına bir "Network_Deny_All" girişi ekler.

PS C:> Disable-PSRemoting

Uzak kullanıcıların bilgisayardaki tüm oturum yapılandırmalarını kullanmasına izin vermek için Enable-PSRemoting veya Enable-PSSessionConfiguration cmdlet'ini kullanın. Örneğin, aşağıdaki komut yerleşik oturum yapılandırmalarına uzaktan erişim sağlar.

PS C:> Enable-PSSessionConfiguration -name Microsoft.Power*

Bir oturum yapılandırmasının güvenlik tanımlayıcısında başka değişiklikler yapmak için Set-PSSessionConfiguration cmdlet'ini kullanın. Bir SDDL dize değeri göndermek için SecurityDescriptorSDDL parametresini kullanın. Yeni bir SDDL oluşturmanıza yardımcı olacak bir kullanıcı arabirimi özellik sayfasını görüntülemek için ShowSecurityDescriptorUI parametresini kullanın.

Örneğin:

Set-PSSessionConfiguration -Name Microsoft.PowerShell `
  -ShowSecurityDescriptorUI

Yeni Oturum Yapılandırması Oluşturma

Yerel bilgisayarda yeni bir oturum yapılandırması oluşturmak için Register-PSSessionConfiguration cmdlet'ini kullanın. Yeni oturum yapılandırmasını tanımlamak için bir C# derlemesini, bir PowerShell betiğini ve Register-PSSessionConfiguration cmdlet'inin parametrelerini kullanabilirsiniz.

Örneğin, aşağıdaki komut, uzak komuttan alınan verileri 20 megabayt (MB) ile sınırlaması dışında Microsoft.PowerShell oturum yapılandırmasıyla aynı olan bir oturum yapılandırması oluşturur. (Varsayılan 50 MB'tır).

Register-PSSessionConfiguration -Name NewConfig `
  -MaximumReceivedDataSizePerCommandMB 20

Bir oturum yapılandırması oluşturduğunuzda, bunu diğer oturum yapılandırması cmdlet'lerini kullanarak yönetebilirsiniz ve bu, WSMAN: sürücüsünde görünür.

Daha fazla bilgi için bkz. Register-PSSessionConfiguration.

Oturum Yapılandırmasını Kaldırma

Yerel bilgisayardan bir oturum yapılandırmasını kaldırmak için Unregister-PSSessionConfiguration cmdlet'ini kullanın. Örneğin, aşağıdaki komut NewConfig oturum yapılandırmasını bilgisayardan kaldırır.

PS C:> Unregister-PSSessionConfiguration -Name NewConfig

Daha fazla bilgi için bkz. Kayıt Silme-PSSessionConfiguration.

Oturum Yapılandırmasını Geri Yükleme

Yanlışlıkla silinen (kayıtsız) bir varsayılan oturum yapılandırmasını geri yüklemek için Enable-PSRemoting cmdlet'ini kullanın.

Enable-PSRemoting cmdlet'i bilgisayarda bulunmayan tüm varsayılan oturum yapılandırmalarını yeniden oluşturur. Mevcut oturum yapılandırmalarının özellik değerlerinin üzerine yazmaz veya bunları değiştirmez.

Varsayılan bir oturum yapılandırmasının orijinal özellik değerlerini geri yüklemek için, oturum yapılandırmasını silmek üzere Unregister-PSSessionConfiguration'ı kullanın ve ardından bunu yeniden oluşturmak için Enable-PSRemoting cmdlet'ini kullanın.

Oturum Yapılandırmasını Seçme

Bir oturum için belirli bir oturum yapılandırmasını seçmek üzere New-PSSession, Enter-PSSession veya Invoke-Command'ın ConfigurationName parametresini kullanın.

Örneğin, bu komut, Server01 bilgisayarında bir PSSession başlatmak için New-PSSession cmdlet'ini kullanır. Komut, Server01 bilgisayarındaki WithProfile yapılandırmasını seçmek için ConfigurationName parametresini kullanır.

PS C:> New-PSSession -ComputerName Server01 -ConfigurationName WithProfile

Bu komut yalnızca geçerli kullanıcının WithProfile oturum yapılandırmasını kullanma izni varsa veya gerekli izinlere sahip bir kullanıcının kimlik bilgilerini sağlayabiliyorsa başarılı olur.

Bilgisayardaki varsayılan oturum yapılandırmasını değiştirmek için $PSSessionConfigurationName tercih değişkenini de kullanabilirsiniz. $PSSessionConfigurationName tercih değişkeni hakkında daha fazla bilgi için bkz. about_Preference_Variables.

ANAHTAR KELİMELER

about_Endpoints about_SessionConfigurations

Ayrıca bakınız

  • about_Preference_Variables
  • about_PSSessions
  • about_Remote
  • about_Session_Configuration_Files
  • Yeni-PSSession
  • PSSessionConfiguration'ı devre dışı bırak
  • Etkinleştirme-PSSessionConfiguration
  • Get-PSSessionConfiguration
  • Kayıt Ol-PSSessionConfiguration
  • Set-PSSessionConfiguration
  • Kaydı Sil-PSSessionConfiguration
  • Yeni-PSSessionConfigurationFile
  • Test-PSSessionConfigurationFile

İlgili makaleler