Intune'da Windows 10/11 cihazlarında PowerShell betiklerini kullanma
PowerShell betiklerini Intune'a yüklemek için Microsoft Intune yönetim uzantısını kullanın. Ardından bu betikleri Windows 10 cihazlarında çalıştırın. Yönetim uzantısı, Windows cihaz yönetimini (MDM) geliştirir ve modern yönetime geçmeyi kolaylaştırır.
Önemli
Genişletilmiş işlevselliği ve hata düzeltmelerini desteklemek için Windows istemcilerinde Intune Yönetim Uzantısı ile .NET Framework 4.7.2 veya üzerini kullanın. Bir Windows istemcisi .NET Framework'ün önceki bir sürümünü kullanmaya devam ederse, Intune Yönetim Uzantısı çalışmaya devam eder. .NET Framework 4.7.2, Win10 1809 (RS5) ve daha yeni sürümlerde bulunan 10 Temmuz 2018 itibarıyla Windows Update'ten edinilebilir. .NET Framework sürümlerinin birden çok sürümünün bir cihazda birlikte bulunabileceğini unutmayın.
Bu özellik şu platformlarda geçerlidir:
- Windows 10 ve üzeri (Windows 10 Home hariç)
Not
Intune yönetim uzantısı önkoşulları karşılandıktan sonra, kullanıcıya veya cihaza bir PowerShell betiği veya Win32 uygulaması, Microsoft Store uygulamaları, Özel uyumluluk ilkesi ayarları veya Proaktif düzeltmeler atandığında Intune yönetim uzantısı otomatik olarak yüklenir. Daha fazla bilgi için bkz. Intune Yönetim Uzantıları önkoşulları.
Çalışma alanına katılma (WPJ) cihazlarında resmi olarak desteklenmeyen PowerShell betikleri WPJ cihazlarına dağıtılabilir. Özellikle, cihaz bağlamı PowerShell betikleri WPJ cihazlarında çalışır, ancak kullanıcı bağlamı PowerShell betikleri tasarım gereği yoksayılır. Kullanıcı bağlamı betikleri WPJ cihazlarında yoksayılır ve Microsoft Intune yönetim merkezine bildirılmaz.
Modern yönetime geçme
Kullanıcı bilişimi dijital bir dönüşümden geçiyor. Geleneksel BT tek bir cihaz platformuna, işletmeye ait cihazlara, ofisten çalışan kullanıcılara ve farklı el ile reaktif BT işlemlerine odaklanır. Modern çalışma alanı, kullanıcıya ve işletmeye ait birçok platform kullanır. Kullanıcıların her yerden çalışmasına olanak tanır ve otomatik ve proaktif BT işlemleri sağlar.
Microsoft Intune gibi MDM hizmetleri, Windows 10 çalıştıran mobil ve masaüstü cihazları yönetebilir. Yerleşik Windows 10 yönetim istemcisi, kurumsal yönetim görevlerini çalıştırmak için Intune ile iletişim kurar. Gelişmiş cihaz yapılandırması ve sorun giderme gibi ihtiyacınız olabilecek bazı görevler vardır. Win32 uygulama yönetimi için Windows 10 cihazlarınızda Win32 uygulama yönetimi özelliğini kullanabilirsiniz.
Intune yönetim uzantısı, yerleşik Windows 10 MDM özelliklerini destekler. Windows 10 cihazlarında çalıştırmak için PowerShell betikleri oluşturabilirsiniz. Örneğin, gelişmiş cihaz yapılandırmaları kullanan bir PowerShell betiği oluşturun. Ardından betiği Intune'a yükleyin, betiği bir Microsoft Entra grubuna atayın ve betiği çalıştırın. Ardından betiğin çalıştırma durumunu baştan sona izleyebilirsiniz.
Başlamadan önce
Betikler kullanıcı bağlamı olarak ayarlandığında ve son kullanıcı yönetici haklarına sahip olduğunda, PowerShell betiği varsayılan olarak yönetici ayrıcalığı altında çalışır.
Son kullanıcıların PowerShell betiklerini yürütmek için cihazda oturum açması gerekmez.
Intune yönetim uzantısı aracısı, her yeniden başlatmadan sonra yeni betikler veya değişiklikler olup olmadığını denetler. İlkeyi Microsoft Entra gruplarına atadıktan sonra PowerShell betiği çalıştırılır ve çalıştırma sonuçları bildirilir. Betik yürütülürken, betikte veya ilkede bir değişiklik olmadığı sürece yeniden yürütülemez. Betik başarısız olursa, Intune yönetim uzantısı aracısı sonraki üç ardışık Intune yönetim uzantısı aracısı iadeleri için betiği üç kez yeniden dener.
Paylaşılan cihazlar için PowerShell betiği oturum açabilen her yeni kullanıcı için çalıştırılır.
PowerShell betikleri Win32 uygulamaları çalışmadan önce yürütülür. Başka bir deyişle, önce PowerShell betikleri yürütülür. Ardından Win32 uygulamaları yürütülür.
PowerShell betikleri 30 dakika sonra zaman aşımına uğradı.
Önemli
PowerShell betikleri ve Düzeltme betikleri kullanılırken gizlilik farkındalığı için en iyi yöntemler şunlardır:
- Betiklere (parolalar gibi) herhangi bir tür hassas bilgi eklemeyin
- Betiklere Kişisel Bilgileri (PII) eklemeyin
- Cihazlardan PII toplamak için betikleri kullanmayın
- Gizlilikle ilgili en iyi yöntemleri her zaman takip edin
İlgili bilgiler için bkz. Düzeltmeler.
Önkoşullar
Intune yönetim uzantısı aşağıdaki önkoşullara sahiptir. Bunlar karşılandığında, Kullanıcıya veya cihaza bir PowerShell betiği veya Win32 uygulaması atandığında Intune yönetim uzantısı otomatik olarak yüklenir.
Windows 10 sürüm 1607 veya üzerini çalıştıran cihazlar. Cihaz toplu otomatik kayıt kullanılarak kaydedildiyse, cihazların Windows 10 sürüm 1709 veya üzerini çalıştırması gerekir. Intune yönetim uzantısı S modunda Windows 10'da desteklenmez çünkü S modu mağaza dışı uygulamaların çalıştırılmasına izin vermez.
Aşağıdakiler dahil olmak üzere Microsoft Entra Id'ye katılmış cihazlar:
Microsoft Entra karmasına katılmış: Microsoft Entra Id'ye ve şirket içi Active Directory'ye (AD) katılmış cihazlar. Yönergeler için bkz. Microsoft Entra karma katılım uygulamanızı planlama .
Microsoft Entra registered/Workplace joined (WPJ): Microsoft Entra ID'de kayıtlı cihazlar, daha fazla bilgi için bkz . Sorunsuz bir ikinci faktör kimlik doğrulaması olarak Workplace Join . Bunlar genellikle Ayarlar>Hesapları>İş veya okula erişim yoluyla eklenmiş bir iş veya okul hesabı olan Kendi Cihazını Getir (KCG) cihazlarıdır.
Intune'a kayıtlı cihazlar, örneğin:
Grup ilkesine (GPO) kaydedilen cihazlar. Yönergeler için bkz. Grup İlkesi'ni kullanarak Windows 10 cihazını otomatik olarak kaydetme .
Intune'a el ile kaydedilen cihazlar:
- Intune'a otomatik kayıt , Microsoft Entra Id'de etkinleştirilir. Kullanıcılar, yerel bir kullanıcı hesabı kullanarak cihazlarda oturum açar ve cihazı Microsoft Entra Id'ye el ile ekler. Ardından, Microsoft Entra hesabını kullanarak cihazda oturum açarlar.
VEYA
- Kullanıcı, Microsoft Entra hesabını kullanarak cihazda oturum açar ve ardından Intune'a kaydolr.
Configuration Manager ve Intune kullanan ortak yönetilen cihazlar. Win32 uygulamalarını yüklerken Uygulamalar iş yükünün Pilot Intune veya Intune olarak ayarlandığından emin olun. Uygulamalar iş yükü Configuration Manager olarak ayarlansa bile PowerShell betikleri çalıştırılır. Bir PowerShell betiğini cihaza hedeflediğinizde Intune yönetim uzantısı bir cihaza dağıtılır. Cihazın bir Microsoft Entra Kimliği veya Microsoft Entra hibrite katılmış bir cihaz olması gerektiğini unutmayın. Ayrıca Windows 10 sürüm 1607 veya üzerini çalıştırıyor olmalıdır. Rehberlik için aşağıdaki makalelere bakın:
Intune yönetim uzantısını çalıştıran istemcilere dağıtılan betikler, cihazın sistem saati aylara veya yıllara göre fazla güncel değilse çalıştırılamaz. Sistem saati güncel duruma getirildikten sonra betik beklendiği gibi çalışır.
Not
Windows 10 VM'lerini kullanma hakkında bilgi için bkz. Intune ile Windows 10 sanal makinelerini kullanma.
Betik ilkesi oluşturma ve atama
Microsoft Intune yönetim merkezinde oturum açın.
Cihaz>Betikleri ve düzeltmeleriPlatform betikleri>>Windows 10 ve üzeriniekle'yi> seçin.
Temel Bilgiler'de aşağıdaki özellikleri girin ve İleri'yi seçin:
- Ad: PowerShell betiği için bir ad girin.
- Açıklama: PowerShell betiği için bir açıklama girin. Bu ayar isteğe bağlıdır ancak önerilir.
Betik ayarları'nda aşağıdaki özellikleri girin ve İleri'yi seçin:
Betik konumu: PowerShell betiğine göz atın. Betik 200 KB'tan (ASCII) küçük olmalıdır.
Oturum açmış kimlik bilgilerini kullanarak bu betiği çalıştırın: Betiği cihazda kullanıcının kimlik bilgileriyle çalıştırmak için Evet (varsayılan) seçeneğini belirleyin. Betiği sistem bağlamında çalıştırmak için Hayır'ı seçin. Birçok yönetici Evet'i seçer. Betiğin sistem bağlamında çalışması gerekiyorsa Hayır'ı seçin.
Betik imzası denetimini zorunlu kılma: Betiğin güvenilir bir yayımcı tarafından imzalanması gerekiyorsa Evet (varsayılan) seçeneğini belirleyin. Betiğin imzalanması için bir gereksinim yoksa Hayır'ı seçin.
Betiği 64 bit PowerShell ana bilgisayarında çalıştırma: Betiği 64 bit bir PowerShell konasında 64 bit istemci mimarisinde çalıştırmak için Evet'i seçin. Hayır (varsayılan) seçeneğini belirleyerek betiği 32 bit PowerShell konasında çalıştırır.
Evet veya Hayır olarak ayarlanırken, yeni ve mevcut ilke davranışı için aşağıdaki tabloyu kullanın:
Betiği 64 bit konakta çalıştırma İstemci mimarisi Yeni betik Mevcut ilke betiği Hayır 32 bit 32 bit PowerShell konağı desteklenir Yalnızca 32 bit ve 64 bit mimarilerde çalışan 32 bit PowerShell ana bilgisayarında çalışır. Evet 64 bit 64 bit mimariler için betiği 64 bit PowerShell ana bilgisayarında çalıştırır. 32 bit üzerinde çalıştırıldığında betik 32 bit PowerShell konaklarında çalışır. Betiği 32 bit PowerShell ana bilgisayarında çalıştırır. Bu ayar 64 bit olarak değişirse, betik 64 bit PowerShell konasında açılır (çalışmaz) ve sonuçları raporlar. 32 bit üzerinde çalıştırıldığında, betik 32 bit PowerShell ana bilgisayarında çalışır.
Kapsam etiketleri'ne tıklayın. Kapsam etiketleri isteğe bağlıdır. Dağıtılmış BT için rol tabanlı erişim denetimi (RBAC) kullanın ve kapsam etiketleri daha fazla bilgi içerir.
Kapsam etiketi eklemek için:
Kapsam etiketlerini> seç'i seçin listeden > mevcut bir kapsam etiketini seçin Seç'i seçin.
İşiniz bittiğinde İleri'yi seçin.
Atamalar>Eklenecek grupları seçin'i seçin. Microsoft Entra gruplarının mevcut listesi gösterilir.
Cihazları betiği alan kullanıcıları içeren bir veya daha fazla grup seçin. Seç'i seçin. Seçtiğiniz gruplar listede gösterilir ve ilkenizi alır.
Not
Intune'daki PowerShell betikleri Microsoft Entra cihaz güvenlik gruplarına veya Microsoft Entra kullanıcı güvenlik gruplarına hedeflenebilir. Ancak, çalışma alanına katılmış (WPJ) cihazları hedeflerken yalnızca Microsoft Entra cihaz güvenlik grupları kullanılabilir (kullanıcı hedefleme yoksayılır).
İleri'yi seçin.
Gözden geçir + ekle bölümünde, yapılandırdığınız ayarların özeti gösterilir. Betiği kaydetmek için Ekle'yi seçin. Ekle'yi seçtiğinizde, ilke seçtiğiniz gruplara dağıtılır.
Betik çalıştırılamıyor örneği
08:00
- Teslim etme
- ConfigScript01 betiğini çalıştırma
- Betik başarısız oluyor
09:00
- Teslim etme
- ConfigScript01 betiğini çalıştırma
- Betik başarısız oluyor (yeniden deneme sayısı = 1)
10:00
- Teslim etme
- ConfigScript01 betiğini çalıştırma
- Betik başarısız oluyor (yeniden deneme sayısı = 2)
11:00
- Teslim etme
- ConfigScript01 betiğini çalıştırma
- Betik başarısız oluyor (yeniden deneme sayısı = 3)
12:00
- Teslim etme
- ConfigScript01betiğini çalıştırmak için ek girişimde bulunulmamaktadır.
- Betikte ek bir değişiklik yapılmazsa, betiği çalıştırmak için ek girişimde bulunulmamaktadır.
Çalıştırma durumunu izleme
Portalda kullanıcılar ve cihazlar için PowerShell betiklerinin çalışma durumunu izleyebilirsiniz.
PowerShell betiklerinde, izlenecek betiği seçin, İzleyici'yi seçin ve ardından aşağıdaki raporlardan birini seçin:
- Cihaz durumu
- Kullanıcı durumu
Intune yönetim uzantısı günlükleri
İstemci makinesindeki aracı günlükleri genellikle içindedir C:\ProgramData\Microsoft\IntuneManagementExtension\Logs
. Bu günlük dosyalarını görüntülemek için CMTrace.exe kullanabilirsiniz.
Ayrıca, istemcideki Win32 uygulama yönetimi olaylarının sorunlarını gidermeye ve çözümlemeye yardımcı olmak için günlük dosyası AppWorkload.log kullanabilirsiniz. Bu günlük dosyası, IME tarafından gerçekleştirilen uygulama dağıtım etkinlikleriyle ilgili tüm günlük bilgilerini içerir.
Betiği silme
PowerShell betiklerinde betiği sağ tıklatın ve Sil'i seçin.
Yaygın sorunlar ve çözümleri
Sorun: Intune yönetim uzantısı indirilmiyor
Olası çözümler:
- Cihaz Microsoft Entra Id'ye katılmamış. Cihazların önkoşulları karşıladığından emin olun (bu makalede).
- Kullanıcının veya cihazın ait olduğu gruplara atanmış PowerShell betikleri veya Win32 uygulamaları yoktur.
- Cihaz Intune hizmetine giriş yapamaz. Örneğin, İnternet erişimi yoktur, Windows Anında İletme Bildirim Hizmetleri'ne (WNS) erişim yoktur ve bu şekilde devam eder.
- Cihaz S modundadır. Intune yönetim uzantısı S modunda çalışan cihazlarda desteklenmez.
Cihazın otomatik olarak kaydedilip kaydedilmediğini görmek için şunları yapabilirsiniz:
- Ayarlar>Hesaplar>İş veya okula erişim'e gidin.
- Birleştirilen hesap >Bilgilerini seçin.
- Gelişmiş Tanılama Raporu'nın altında Rapor Oluştur'u seçin.
- öğesini
MDMDiagReport
bir web tarayıcısında açın. - MDMDeviceWithAAD özelliğini arayın. Özelliği varsa, cihaz otomatik olarak kaydedilir. Bu özellik yoksa cihaz otomatik olarak kaydedilmez.
Windows 10 otomatik kaydını etkinleştirme , Intune'da otomatik kaydı yapılandırma adımlarını içerir.
Sorun: PowerShell betikleri çalışmıyor
Olası çözümler:
PowerShell betikleri her oturum açmada çalışmaz. Çalışır:
Betik bir cihaza atandığında
Betiği değiştirirseniz karşıya yükleyin ve betiği bir kullanıcıya veya cihaza atayın
İpucu
Microsoft Intune Yönetim Uzantısı, Hizmetler uygulamasında (services.msc) listelenen diğer hizmetlerde olduğu gibi cihazda çalışan bir hizmettir. Bir cihaz yeniden başlatıldıktan sonra bu hizmet de yeniden başlatılabilir ve Intune hizmetiyle atanan PowerShell betiklerini denetleyebilir. Microsoft Intune Yönetim Uzantısı hizmeti El ile olarak ayarlandıysa, cihaz yeniden başlatıldıktan sonra hizmet yeniden başlatılamayabilir.
Cihazların Microsoft Entra Id'ye katıldığından emin olun. Yalnızca çalışma alanınıza veya kuruluşunuza katılmış cihazlar (Microsoft Entra Id'ye kayıtlı ) betikleri almaz.
Intune yönetim uzantısının adresine indirildiğinden emin olmak için
%ProgramFiles(x86)%\Microsoft Intune Management Extension
.Betikler Surface Hubs'ta veya S modunda Windows 10'da çalışmaz.
Hatalar için günlükleri gözden geçirin. Bkz. Intune yönetim uzantısı günlükleri (bu makalede).
Olası izin sorunları için PowerShell betiğinin özelliklerinin olarak
Run this script using the logged on credentials
ayarlandığından emin olun. Ayrıca oturum açmış kullanıcının betiği çalıştırmak için uygun izinlere sahip olup olmadığını denetleyin.Betik oluşturma sorunlarını yalıtmak için şunları yapabilirsiniz:
Cihazlarınızda PowerShell yürütme yapılandırmasını gözden geçirin. Yönergeler için bkz. PowerShell yürütme ilkesi .
Intune yönetim uzantısını kullanarak örnek bir betik çalıştırın. Örneğin, dizini oluşturun
C:\Scripts
ve herkese tam denetim verin. Aşağıdaki komut dosyasını çalıştırın:write-output "Script worked" | out-file c:\Scripts\output.txt
Başarılı olursa, output.txt oluşturulmalıdır ve "Betik çalıştı" metnini içermelidir.
Intune olmadan betik yürütmeyi test etmek için psexec aracını yerel olarak kullanarak betikleri Sistem hesabında çalıştırın:
psexec -i -s
Betik başarılı olduğunu bildirirse ancak gerçekten başarılı olmadıysa virüsten koruma hizmetiniz AgentExecutor korumalı alanı olabilir. Aşağıdaki betik her zaman Intune'da bir hata bildirir. Test olarak şu betiği kullanabilirsiniz:
Write-Error -Message "Forced Fail" -Category OperationStopped mkdir "c:\temp" echo "Forced Fail" | out-file c:\temp\Fail.txt
Betik başarılı olduğunu bildirirse hata çıkışını
AgentExecutor.log
onaylamak için dosyasına bakın. Betik yürütülürse uzunluk 2 olmalıdır >.ve
.output
dosyalarını yakalamak.error
için aşağıdaki kod parçacığı, betiği AgentExecutor aracılığıyla PowerShell x86 ()C:\Windows\SysWOW64\WindowsPowerShell\v1.0
ile yürütür. Gözden geçirmeniz için günlükleri tutar. Intune Yönetim Uzantısı'nın betik yürüttükten sonra günlükleri temizleytiğini unutmayın:$scriptPath = read-host "Enter the path to the script file to execute" $logFolder = read-host "Enter the path to a folder to output the logs to" $outputPath = $logFolder+"\output.output" $errorPath = $logFolder+"\error.error" $timeoutPath = $logFolder+"\timeout.timeout" $timeoutVal = 60000 $PSFolder = "C:\Windows\SysWOW64\WindowsPowerShell\v1.0" $AgentExec = "C:\Program Files (x86)\Microsoft Intune Management Extension\agentexecutor.exe" &$AgentExec -powershell $scriptPath $outputPath $errorPath $timeoutPath $timeoutVal $PSFolder 0 0
Sonraki adımlar
Profillerinizi izleyin ve sorun giderin.