<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>C:&gt;Windows Internals - L'équipe Française de Support Windows</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/windowsinternals/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/windowsinternals/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 25 Oct 2017 11:50:56 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Windows 10 – How to configure file associations for IT Pros?</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/windows-10-how-to-configure-file-associations-for-it-pros</link>
      <pubDate>Wed, 25 Oct 2017 11:50:55 GMT</pubDate>
      <dc:creator><![CDATA[Ismaël L]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=4465</guid>
      <description><![CDATA[Hello, my name is Ismaël Limbada and I am a Support Escalation Engineer for Windows Core Team. This...]]></description>
      <content:encoded><![CDATA[Hello, my name is Ismaël Limbada and I am a Support Escalation Engineer for Windows Core Team. This blog post is about file association configuration in Windows 10. After reading it, you will be able to configure file associations in Windows 10 and avoid this notification: <em>An app default was reset</em>.

All steps described in this blog post have been tested on following Windows 10 versions:
<ul>
 	<li>Windows 10 1709</li>
 	<li>Windows 10 1703</li>
 	<li>Windows 10 1607</li>
</ul>
<h2>Configuring file association prior Windows 10</h2>
There were different ways and guidance to set default program prior to Windows 10 (see <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/cc144160(v=vs.85).aspx"><span style="color: blue;text-decoration: underline">Managing Default Applications</span></a>).

Before Windows 10, an application could check default apps, ask for user consent and set default app programmatically using <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb776332(v=vs.85).aspx"><span style="color: blue;text-decoration: underline">Windows API</span></a>.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho1.png" /></p>
But some programs skip the user consent and set the app defaults into the registry. The main requirement for default file association is often forgotten: the end-user is in control.

Now in Windows 10 checks if registry file extension keys have not been modified to prevent file association hijacking.
<h2>File association changes in Windows 10</h2>
The way that default file associations work changed in Windows 10.

There is a new UI for the end-user. This new way puts the user in control with a new file association notification.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho2.png" /></p>
This notification will be displayed:
<ul>
 	<li>On the first launch of a file extension, if multiples programs are registered for handling that file extension.</li>
 	<li>Each time a new application registers a file extension, except if the Always use this app to open .xxx files is checked.</li>
</ul>
If an application used Windows API to set default apps, the user will receive the following notification:
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho3.png" /></p>
For more information about these changes : <a href="https://blogs.windows.com/windowsexperience/2015/05/20/announcing-windows-10-insider-preview-build-10122-for-pcs/"><span style="color: blue;text-decoration: underline">https://blogs.windows.com/windowsexperience/2015/05/20/announcing-windows-10-insider-preview-build-10122-for-pcs/</span></a><span style="color: blue;text-decoration: underline">
</span>

You will find some explanation on The Old New Thing blog: <a href="https://blogs.msdn.microsoft.com/oldnewthing/20170517-00/?p=96175"><span style="color: blue;text-decoration: underline">Why do my PDF file associations get reset every time I restart?</span></a><span style="color: blue;text-decoration: underline">
</span>
<h2>Windows 10: An app default was reset</h2>
But what happens if an application is not using Windows API and writes some stuff and hijacks user preferences?

Now,Windows 10 detects that the registry is corrupted and will reset the default program for this file extension. Additionally, the end-user will receive this notification: An App default was reset. These change is documented in <a href="https://support.microsoft.com/en-us/help/4001770"><span style="color: blue;text-decoration: underline">KB4001770</span></a>: <em>Reset app default when a registry setting is deleted or corrupted and streamlined notification about the corruption.</em>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho4.png" /></p>
In Windows 10, if you are using applications or scripts that tamper registry entries to configure default apps associations, you will get app reset notifications.
<h2>How to configure file association in Windows 10?</h2>
It's possible for IT Pro to configure or <em>force</em> default association using supported methods.

The best way to do it is to set up a reference computer, install applications, configure default programs and use Dism to export/import the custom default app associations or use a group policy.
<ol>
 	<li>Set up a reference computer</li>
 	<li>Install applications</li>
 	<li>
<div>Go to Control Panel\All Control Panel Items\Default Programs and configure default apps associations. In Windows 10 1709, this control panel item is now in Settings app.</div>
Let's try to configure Internet Explorer as the default browser
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho5.png" /></p>
<p style="text-align: center">Choose Internet Explorer</p>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho6.png" /></p>
<p style="text-align: center">Internet Explorer is now the default web browser</p>
</li>
 	<li>Export/import the custom default app association with dism.exe
Note that you need administrator rights to use dism.exe. And to export properly the associations use the same account used in step 3, otherwise you will get a malformed XML file.</li>
</ol>
<ol>
 	<li>Dism.exe /online /export-defaultappassociations:C:\temp\CustomFileAssoc.xml</li>
</ol>
<p style="background: #012456"><span style="color: whitesmoke;font-family: Lucida Console;font-size: 9pt">PS C:\Windows\system32&gt; dism /online /export-defaultappassociations:"C:\Temp\IE-DefaultBrowser.xml"
</span></p>

<ol>
 	<li>Open the xml file and check if everything looks good.<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho7.png" /></li>
</ol>
Usually at this step you will be tempted to delete other lines because you simply don't care about them and get a file like this:
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho8.png" /></p>
<p style="text-align: center"><span style="text-decoration: underline">FTA-IE-Only.xml
</span></p>
<strong>VERY IMPORTANT</strong>: If you want to import your file with DISM.exe, <strong>DO NOT</strong> delete any file associations entries!
A missing entry will trigger the App default reset notification and you will get a notification storm at the first logon.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho9.png" /></p>

<h3>Refresh your XML on a regular basis</h3>
As some recommended applications can manage more extensions with each new Windows 10 version available, it's a good practice to refresh your XML. For example, in Windows 10 1703, Microsoft Edge registers the epub extension. If you're using an XML file from Windows 10 1607, epub is missing. As a result, you will get an app reset notification for epub.
<h3>Tips for building your XML file</h3>
<ul>
 	<li>Manually editing the file could result in a non-valid XML file. Ensure that your XML file is valid. Opening XML file in the <em>old</em> Internet Explorer is a good idea to check if the XML is valid. You can try <a href="http://xmlnotepad.codeplex.com/">XML Notepad</a> to edit/validate XML files.</li>
 	<li>If you do not see your file extension in XML file, go back to Control Panel\All Control Panel Items\Default Programs and configure default apps associations, select file extension, click on Change Program and confirm the program in the dialog box. Then, export again you're XML file.</li>
</ul>
<h2>Deploy your custom XML</h2>
Now it's time to apply your XML file. You have two options:
<ul>
 	<li>Set up file association in your Windows 10 image. File associations will be configured for new users' profiles. Existing profiles are untouched. Users can change file associations.</li>
 	<li>Configure a policy for your domain-joined computer: file association will be configured at each logon. User will be able to change file association, but at the next logon file association will be configured using XML file. This policy works only for domain-joined computer.</li>
</ul>
<h3>Configure the XML file for your Windows 10 reference image:</h3>
<p style="background: #012456"><span style="color: whitesmoke;font-family: Lucida Console;font-size: 9pt">Dism.exe /online /import-defaultappassociations:c:\temp\CustomFileAssoc.xml</span>
<span style="color: whitesmoke;font-family: Lucida Console;font-size: 9pt">
</span></p>
Your file will be copied in \Windows\System32 with the following name OEMDefaultAssociations.xml
<h3>Configure the XML file for your domain-joined computer</h3>
Configure the following policy <em>Set a default associations configuration file</em> located in Computer\Policies\Administrative Templates\Windows Components\File Explorer.

If this group policy is enabled and the client machine is domain-joined, the file will be processed, and default associations will be applied at logon time.

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho10.png" />

<strong><em>Note</em></strong>: this policy will not prevent user to change the file association. But at each logon the default association configured in XML file will be applied.
<h3>How to force only a set of file associations?</h3>
Some IT Pros want to force only some file associations and let users in control for others file associations. For example, they want to configure Internet Explorer as default for HTTP/HTTPS only for HR people.

So, they removed everything in the XML file except Internet Explorer entries. <strong>As previously seen, removing entries in XML file could result in app reset notifications</strong>.

But don't panic, there is a solution to do it in your Windows 10 reference image.

You just need to have two XML files, one for configuring the defaults and another one to force file association.

The main XML, CustomDefaultAssoc.xml must <span style="text-decoration: underline"><strong>contain all extensions</strong></span>. You need to import this file using:
<p style="background: #012456"><span style="color: whitesmoke;font-family: Lucida Console;font-size: 9pt">Dism /online /import-defaultappassociations:C:\CustomDefaultAssoc.xml</span></p>
The second XML, FTA-IE-Only.xml will contain only a set of file extensions. You need to use this XML file with the group policy <em>Set a default associations configuration file.
</em>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho11.png" /></p>
 At the first logon, Explorer.exe will apply both XML.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho12.png" /></p>
The end user will have this results without any app reset notifications:
<ul>
 	<li>PDF files associated with Microsoft Reader.</li>
 	<li>HTM/HTML files associated with Internet Explorer.</li>
</ul>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho13.png" /></p>
<em>OEMDefaultAssociations.xml</em> contains the following lines:

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho14.png" />

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho15.png" />

<em>IEOnly.xml</em> contains the following lines:

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho16.png" />
<h2>Why I'm getting an app reset notification?</h2>
Raymond Chen talked about <a href="https://blogs.msdn.microsoft.com/oldnewthing/20170517-00/?p=96175">this problem</a>. If a program is trying to set some registry keys, Explorer will detect it and the file association will be reset.

Stop using script or other pre-Windows 10 ways for configuring file association.

You can check the Microsoft-Windows-Shell-Core/AppDefaults event log for clues about file associations reset.

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho17.png" />

If you want to troubleshoot this, <a href="https://www.zazzle.com/appcompatguy"> keep calm and run Procmon</a>
<span style="font-family: Segoe UI Emoji">😉</span>

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho18.png" />

You should be able to track which application is hijacking your file associations. Once you identified the bad application, the best way to solve this, is to use a more recent version, or contact your vendor.
<h2>Why I'm getting the User Choice notification even if I used an XML file?</h2>
You could get the following notification starting Windows 10 1703 when you choose an application as the default viewer instead using Microsoft Edge.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho19.png" /><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/10/102517_1148_Windows10Ho20.png" /></p>
These notification windows are displayed only once if you're clicking on OK. It's because Microsoft Edge is detected as a new application.

If a new app is installed and is registered to an existing file extension or protocol you will get this notification.

If you want to get rid of these notifications, there is a group policy to hide these notifications:

<span style="color: black"><strong>Do not show the 'new application installed' notification
</strong></span>

This policy removes the end-user notification for new application associations. These associations are based on file types (e.g. *.txt) or protocols (e.g. http:) If this group policy is enabled, no notifications will be shown
<h2>Group Policy Settings related to File Associations settings</h2>
You can find in the table below some group policies related to default file associations settings:
<div>
<table style="border-collapse: collapse" border="0"><colgroup> <col style="width: 994px" /> <col style="width: 1116px" /></colgroup>
<tbody valign="top">
<tr style="height: 24px">
<td style="padding-left: 9px;padding-right: 9px;border-bottom: solid #9cc2e5 0.5pt"><span style="color: black"><strong>Policy Setting Name</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-bottom: solid #9cc2e5 0.5pt"><span style="color: black"><strong>Policy Path</strong></span></td>
</tr>
<tr style="height: 86px;background: #deeaf6">
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Do not reinitialize a pre-existing roamed user profile when it is loaded on a machine for the first time</span></td>
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Windows Components\File Explorer</span></td>
</tr>
<tr style="height: 24px">
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Turn off Internet File Association service</span></td>
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">System\Internet Communication Management\Internet Communication settings</span></td>
</tr>
<tr style="height: 24px;background: #deeaf6">
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Turn off access to the Store</span></td>
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">System\Internet Communication Management\Internet Communication settings</span></td>
</tr>
<tr style="height: 24px">
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Do not show the 'new application installed' notification</span></td>
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Windows Components\File Explorer</span></td>
</tr>
<tr style="height: 24px;background: #deeaf6">
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Set a default associations configuration file</span></td>
<td style="padding-left: 9px;padding-right: 9px"><span style="color: black">Windows Components\File Explorer</span></td>
</tr>
</tbody>
</table>
</div>
<h2>Bonus for Adobe Reader XI users</h2>
If you are still using Adobe Reader XI, you should get a new application to open PDF, as Adobe Reader XI <a href="https://helpx.adobe.com/support/programs/adobe-support-policies-supported-product-versions.html">is out of support</a>.

With Adobe XI installer, you can get an app reset notification for PDF extensions and it will be reset to Microsoft Edge.

You should look at Adobe Reader documentation and launch the Adobe Reader 11 installation with the following command line:

<span style="font-family: Courier New;font-size: 10pt">AdbeRdr11010_en_US.exe /rs /sAll /msi EULA_ACCEPT=YES OWNERSHIP_STATE=0
</span>

With OWNERSHIP_STATE=0 Adobe Reader stops to change file association for PDF with an unsupported way.
<h4>Resources:</h4>
<ul>
 	<li><a href="http://www.adobe.com/devnet-docs/acrobatetk/tools/AdminGuide/pdfviewer.html">http://www.adobe.com/devnet-docs/acrobatetk/tools/AdminGuide/pdfviewer.html</a></li>
 	<li><a href="https://www.adobe.com/devnet-docs/acrobatetk/tools/AdminGuide/properties.html">https://www.adobe.com/devnet-docs/acrobatetk/tools/AdminGuide/properties.html#props</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>Nouvelle release du MS16-087 dans le rollup de sécurité de Septembre 2017</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/nouvelle-release-du-ms16-087-dans-le-rollup-de-securite-de-septembre-2017</link>
      <pubDate>Fri, 29 Sep 2017 15:31:58 GMT</pubDate>
      <dc:creator><![CDATA[Mounia Rachidi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=4105</guid>
      <description><![CDATA[Vous avez certainement déjà sur votre parc la mise à jour de sécurité de Juillet 2016 le MS16-087...]]></description>
      <content:encoded><![CDATA[Vous avez certainement déjà sur votre parc la mise à jour de sécurité de Juillet 2016 le MS16-087 qui permet d'adresse la vulnérabilité <a target="_self" href="https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2016-3238"><span style="color: #006cd8;font-family: Segoe UI;font-size: 11pt;background-color: white">CVE-2016-3238</span></a>.

Pour éviter que des attaquants puissent utiliser le mécanise d'installation des pilotes d'impressions pour nuire ; le MS16-087 apporte une mise à jour des composants d'impressions plus restrictive vis-à-vis des pilotes d'impressions. Ces derniers doivent désormais être signés et packagés (notion de package aware qui date de Vista).

Toutefois, beaucoup de nos clients utilisent encore des versions de pilotes d'impressions qui ne satisfont pas les critères de sécurités cités plus haut. Il a fallu introduire une notion de liste de serveurs approuvés (liste blanche – white liste) pour débloquer la situation. Le contournement a été apporté dans une mise à jour de type <span style="text-decoration: underline">non sécurité</span> :

Windows 10 1511  KB3192441
Windows 10 1607  KB3194798
Windows 7 and Windows Server 2008 R2  KB3192403
Windows Server 2012  KB3192406
Windows 8.1 and Windows Server 2012 R2  KB3192404<strong> </strong>

<span style="color: red"><span style="font-size: 12pt"><strong>La nouveauté</strong></span> </span>est qu'à partir de ce mois-ci, le contournement est disponible dans <strong>le rollup de sécurité :
</strong>

Windows 8.1 and Windows Server 2012 R2  <a href="https://support.microsoft.com/fr-fr/help/4038792/windows-8-1-update-kb4038792">https://support.microsoft.com/fr-fr/help/4038792/windows-8-1-update-kb4038792</a>

Windows 7 and Windows Server 2008 <a href="https://support.microsoft.com/en-us/help/4038777/windows-7-update-kb4038777">https://support.microsoft.com/en-us/help/4038777/windows-7-update-kb4038777</a>

Windows 8 and Windows Server 2012  <a href="https://support.microsoft.com/en-us/help/4038786">https://support.microsoft.com/en-us/help/4038786</a>

Pour rappel, vous trouverez ci-dessous les problèmes rencontrés, en l'absence du contournement, quand les pilotes d'impressions ne respectent pas les critères de sécurité.

Scénario I :

Pour les pilotes d'impression non packagés, le message d'avertissement suivant peut s'afficher lorsque l'utilisateur tente de se connecter à une imprimante : "<em>Faites-vous confiance à cette imprimante ?"</em>
<p style="text-align: center"><img src="https://msdnshared.blob.core.windows.net/media/2017/09/092917_1528_Nouvellerel1.png" alt="" /></p>
Scénario II

Comme précisé, les pilotes d'impressions doivent être signés avec un certificat approuvé. Le processus de vérification contrôle si tous les fichiers inclus dans le dossier d'installation disposent d'un fichier hash correspondant dans le catalogue. En cas d'échec, le pilote est considéré comme non fiable. Dans ce cas, l'installation du pilote est bloquée, et le message d'avertissement suivant s'affiche : "<em>Une stratégie est en application sur votre ordinateur et vous empêche de vous connecter à cette file d'attente d'impression. Contacter votre administrateur système</em>"
<p style="text-align: center"><img src="https://msdnshared.blob.core.windows.net/media/2017/09/092917_1528_Nouvellerel2.png" alt="" /></p>]]></content:encoded>
    </item>
    <item>
      <title>How to create a RAM DISK in Windows Server</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/how-to-create-a-ram-disk-in-windows-server</link>
      <pubDate>Fri, 25 Aug 2017 15:10:24 GMT</pubDate>
      <dc:creator><![CDATA[Mounia Rachidi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=3866</guid>
      <description><![CDATA[Hi, this is Mounia Rachidi, a Support Escalation Engineer on the Windows team. Today's blog will...]]></description>
      <content:encoded><![CDATA[<p>Hi, this is Mounia Rachidi, a Support Escalation Engineer on the Windows team. Today's blog will cover the creation of a RAM DISK.
</p><p>A RAM DISK is a virtual disk entirely stored in memory and accessible from any application. As the memory is much faster than physical hard disks, storing temporary data on an in-memory disk achieves a higher performance.
</p><p>Furthermore; RAM Disks can be used to test the throughput of a solution while removing the spinning disks as a bottleneck.
</p><p>As user mode applications can't access physical memory without the help of a driver, the implementation of RAMDisk in Windows relies on iSCSI driver.
</p><p>To set it up, you basically need to ensure that the server is running the iSCSI Target role, create a target and map the created Ramdisk to that target.
</p><p><img align="left" src="https://msdnshared.blob.core.windows.net/media/2017/08/082517_1510_Howtocreate1.png" alt="" />
	</p><p>
 </p><p>
 </p><p>
 </p><p>
 </p><p>While setting a RAMDISK can be possible on a member cluster, this configuration is <strong>not recommended or supported</strong> while the cluster service is up.
</p><p><span style="font-family:Verdana;font-size:12pt"><strong>Step-By-Step Walk-Through
</strong></span></p><p>Great! now that you have an understanding of RAMDISK concept, let's create one…
</p><p><span style="font-family:Verdana;font-size:10pt"><strong>First, you need to add the iSCSI Target Server role:
</strong></span></p><p>
 </p><p><img src="https://msdnshared.blob.core.windows.net/media/2017/08/082517_1510_Howtocreate2.jpg" alt="" /><span style="font-family:Verdana;font-size:10pt">
		</span></p><p><span style="font-family:Verdana;font-size:10pt"><strong>Adjust the Firewall rules:</strong>
		</span></p><ol><li>Press Windows Logo+R, type firewall.cpl and press Enter to open the Windows Firewall Control Panel tool.
</li><li>Click Allow an app or feature through Windows Firewall on the left.
</li><li>Scroll down and check iSCSI Service. Check Domain, Private and Public. Click OK to save the settings.
</li></ol><p><span style="font-family:Verdana;font-size:10pt"><strong>Make sure the Iscsi Target allows the LoopBack mode:
</strong></span></p><p>Add the registry value if not present :<span style="font-family:Verdana;font-size:10pt"><strong>
			</strong></span></p><p style="margin-left: 36pt">HKLM\Software\Microsoft\iSCSI Target
</p><p style="margin-left: 36pt">Value Name: AllowLoopBack
</p><p style="margin-left: 36pt">Type: REG_DWORD
</p><p style="margin-left: 36pt">Value: 1 
</p><p><span style="font-family:Verdana;font-size:10pt"><strong>Create a virtual disk as a Ramdisk:
</strong></span></p><p>New-IscsiVirtualDisk -Path "ramdisk:testRAM.vhdx" -Size 1GB
</p><p><span style="font-family:Verdana;font-size:10pt"><strong>Create a target iSCSI:
</strong></span></p><p>New-IscsiServerTarget -TargetName targetRAM -InitiatorIds @("IPAddress:X.X.X.")
</p><p><span style="font-family:Verdana;font-size:10pt"><strong>Map the Ramdisk to the iSCSI target:
</strong></span></p><p>Add-IscsiVirtualDiskTargetMapping -TargetName targetRAM -DevicePath "ramdisk:testRAM.vhdx"
</p><p><span style="font-family:Verdana;font-size:10pt"><strong>Next, launch the iSCSI Initiator for the Server Manager console: </strong></span>
	</p><p><img src="https://msdnshared.blob.core.windows.net/media/2017/08/082517_1510_Howtocreate3.jpg" alt="" />
	</p><p><span style="font-family:Verdana;font-size:10pt"><strong>Connect to the iSCSI target: 
</strong></span></p><p>In the Target field, enter the IP address specified in step 5 and click Quick Connect to detect the targets.
</p><p>Next, select the row that corresponds to the right target and click Connect. The disk will subsequently be available in the disk management console.</p>]]></content:encoded>
    </item>
    <item>
      <title>Réparation d’un Storage Space - Les étapes à ne pas manquer</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/reparation-dun-storage-space-les-etapes-a-ne-pas-manquer</link>
      <pubDate>Fri, 16 Jun 2017 11:54:49 GMT</pubDate>
      <dc:creator><![CDATA[serge gourraud]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=3695</guid>
      <description><![CDATA[Aujourd’hui, nous allons faire la réparation d’un storage pool.

Le but de cet article n’est pas...]]></description>
      <content:encoded><![CDATA[Aujourd’hui, nous allons faire la réparation d’un storage pool.

Le but de cet article n’est pas d’expliquer le fonctionnement des Storage Pool mais de voir un peu les outils à notre disposition pour faire une réparation, et dans quel ordre les employer.

De nombreux blogs décrivent déjà les Storage Pool de façon très détaillée, mais nous allons revoir quelques notions avant d’aller plus loin :
<ul>
 	<li><b>Storage Pool</b> : Le groupe de disques physiques qu’on met en commun</li>
 	<li><b>Space</b> : Un disque virtuel créé à partir du Storage Pool. Il peut y avoir 3 types de Spaces : Simple, Mirror (chaque bloc pouvant être disponible en 2 ou 3 exemplaires) et Parity (Raid-5)</li>
 	<li><b>Le mode d’usage</b> des disques physiques : <b>Automatic</b>, <b>Manual</b> et <b>Hot Spare</b>. Il en existe d'autres, mais ce n'est pas le but de cet article.</li>
</ul>
Vous trouverez d’avantage d’informations sur <a href="https://technet.microsoft.com/en-us/library/hh831739(v=ws.11).aspx" title="https://technet.microsoft.com/en-us/library/hh831739(v=ws.11).aspx">https://technet.microsoft.com/en-us/library/hh831739(v=ws.11).aspx</a>

La plupart des utilisateurs construisent leur storage pool en ajoutant les disques physiques en mode d’usage <b>Automatic</b>, mais on peut ajouter les disques en mode d’usage <b>Manuel</b> et <b>Hot Spare</b>. Le mode <b>Hot Spare</b>, comme son nom l’indique, fait en sorte que ce disque ne sera pas utilisé quand on créera un disque virtuel (ou space). Le mode d’usage <b>Manual</b> permet de contrôler la taille des blocs et les disques physiques qui seront utilisés par le disque virtuel que l’on va créer, entre autre.

En cas de panne, le mode <b>Automatic</b> fonctionne parfaitement, mais le mode <b>Manual</b> demande quelques actions à mener dans le bon sens, et c’est ce que nous allons voir.
<h2>ENVIRONNEMENT</h2>
Supposons que nous avons un pool de 5 disques en usage <b>Manual</b> sur lequel nous avons créé 3 disques virtuels en mirroir

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-00.png"><img width="300" height="132" class="alignnone size-medium wp-image-3705" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-00-300x132.png" /></a>

On peut détailler toutes ces configurations en powershell également :

Lister les Storage Pool
<pre style="background-color: #012456;color: white;font-family: courier new;font-size: 80%">PS C:\&gt; <span style="color: #e0ffff">Get-StoragePool</span>
FriendlyName      OperationalStatus      HealthStatus        IsPrimordial    IsReadOnly
------------      -----------------      ------------        ------------    ---------
Primordial        OK                     Healthy             True            False
OnePool           OK                     Healthy             False           False
</pre>
Lister les disques physiques appartenant à un Storage Pool
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ccffff"><span style="color: #e0ffff">Get-StoragePool</span> </span><span style="color: #ffff99"><span style="color: #ffe4b5">-FriendlyName</span> </span><span style="color: #db7093">'OnePool'</span> | <span style="color: #e0ffff">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk4     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
</pre>
Lister les disques virtuels créés dans un Storage Pool
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ccffff"><span style="color: #e0ffff">Get-StoragePool</span> </span><span style="color: #ffff99"><span style="color: #ffe4b5">-FriendlyName</span> </span><span style="color: #db7093">'OnePool'</span> | <span style="color: #e0ffff">Get-VirtualDisk</span>
FriendlyName      ResiliencySettingName  OperationalStatus   HealthStatus    IsManualAttach    Size
------------      ---------------------  -----------------   ------------    --------------    ----
Mirror-1          Mirror                 OK                  Healthy         False             100 GB
Mirror-2          Mirror                 OK                  Healthy         False             50 GB
Mirror-3          Mirror                 OK                  Healthy         False             162 GB
</pre>
Et réciproquement, trouver de quel Storage Pool un disque virtuel est issue
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ccffff"><span style="color: #e0ffff">Get-VirtualDisk</span> </span><span style="color: #ffe4b5">-FriendlyName </span><span style="color: #db7093">'Mirror-1'</span> |<span style="color: #e0ffff"> Get-StoragePool </span>
FriendlyName      OperationalStatus      HealthStatus        IsPrimordial    IsReadOnly
------------      -----------------      ------------        ------------    ----------
OnePool           OK                     Healthy             False           False
</pre>
Et enfin, lister les disques physiques participant au disque virtuel
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk </span><span style="color: #ffe4b5">-FriendlyName </span><span style="color: #db7093">'Mirror-1' </span>|<span style="color: #e0ffff"> Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk4     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
</pre>
On trouvera aussi d'autres commandes dans le même scope mais dont le but est de créer, modifier, supprimer. Elles sont bien documentées dans technet.
<h2>LA PANNE</h2>
Supposons maintenant qu’un des disques a eu un problème matériel et a été supprimé du SAN, par exemple. Le Server Manager devrait présenter une interface telle que:

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-01_LaPanne.png"><img width="300" height="135" class="alignnone size-medium wp-image-3725" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-01_LaPanne-300x135.png" /></a>

On note que le Storage Pool <strong>OnePool</strong> est en état <strong>Degraded</strong>
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-StoragePool </span><span style="color: #ffe4b5">-FriendlyName </span><span style="color: #db7093">'OnePool'</span>
FriendlyName      OperationalStatus      HealthStatus        IsPrimordial    IsReadOnly                 
------------      -----------------      ------------        ------------    ----------                 
OnePool           Degraded               Warning             False           False                      
</pre>
En détaillant les disques physiques du pool on retrouve un peu plus d’informations :
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-StoragePool </span><span style="color: #ffe4b5">-FriendlyName </span><span style="color: #db7093">'OnePool' </span>| <span style="color: #e0ffff">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk-1    False                  Lost Communication  Warning         Manual-Select     126.25 GB
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
</pre>
On observe au passage que le disque désormais manquant a changé de <span style="font-family: courier new;font-size: 110%">FriendlyName</span> : Il est passé de <span style="font-family: courier new;font-size: 110%">PhysicalDisk4</span> à <span style="font-family: courier new;font-size: 110%">PhysicalDisk-1</span>.

De même tous les disques virtuels qui avaient des données sur ce disque physique passent en statut Incomplete, on peut le voir par l’interface graphique, et en commandes powershell.
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffff99"><span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-1'</span></span>
FriendlyName      ResiliencySettingName  OperationalStatus   HealthStatus    IsManualAttach     Size
------------      ---------------------  -----------------   ------------    --------------     ----
Mirror-1          Mirror                 Incomplete          Warning         False              100 GB
</pre>
On peut également voir le disque physique en faute dans le disque virtuel par l’interface graphique (notre cas est trivial) en faisant un click-droit <strong>Properties</strong> sur le disque virtuel:

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-02-Properties.png"><img width="300" height="217" class="alignnone size-medium wp-image-3726" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-02-Properties-300x217.png" /></a>

<span style="color: #ee82ee"><a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-03-Properties.png"><img width="300" height="143" class="alignnone size-medium wp-image-3735" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-03-Properties-300x143.png" /></a></span>
<h2>LA REPARATION</h2>
<h3>PREMIERE ETAPE : Passer le disque physique en mode Retired</h3>
Quand un disque physique est passé en mode Retired, il cesse de recevoir de nouvelles données, et les données ne seront écrites que sur les disques qui restent disponibles. C’est la première chose à faire avant de supprimer un disque, et cette opération se fait en Powershell.

Il y a plusieurs façons de sélectionner le disque : Par son <strong>FriendlyName</strong>, par son <strong>HealthStatut</strong>, etc. Dans notre cas, on va le faire par <strong>FriendlyName</strong>
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-PhysicalDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'PhysicalDisk-1'</span> | <span style="color: #e0ffff">Set-PhysicalDisk</span> <span style="color: #ffe4b5">-Usage</span> <span style="color: #ff99cc">Retired</span>
PS C:\&gt;
</pre>
Et on peut voir le statut modifié dans l’interface graphique

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-04-Retired.png"><img width="300" height="93" class="alignnone size-medium wp-image-3745" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-04-Retired-300x93.png" /></a>

Et en Powershell
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-PhysicalDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'PhysicalDisk-1'</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage              Size
------------      -------                -----------------   ------------    -----              ----
PhysicalDisk-1    False                  Lost Communication  Warning         Retired            126.25 GB
</pre>
<h3>DEUXIEME ETAPE : Ajouter un disque de remplacement</h3>
Avant de faire une réparation il faut s’assurer qu’elle puisse être faite. Si les disques virtuels n’utilisaient pas toute la place, ça se ferait mais la plupart du temps, il n’y a plus de place disponible dans le Storage Pool : On ajoute donc un disque physique au storage pool en faisant un click droit sur le pool et <strong>Add Physical Disk…</strong> pour sélectionner un disque au préalable déjà disponible sur le serveur et initialisé en <strong>GPT</strong>.

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-05-AddPhysicalDisk3.png"><img width="300" height="94" class="alignnone size-medium wp-image-3785" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-05-AddPhysicalDisk3-300x94.png" /></a>
<h3>TROISIEME ETAPE : La réparation ?</h3>
On pourrait légitimement penser qu’une réparation devrait être faisable à ce moment-là.

Allons-y par l’interface graphique. Click droit sur le disque virtuel <strong>Repair Virtual Disk</strong>

<strong><a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-06-RepairVirtualDisk.png"><img width="300" height="138" class="alignnone size-medium wp-image-3795" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-06-RepairVirtualDisk-300x138.png" /></a></strong>

Il semble ne rien se passer, allons-y par Powershell
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-1'</span> | <span style="color: #e0ffff">Repair-VirtualDisk</span> <span style="color: #ffe4b5">-AsJob</span>
Id                Name                   PSJobTypeName   State         HasMoreData     Location             Command
--                ----                   -------------   -----         -----------     --------             -------
99                CimJob47               CimJob          Running       True            WIN-CCQIEGC6GQS      Repair-VirtualDisk -AsJob

PS C:\&gt; <span style="color: #e0ffff">get-job</span> <span style="color: #ffe4b5">-Name</span> <span style="color: #db7093">'CimJob47'</span>
Id                Name                   PSJobTypeName   State         HasMoreData     Location             Command
--                ----                   -------------   -----         -----------     --------             -------
99                CimJob47               CimJob          Failed        True            WIN-CCQIEGC6GQS      Repair-VirtualDisk -AsJob
</pre>
Le job est en erreur sans plus de détails. Il faut malheureusement activer le tracing de spaceport et s’appuyer sur de outils internes pour exploiter ce tracing, mais en substance on retrouvera cette séquence :
<pre style="padding-left: 30px;font-family: courier new;font-size: 70%">Enter SpIoctlRepairSpace
Info  SpIoctlRepairSpace: Tagging space e7393ab7-5050-11e7-80c2-00155d011310 in pool e7393a8e-5050-11e7-80c2-00155d011310 for repair
Enter SpRepairPoolCallback
Info  SpRepairPoolCallback: Repairing space e7393ab7-5050-11e7-80c2-00155d011310 in pool e7393a8e-5050-11e7-80c2-00155d011310
Exit  SpRepairPoolCallback: Status = STATUS_SUCCESS
Error SpIoctlRepairSpace: Status = NTSTATUS=C0000461
</pre>
Le code <span style="font-family: courier new;font-size: 100%">C0000461</span> signifie <span style="font-family: courier new;font-size: 100%">STATUS_DISK_RESOURCES_EXHAUSTED</span>.

Ce tracing ne servira effectivement qu’aux gens du support (tracing et outils de traduction purement internes), mais il y a une autre façon de s’y retrouver en se rappelant que tout le storage pool est configuré comme <strong>Manual</strong>.
<h3>Resources Exhausted</h3>
“RESOURCES_EXHAUSTED” signifie qu’il n’y a pas de ressources suffisantes sur le disque pour faire la réparation. On parle bien ici d’un disque et non d’un pool, donc du disque virtuel. On ne parle pas du Storage Pool.

Souvenez-vous : Le disque virtuel est configuré pour utiliser 5 disques physiques et tous les disques physiques sont exploités au maximum. Par ailleurs, l’un des disques physiques est absent (l’anciennement PhysicalDisk4 renommé en PhysicalDisk-1). Il manque donc de la place dans le disque virtuel pour faire la réparation, car pour l’instant : On ne lui a pas dit qu’il pouvait utiliser le nouveau disque physique que nous venons d’ajouter (tout est en <strong>Manuel</strong>)
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-1'</span> | <span style="color: #e0ffff">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk-1    False                  Lost Communication  Warning         Retired           126.25 GB
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
</pre>
<h3>QUATRIEME ETAPE : Ajouter des ressources aux disques virtuels</h3>
Nous configurons les disques virtuels pour pouvoir utiliser le nouveau disque physique que nous venons d’ajouter.

Soit par l’interface graphique en faisant un click droit "<strong>Extend Virtual Disk</strong>" sur les disques virtuels et en ajoutant le nouveau disque sans changer la taille.

<em><strong><a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-07-ExtendVirtualDisk1.png"><img width="300" height="138" class="alignnone size-medium wp-image-3815" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-07-ExtendVirtualDisk1-300x138.png" /></a></strong></em>

Soit par powershell en utilisant la commande Add-PhysicalDisk: Auquel cas on pourra faire une boucle ou lancer chaque commande indépendemment.
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ff4500">$PhysicalDiskToAdd</span> = <span style="color: #e0ffff">Get-PhysicalDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'PhysicalDisk6'</span>
PS C:\&gt; <span style="color: #e0ffff">Add-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToAdd</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-1'</span>
PS C:\&gt; <span style="color: #e0ffff">Add-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToAdd</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-2'</span>
PS C:\&gt; <span style="color: #e0ffff">Add-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToAdd</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-3'</span>
PS C:\&gt;
</pre>
<strong>Note</strong>: $PhysicalToAdd peut très bien être une collection de disques également.

Toujours est-il que nos disques virtuels ont désormais le droit d’utiliser le nouveau disque physique, car on peut maintenant voir le <strong>PhysicalDisk6</strong> dans la liste des ressources disponibles au disque virtuel
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-1'</span> | <span style="color: #e0ffff">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk-1    False                  Lost Communication  Warning         Retired           126.25 GB
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk6     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
</pre>
<h3>CINQUIEME ETAPE : La réparation</h3>
On peut désormais soit faire un Repair dans l’interface graphique, soit le faire en commande powerhsell:
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-HealthStatus</span> <span style="color: #ee82ee">Warning</span> | <span style="color: #e0ffff">Repair-VirtualDisk</span> <span style="color: #ffe4b5">-AsJob</span>
Id     Name           PSJobTypeName   State         HasMoreData     Location             Command
--     ----           -------------   -----         -----------     --------             -------
178    CimJob87       CimJob          Running       True            WIN-CCQIEGC6GQS      Repair-VirtualDisk -AsJob

PS C:\&gt; <span style="color: #e0ffff">Get-job</span> CimJob87
Id     Name           PSJobTypeName   State         HasMoreData     Location             Command
--     ----           -------------   -----         -----------     --------             -------
178    CimJob87       CimJob          Running       True            WIN-CCQIEGC6GQS      Repair-VirtualDisk -AsJob
</pre>
Et au bout d’un moment le job se termine correctement.
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-job</span> CimJob87
Id     Name           PSJobTypeName   State         HasMoreData     Location             Command
--     ----           -------------   -----         -----------     --------             -------
178    CimJob87        CimJob         Completed     True            WIN-CCQIEGC6GQS      Repair-VirtualDisk -AsJob
</pre>
Les disques virtuels sont maintenant OK, mais le pool est toujours en <strong>Warning</strong> / <strong>Degraded</strong>.

<em><strong><a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-08-Warning.png"><img width="300" height="147" class="alignnone size-medium wp-image-3825" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-08-Warning-300x147.png" /></a></strong></em>
<h3>SIXIEME ETAPE : Le nettoyage</h3>
On commence par supprimer le disque manquant de la liste des ressources disponibles de chaque disque virtuel car pour l’instant ils sont toujours configurés pour utiliser le disque manquant (rien n’est <strong>Automatic</strong> quand on est en <strong>Manual</strong>)

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-09-MirrorProperties.png"><img width="300" height="194" class="alignnone size-medium wp-image-3835" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-09-MirrorProperties-300x194.png" /></a>

Ca doit se faire en PowerShell avec la commande Remove-PhysicalDisk
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ff4500">$PhysicalDiskToRemove</span> = <span style="color: #e0ffff">Get-PhysicalDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'PhysicalDisk-1'</span>
PS C:\&gt; <span style="color: #e0ffff">Remove-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToRemove</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-1'</span>
PS C:\&gt; <span style="color: #e0ffff">Remove-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToRemove</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-2'</span>
PS C:\&gt; <span style="color: #e0ffff">Remove-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToRemove</span> <span style="color: #ffe4b5">-VirtualDiskFriendlyName</span> <span style="color: #db7093">'Mirror-3'</span>
</pre>
Même remarque que pour la commande Add-PhysicalDisk : On peut fournir une collection de disques, et il y a moyen de faire tout cela dans une boucle.
On peut voir que le disque physique manquant ne fait plus partie des ressources disponibles pour les disques virtuels
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-1'</span> | <span style="color: #ffe4b5">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk6     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB

PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-2'</span> | <span style="color: #ffe4b5">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk6     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB 

PS C:\&gt; <span style="color: #e0ffff">Get-VirtualDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'Mirror-3'</span> | <span style="color: #ffe4b5">Get-PhysicalDisk</span>
FriendlyName      CanPool                OperationalStatus   HealthStatus    Usage             Size
------------      -------                -----------------   ------------    -----             ----
PhysicalDisk1     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk6     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk5     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk2     False                  OK                  Healthy         Manual-Select     126.25 GB
PhysicalDisk3     False                  OK                  Healthy         Manual-Select     126.25 GB
 
</pre>
On peut désormais supprimer le disque physique du pool
Soit par un clic droit "<strong>Remove Disk</strong>" sur le disque.

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-11-RemoveDisk.png"><img width="300" height="110" class="alignnone size-medium wp-image-3845" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-11-RemoveDisk-300x110.png" /></a>

Soit par la commande Powershell Remove-PhysicalDisk
<pre style="color: white;font-family: courier new;font-size: 80%;background-color: #012456">PS C:\&gt; <span style="color: #ff4500">$PhysicalDiskToRemove</span> = <span style="color: #e0ffff">Get-PhysicalDisk</span> <span style="color: #ffe4b5">-FriendlyName</span> <span style="color: #db7093">'PhysicalDisk-1'</span>
PS C:\&gt; <span style="color: #e0ffff">Remove-PhysicalDisk</span> <span style="color: #ffe4b5">-PhysicalDisks</span> <span style="color: #ff4500">$PhysicalDiskToRemove</span> <span style="color: #ffe4b5">-StoragePoolFriendlyName</span> <span style="color: #db7093">'OnePool'</span>
PS C:\&gt; 
</pre>
Et là, on est bien.

<a href="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-12.png"><img width="300" height="136" class="alignnone size-medium wp-image-3855" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/Storage-Space-Repair-12-300x136.png" /></a>
<h2>EN CONCLUSION</h2>
Un storage pool configuré en <strong>Manual</strong> nécessite de réaliser des opérations qui sont habituellement exécutées de façon transparente en <strong>Automatic</strong>

Les étapes à suivre sont les suivantes :
<ol>
 	<li>Passer le disque manquant en mode Retired</li>
 	<li>Ajouter un disque physique au pool</li>
 	<li>Ajouter le nouveau disque physique aux ressources utilisables par les disques virtuels</li>
 	<li>Lancer la réparation des disques virtuels</li>
 	<li>Supprimer le disque physique des ressources utilisables par les disques virtuels</li>
 	<li>Supprimer le disque physique du pool</li>
</ol>
<p style="text-align: right">Serge Gourraud
55 AA</p>]]></content:encoded>
    </item>
    <item>
      <title>Mais pourquoi le profil de mon collègue parti à la retraite l'année dernière n'est-il pas nettoyé par la "GPO - Delete user profiles older than 180 days" ?</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/mais-pourquoi-le-profil-de-mon-collegue-parti-a-la-retraite-lannee-derniere-nest-il-pas-nettoye-par-la-gpo-delete-user-profiles-older-than-180-days</link>
      <pubDate>Fri, 02 Jun 2017 06:48:30 GMT</pubDate>
      <dc:creator><![CDATA[Luc Talpe]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=3665</guid>
      <description><![CDATA[Sur les fermes de serveurs RDS, il est fréquent de purger les profils utilisateurs avec la GPO...]]></description>
      <content:encoded><![CDATA[Sur les fermes de serveurs RDS, il est fréquent de purger les profils utilisateurs avec la GPO "Delete User Profiles older than x days" ou d'implémenter des outils de purge basés sur la date de modification du fichier ntuser.dat (ruche) du profil des utilisateurs.

Depuis Windows 8/Windows 2012, le "Component Manager" (composant kernel gérant le registre) a introduit une optimisation qui peut mettre à mal ces stratégies de purge. Lorsque l'on accède à des clés, les "cellules" contenant ces clés sont lues depuis le fichier sur le disque et montées en mémoire (dans la "Non Paged Pool").

L'idée de cette optimisation est de regrouper les "cellules"  utilisées récemment pour limiter le nombre d'IO disque.

Pour mettre en oeuvre cette stratégie, chaque "cellule"  sera marquée comme :
<ul>
 	<li>chaude : cette cellule a été accédée depuis la réorganisation (par exemple suite à la lecture des valeurs associées à la clé contenue dans la cellule)</li>
 	<li>ou froide: cette cellule n'a pas été accédée depuis la dernière réorganisation. Lors du chargement de la ruche, si celle-ci n'a pas été réorganisée depuis 7 jours, alors la ruche est réorganisée et les cellules sont marquées comme froides.</li>
</ul>
Si plus tard, cette ruche est réutilisée et une des clés "froides" est accédée en lecture, la cellule associée va devenir "chaude". L'effet pervers est que la cellule est considérée comme modifiée et la ruche devient "Dirty". Lors de son déchargement,  <strong>la date du ficher ntuser.dat sera modifiée</strong>. Cette ruche ne sera alors plus candidat à l'application de la GPO !

Si sur votre serveur, votre antivirus ou vos outils de surveillance (par exemple via des classes WMI (Win32_Desktop,Win32_Environment,...) chargent les ruches utilisateurs pour des accès en lecture ) alors la date des fichiers ntuser.dat peut changer même si aucune modification "logique" n'a été faite dans le registre. Le profil de votre collègue parti restera sur le serveur !

Pour les courageux qui m'ont suivi jusqu'ici, je vais l'illustrer avec un exemple sur Windows 2012 R2, un fichier ntuser.dat "ancien". Nous allons
<ol>
 	<li>analyser l'état du fichier</li>
 	<li>charger/décharger la ruche sans modification</li>
 	<li>recharger la ruche, énumérer des clés et décharger la ruche</li>
</ol>
et observer les modifications sur la "ruche"

<em><strong>Etape 1 - Etat initial :</strong></em>
<ol>
 	<li>La date de dernière modification du fichier est le 5/18/2017 3:28 PM (18 mai)</li>
 	<li>La date de dernière réorganisation stockée dans le fichier est le 5/18/2017 3:28PM</li>
</ol>
<a href="https://msdnshared.blob.core.windows.net/media/2017/06/initial.png"><img width="619" height="143" class="size-full wp-image-3675" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/initial.png" /></a>

<strong><em>Etape 2 - Chargement/déchargement de la ruche sans aucun accès à des clés (via les commandes reg load , reg unload ) :</em></strong>
<ol>
 	<li>La date de <strong>dernière modification du fichier ne change pas</strong></li>
 	<li>La date de <strong>dernière réorganisation stockée dans le fichier change</strong> et devient 6/1/2017 3:21 PM (1 juin)</li>
 	<li>Nous constatons également que la valeur <strong>LastRun</strong> dans HKLM\System\CurrentControlSet\Control\SessionManager\Configuration Manager\Defrag indique bien qu'une défragmentation a eu lieu.</li>
 	<li>Si nous comparons le fichier avec une copie de l'état initial, nous constatons que 3 cellules sont devenues froides ( 02 =&gt; 00). On pourrait également vérifier que les autres cellules sont toutes froides (valeur 0 à l'offset 8 après la signature 6e 6b 20 00)</li>
</ol>
<a href="https://msdnshared.blob.core.windows.net/media/2017/06/AfterLoadUNload.png"><img width="974" height="890" class="size-full wp-image-3685 aligncenter" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/AfterLoadUNload.png" /></a>

<em><strong>Etape 3 - Nouveau chargement avec l'outil regedit puis énumérations de quelques clés et enfin déchargement de la ruche</strong></em>
<ol>
 	<li>La date de <strong>dernière modification du ficher </strong><strong>change : 6/1/2017 3/51 PM</strong></li>
 	<li>Pas de réorganisation car la ruche a déjà été réorganisée récemment et reste au : 6/1/2017 3:21 PM (1 juin)</li>
 	<li>Les cellules accédées sont marquées comme "chaudes" (00 ==&gt; 02 )</li>
</ol>
<a href="https://msdnshared.blob.core.windows.net/media/2017/06/RegeditEnum.png"><img width="981" height="652" class="size-full wp-image-3686 aligncenter" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/06/RegeditEnum.png" /></a>

&nbsp;

Conclusion :  si un composant effectue un "scan" en lecture de certaines ruches, depuis Windows  Seerver 2012,  ce scan peut perturber la prise en compte de vos stratégies de purge des profils utilisateurs.

&nbsp;

&nbsp;

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>Windows 10 : Déployer la dernière version de OneDrive avec MDT</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/windows-10-deployer-la-derniere-version-de-onedrive-avec-mdt</link>
      <pubDate>Fri, 12 May 2017 08:10:02 GMT</pubDate>
      <dc:creator><![CDATA[Ismaël L]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=3535</guid>
      <description><![CDATA[Suite à de nombreuses questions sur l'intégration de la dernière version de OneDrive dans une image...]]></description>
      <content:encoded><![CDATA[Suite à de nombreuses questions sur l'intégration de la dernière version de OneDrive dans une image de référence Windows 10, voici un exemple réalisé dans le cadre d'un déploiement avec Microsoft Deployment Toolkit (MDT).
<h3>Versions du client OneDrive dans Windows 10</h3>
Le client OneDrive est intégré dans Windows 10. Les mises à jour de OneDrive sont effectuées par le client OneDrive lui-même et non l'agent Windows Update.

La version du client OneDrive intégrée à Windows 10 dépend de la version de Windows 10 utilisée.

Voici quelques exemples :
<div style="text-align: center">
<table style="border-collapse: collapse" border="0"><colgroup> <col style="width: 312px" /> <col style="width: 312px" /></colgroup>
<tbody valign="top">
<tr style="background: white">
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-bottom: solid #9cc2e5 1.5pt;border-right: none">
<p style="text-align: center"><span style="font-size: 9pt"><strong>Version de Windows 10</strong></span></p>
</td>
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-left: none;border-bottom: solid #9cc2e5 1.5pt">
<p style="text-align: center"><span style="font-size: 9pt"><strong>Version du client
OneDrive intégré</strong></span></p>
</td>
</tr>
<tr style="background: #deeaf6">
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-bottom: solid #9cc2e5 0.25pt;border-right: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">Windows 10 1511</span></p>
</td>
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-left: none;border-bottom: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">17.5892.626</span></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-bottom: solid #9cc2e5 0.25pt;border-right: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">Windows 10 1607</span></p>
</td>
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-left: none;border-bottom: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">17.6381.405</span></p>
</td>
</tr>
<tr style="background: #deeaf6">
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-bottom: solid #9cc2e5 0.25pt;border-right: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">Windows 10 1703</span></p>
</td>
<td style="padding-left: 7px;padding-right: 7px;border-top: none;border-left: none;border-bottom: solid #9cc2e5 0.25pt">
<p style="text-align: center"><span style="font-size: 9pt">17.6816.313</span></p>
</td>
</tr>
</tbody>
</table>
</div>
Afin de connaître la dernière version du client ainsi que les changements apportés vous pouvez consulter l'article suivant :

<a href="https://support.office.com/en-us/article/New-OneDrive-sync-client-release-notes-845dcf18-f921-435e-bf28-4e24b95e5fc0">Notes de version du client OneDrive</a><span style="color: #0563c1;text-decoration: underline">
</span>

Note : Le client OneDrive utilisé dans Windows 10 correspond au client OneDrive <em>Next Generation Sync Client</em>.

<a href="https://support.office.com/en-us/article/Which-version-of-OneDrive-am-I-using-19246eae-8a51-490a-8d97-a645c151f2ba?ui=en-US&amp;rs=en-US&amp;ad=US">Which version of OneDrive am I using?</a>
<h3>Avantages de l'intégration de la dernière version du client OneDrive</h3>
L'intégration de la dernière version de OneDrive dans son master Windows 10 permet :
<ul>
 	<li>
<div>D'éviter le message d'erreur une mise à jour est nécessaire (<em>An update is required</em>)<em>
</em></div>
<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/05/051217_0807_Windows10D1.png" /><em>
</em></li>
 	<li>De bénéficier des derniers correctifs de OneDrive</li>
 	<li>De réaliser l'installation du client avec un compte administrateur</li>
</ul>
L'installation de OneDrive est une installation du type par-utilisateur. OneDrive est installé dans le profil utilisateur : %localappdata%\microsoft\OneDrive

En fonction des mises à jour de OneDrive, l'installation peut nécessiter des droits administrateurs. Dans ce cas, vous pouvez recevoir le message suivant : <em>Finish installing update – OneDrive needs your permission to finish installing an update</em>.

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/05/051217_0807_Windows10D2.png" />

Dans ce cas, il faut qu'un compte administrateur lance l'installation de OneDrive afin de mettre à jour certaines informations dans la partie ordinateur.
<h3>Configuration du client OneDrive lors de la première ouverture de session</h3>
Lors de la première ouverture de session de l'utilisateur, le programme OneDrivesetup.exe est exécuté afin d'installer le client OneDrive dans le profil de l'utilisateur. OneDriveSetup.exe est situé dans C:\Windows\System32 (OS 32 bits) et C:\Windows\SysWow64 (OS 64 bits).
<h3>Remplacement du programme d'installation OneDriveSetup</h3>
A priori, afin d'intégrer la dernière version de OneDriveSetup.exe dans son master, il suffirait de remplacer le fichier OneDriveSetup.exe par une nouvelle version. Cependant cette méthode n'est pas supportée :
<ul>
 	<li>Le fichier OneDriveSetup.exe est une ressource système protégée par Windows Resource Protection (TrustedInstaller) et changer les permissions n'est pas supporté.</li>
 	<li>Si toutefois vous modifiez les permissions et que le fichier a été remplacé par une nouvelle version, le fichier d'origine sera restauré dans le cadre d'une vérification des fichiers systèmes (exemple : SFC /scannow).</li>
</ul>
<h3>Intégrer OneDriveSetup.exe avec MDT</h3>
<ol>
 	<li>Télécharger la dernière version du client OneDrive : <a href="https://go.microsoft.com/fwlink/p/?linkid=844652">Téléchargement de la dernière version du client OneDrive pour Windows</a></li>
 	<li>
<div>Adapter l'exemple de script suivant : DeployOneDrive.cmd</div>
<pre><span style="font-family: Consolas;font-size: 10pt">REM Create OneDriveSetup Diretcory and copy latest OneDriveSetup file
</span><span style="font-family: Consolas;font-size: 10pt">mkdir C:\ProgramData\Microsoft\OneDriveSetup\
</span><span style="font-family: Consolas;font-size: 10pt">Xcopy "%~dp0OneDriveSetup.exe" C:\ProgramData\Microsoft\OneDriveSetup\ /Y
</span>
<span style="font-family: Consolas;font-size: 10pt">REM Load Default user registry to swap OneDriveSetup.exe Path, then Unload Registry
</span><span style="font-family: Consolas;font-size: 10pt">reg load HKLM\OneDriveSetup "C:\Users\Default\NTUSER.DAT"
</span><span style="font-family: Consolas;font-size: 10pt">reg add "HKLM\OneDriveSetup\Software\Microsoft\Windows\CurrentVersion\Run" /v "OneDriveSetup" /t REG_SZ /d "C:\ProgramData\Microsoft\OneDriveSetup\OneDriveSetup.exe /thfirstsetup" /f
</span><span style="font-family: Consolas;font-size: 10pt">reg unload "HKLM\OneDriveSetup"
 </span>
<span style="font-family: Consolas;font-size: 10pt">REM Kill Old Setup if running
</span><span style="font-family: Consolas;font-size: 10pt">Start /Wait taskkill /F /IM OneDriveSetup.exe /T
</span>
<span style="font-family: Consolas;font-size: 10pt">REM Start New Setup so it will run with Administrator account to update HKLM registries entries if needed
</span><span style="font-family: Consolas;font-size: 10pt">start /wait C:\ProgramData\Microsoft\OneDriveSetup\OneDriveSetup.exe /silent
</span></pre>
</li>
 	<li>Ajouter l'application dans MDT</li>
</ol>
Lors de la première ouverture de session d'un utilisateur, le programme OneDriveSetup.exe situé dans C:\ProgramData\Microsoft\OneDriveSetup sera exécuté et au bout de quelques minutes le client sera installé.]]></content:encoded>
    </item>
    <item>
      <title>WMIMon : Surveiller en temps réel l'activité liée à WMI sur votre serveur</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/wmimon-surveiller-en-temps-reel-lactivite-liee-a-wmi-sur-votre-serveur</link>
      <pubDate>Fri, 05 May 2017 14:11:30 GMT</pubDate>
      <dc:creator><![CDATA[Luc Talpe]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=3496</guid>
      <description><![CDATA[Le  "channel" Microsoft-Windows-WMI-Activity/Trace (qui n'est pas activé par défaut) vous permet de...]]></description>
      <content:encoded><![CDATA[Le  "channel" Microsoft-Windows-WMI-Activity/Trace (qui n'est pas activé par défaut) vous permet de voir l'activité WMI sur votre machine. Néanmoins, il n'est pas très facilement exploitable:
<ul>
 	<li>Il est possible par exemple de connaître le PID du processus client qui a fait la requête mais il n'est pas possible de connaître son nom.</li>
 	<li>On ne peut isoler facilement l'activité lié à un processus client particulier, à un "namespace" particulier  ou sur certaines requêtes.</li>
</ul>
Pour pallier à cet inconvénient, j'ai développé un petit outil (WMIMON.exe) qui va permettre en temps réel l'activité de votre serveur. Il sera possible de filtrer ses sorties afin de ne visualiser que l'activité qui nous intéresse.

J'ai mis à disposition le projet et les binaires  sur  <a href="https://github.com/luctalpe/WMIMon">github.com/luctalpe/WMIMon</a>

N'hésitez pas à l'utiliser!

Il pourra vous permettre :
<ul>
 	<li>de déterminer quel outil/utilisateur/machine et quelles requêtes génère la charge CPU liée à WMI ( par exemple sur les processus WMIPRVSE.EXE)</li>
 	<li>de comprendre l'activité WMI générée faites par un composant que vous devez "troubleshooter".</li>
 	<li>Executer un script powershell lorsqu'une erreur WMI est retournée</li>
 	<li>...</li>
</ul>
<a href="https://msdnshared.blob.core.windows.net/media/2017/05/WMIMon1.png"><img width="1009" height="251" class="aligncenter size-full wp-image-3507" alt="wmimon" src="https://msdnshared.blob.core.windows.net/media/2017/05/WMIMon1.png" /></a>]]></content:encoded>
    </item>
    <item>
      <title>Configurer les stratégies de groupe (GPO) Windows Update dans Windows 10</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/configurer-les-strategies-de-groupe-gpo-windows-update-dans-windows-10</link>
      <pubDate>Tue, 11 Apr 2017 16:31:06 GMT</pubDate>
      <dc:creator><![CDATA[Ismaël L]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=2445</guid>
      <description><![CDATA[Les stratégies de configuration du client Windows Update sont nombreuses. Configurées...]]></description>
      <content:encoded><![CDATA[Les stratégies de configuration du client Windows Update sont nombreuses. Configurées incorrectement, le client Windows Update peut, par exemple, installer toutes les mises à jour (même non approuvées), ou le contraire, ne plus installer de mises à jour.
Cet article présente différents scénarios de déploiement des mises à jour Windows 10 dans un environnement d'entreprise afin de configurer correctement les stratégies de groupe pour le client Windows Update.
<ul style="margin-left: 54pt">
 	<li>Types de mises à jour pour Windows 10</li>
 	<li>Mises à jour déployées par Windows Update</li>
 	<li>Mises à jour déployées par Windows Update for Business</li>
 	<li>Mises à jour déployées par WSUS</li>
 	<li>Mises à jour des applications du Windows Store</li>
 	<li>Restreindre les options de l'interface du client Windows Update</li>
 	<li>Restreindre l'accès aux serveurs Windows Update sur Internet</li>
 	<li>Incompatibilités des stratégies Windows Update</li>
</ul>
<em>Note : cet article s'applique à Windows 10 1607 et Windows 10 1703
</em>
<h2>Types de mises à jour pour Windows 10</h2>
Pour Windows 10 il y a 2 grandes catégories de mises à jour :
<h3>Les mises à jour de qualité (<em>Quality updates</em>)</h3>
Cette catégorie de mises à jour correspond aux <strong>correctifs de sécurité et fiabilité</strong> disponibles pour une version de Windows 10. La mise à jour est diffusée via Windows Update, WSUS ou le catalogue Windows Update. Cette mise à jour est généralement publiée au format Microsoft Update (MSU).
<p style="margin-left: 18pt">Exemple de mises à jour de qualité pour Windows 10</p>

<ul style="margin-left: 54pt">
 	<li>Mise à jour cumulative pour Windows 10</li>
 	<li>Mise à jour pour Windows 10 (Servicing Stack)</li>
 	<li>Mise à jour pour Adobe Flash Player pour Windows 10</li>
</ul>
Vous pouvez retrouver l'ensemble des notes de publication des mises à jour cumulative de Windows 10 ici : <a target="_top" href="http://windows.microsoft.com/en-us/windows-10/update-history-windows-10">Windows 10 Update History</a>
<h3>Les mises à jour de fonctionnalités (<em>Features update</em>)</h3>
Cette catégorie de mises à jour correspond aux nouvelles versions de Windows 10 qui sont publiées environ 2 à 3 fois par an. Cette mise à niveau vers une nouvelle build de Windows 10 est diffusée via Windows Update, WSUS et en téléchargement sur Microsoft.com. Le format de cette mise à niveau est en ESD pour Windows Update/WSUS et en .ISO (téléchargement manuel de l'image ISO).
<p style="margin-left: 35pt">Exemples de mises à jour de fonctionnalités :</p>

<ul style="margin-left: 71pt">
 	<li>Windows 10 1511 (Build 10586)</li>
 	<li>Windows 10 1607 (Build 14393)</li>
 	<li>Windows 10 1703 (Build 15063)</li>
</ul>
<h2>Mises à jour déployées avec Windows Update</h2>
Par défaut, le client Windows Update est configuré pour télécharger et installer les mises à jour automatiquement depuis Windows Update.

Lorsqu'une mise à jour de qualité est disponible, celle-ci est automatiquement installée à partir des serveurs de Windows Update.

Lorsqu'une mise à jour de fonctionnalités est disponible pour l'ordinateur, l'installation est proposée à l'utilisateur. La mise à jour de fonctionnalités est installée à partir des serveurs Windows Update. L'utilisateur va recevoir des rappels indiquant qu'il doit valider la plage horaire d'installation.

Dans le modèle <em>Windows as a Service</em>, la nouvelle <em>build</em> de Windows 10 est publiée dans le canal de diffusion <em>Current Branch</em>. Elle est ensuite diffusée dans le canal <em>Current Branch for Business (CBB)</em> environ 4 mois après la mise à disposition de la <em>Current Branch</em>. Le canal de diffusion <em>Current Branch for Business</em> est destiné aux entreprises et nécessite d'utiliser <em>Windows Update for Business</em>.
<h2>Mises à jour déployées avec Windows Update for Business</h2>
Windows Update for Business est une variante de Windows Update pour les postes qui installent les mises à jour directement à partir de Windows Update (Internet). Windows Update for Business permet à l'administrateur système de décaler l'installation des mises à jour de qualité ou de fonctionnalités. Les téléchargements et installation sont effectués depuis les serveurs de Windows Update, il est donc impératif d'avoir accès aux serveurs de Windows Update pour utiliser Windows Update for Business.

Par exemple, dans Windows 10 1703, il est possible de différer l'installation des mises à jour de qualité (correctif de fiabilité et sécurité) pendant 30 jours et l'installation des mises à jour de fonctionnalités jusqu'à 1 an.

Windows Update for Business est automatiquement activé dans les cas suivants :
<ul>
 	<li>L'utilisateur coche la case <em>Différer les mises à jour</em> ou sélectionne le canal de diffusion <em>Current branch for Business
</em></li>
 	<li>
<div>L'une des stratégies suivantes est activée :</div>
<ul>
 	<li>Select when Feature Updates are received</li>
 	<li>Select when Quality Updates are received</li>
</ul>
</li>
</ul>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl1.png" /></p>
A partir de Windows 10 1607, la stratégie de groupe <em>Select when Feature Updates are received</em> indique le canal de diffusion au lieu de l'option <em>Defer feature updates</em> :
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl2.png" /></p>
<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl3.png" />

<span style="color: #1f4d78"><em>Impact de l 'activation de Windows Update for Business
</em></span>

<strong>Lorsque Windows Update for Business est activé, les mises à jour sont uniquement installées à partir des serveurs Windows Update.
Si un paramètre indique que le poste est géré par un serveur WSUS, celui-ci est tout simplement ignoré. Le poste va recevoir toutes les mises à jour disponibles à partir de Windows Update (Internet).
</strong>

Vous trouverez dans l'article suivant les différentes clés de registre utilisées par Windows Update for Business ainsi que les changements entre les versions 1607 et 1703 : <a href="https://technet.microsoft.com/en-us/itpro/windows/update/waas-configure-wufb">Configurer Windows Update for Business</a>
<h2>Mises à jour déployées via Windows Server Updates Services (WSUS)</h2>
Vous pouvez déployer les mises à jour de qualité et de fonctionnalités à l'aide de votre environnement WSUS.

Lorsque les postes sont gérés par WSUS, c'est l'administrateur qui décide quand est-ce que les mises doivent être déployées. Le client Windows Update télécharge la liste des mises à jour installer à partir du serveur WSUS.

L'administrateur a le contrôle sur les mises à jour à installer ou à refuser.

Par exemple, tant que la version Windows 10 1703 n'est pas approuvée pour un groupe d'ordinateur, la <em>build</em> 1703 ne s'installera pas pour ce groupe d'ordinateur.

<a href="https://technet.microsoft.com/en-us/itpro/windows/update/waas-manage-updates-wsus">Configurer le déploiement des mises à jour avec WSUS</a>
<h3>Rechercher des mises à jour depuis Windows Update même lorsque le poste est géré par WSUS</h3>
Si l'utilisateur du poste de travail est aussi administrateur de son poste, par défaut il a la possibilité de cliquer sur le lien <em>Rechercher des mises à jour depuis Windows Update</em>. La recherche des mises à jour est alors effectuée depuis Windows Update et toutes les mises à jour manquantes seront installées.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl4.png" /></p>
<span style="color: #1f4d78"><em>Important
</em></span>

<strong>Lorsque votre environnement est géré par WSUS, il ne faut pas configurer les GPO de Windows Update for Business : Différer les mises à jour de qualité/fonctionnalités, elles sont incompatibles dans un environnement géré par WSUS.
</strong>

<strong>Si l'une des GPO est activée, le serveur WSUS est ignoré et le téléchargement est effectuée depuis Windows Update. Il est donc conseillé de laisser les GPO Différer les mises à jour de qualité/fonctionnalités dans l'état Non Configuré.
</strong>
<h2>Mises à jour des applications du Windows Store</h2>
Les mises à jour des applications du Windows Store sont effectuées automatiquement depuis les serveurs de Windows Update.

<strong>Il n'est pas possible d'effectuer les mises à jour du Windows Store à partir de WSUS.
</strong>

Si vous souhaitez mettre à jour les applications du Windows Store vous devez autoriser l'accès à Windows Update sur vos serveurs proxy.

Vous pouvez désactiver la mise à jour automatique des applications du Windows Store à l'aide de la stratégie suivante : <em>Turn off automatic Download and Install of Updates.</em>
<h2>Restreindre les options de l'interface du client Windows Update</h2>
Dans Windows 10, les options de configuration du client Windows Update ont été intégrés dans l'application Paramètres.

Dans Windows 10 1703, les éléments gérés par une stratégie (GPO/MDM) sont indiqués à l'aide d'un astérisque rouge.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl5.png" /></p>
Lorsque le client Windows Update est configuré pour chercher les mises à jour à partir de WSUS, le lien <em>Check online for updates from Microsoft Update</em> apparaît quand la recherche vers le serveur WSUS est terminé. L'utilisateur a alors la possibilité de rechercher des mises à jour à partir de Windows Update/Microsoft Update.

Une autre restriction est disponible à partir de Windows 10 1607 (14393.447) afin d'empêcher l'utilisateur de rechercher et installer les mises à jour. Vous pouvez désactiver le bouton <em>Check for Updates</em> à l'aide de la stratégie suivante :
<ul>
 	<li>Nom : <em>Remove access to use all Windows Update Features</em></li>
 	<li>Emplacement : Computer\Administrative templates\Windows Components\Windows Update</li>
</ul>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl6.png" /></p>
<p style="text-align: left">Note : Cette stratégie désactive uniquement le bouton Check for updates, l'installation automatique des mises à jour (en arrière-plan) n'est pas désactivée.</p>

<h2>Restreindre l'accès aux serveurs Windows Update sur Internet</h2>
Dans un environnement géré par WSUS/SCCM, les administrateurs souhaitent généralement contrôler l'installation des mises à jour dans WSUS/SCCM. Cependant, l'utilisateur peut quand même chercher les mises à jour à partir des serveurs Windows Update en cliquant sur le lien <em>Check online for updates from Microsoft Update</em>.

Afin de bloquer l'accès aux serveurs Windows Update, il est possible de configurer l'une des stratégies suivantes :
<div>
<table style="border-collapse: collapse" border="0"><colgroup> <col style="width: 566px" /> <col style="width: 474px" /> <col style="width: 480px" /> <col style="width: 265px" /> <col style="width: 351px" /> <col style="width: 427px" /></colgroup>
<tbody valign="top">
<tr style="height: 49px;background: #4472c4">
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: solid #4472c4 0.5pt;border-bottom: solid #4472c4 0.5pt;border-right: none"><span style="color: white;font-size: 9pt"><strong>Nom</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: none;border-bottom: solid #4472c4 0.5pt;border-right: none"><span style="color: white;font-size: 9pt"><strong>Emplacement</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: none;border-bottom: solid #4472c4 0.5pt;border-right: none"><span style="color: white;font-size: 9pt"><strong>Description</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: none;border-bottom: solid #4472c4 0.5pt;border-right: none"><span style="color: white;font-size: 9pt"><strong>Accès à WU/MU</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: none;border-bottom: solid #4472c4 0.5pt;border-right: none"><span style="color: white;font-size: 9pt"><strong>Accès au Windows Store</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: solid #4472c4 0.5pt;border-left: none;border-bottom: solid #4472c4 0.5pt;border-right: solid #4472c4 0.5pt"><span style="color: white;font-size: 9pt"><strong>Lien <em>Check Online for updates</em></strong></span></td>
</tr>
<tr style="height: 49px">
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: solid #8eaadb 0.5pt;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt"><strong>Turn Off Access to all Windows Update Feature </strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">System\Internet Communication Management\Internet Communication settings</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Bloque l'accès aux services Windows Update et Microsoft Update</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Non</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Oui</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Supprimé</span></td>
</tr>
<tr style="height: 49px">
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: solid #8eaadb 0.5pt;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt"><strong>Do not connect to any Windows Update Internet locations</strong></span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Windows Components\Windows Update</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Bloque l'accès à tous les servies Windows Update disponibles sur Internet</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Non</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Non</span></td>
<td style="padding-left: 9px;padding-right: 9px;border-top: none;border-left: none;border-bottom: solid #8eaadb 0.5pt;border-right: solid #8eaadb 0.5pt"><span style="font-size: 9pt">Supprimé</span></td>
</tr>
</tbody>
</table>
</div>
Note : La stratégie <em>Do not connect to any Windows Update Internet locations</em> ne fonctionne que si la stratégie <em>Specify Intranet Microsoft Update service location</em> est configurée.

En configurant l'une de ces stratégies, le client Windows ne pourra pas installer de mises à jour à partir des serveurs de Windows Update. Aussi, ces stratégies ne sont pas compatibles avec les stratégies de <em>Windows Update for Business</em> (Defer Quality/Features updates).
<h4>Conséquences de la restriction d'accès aux serveurs Windows Update</h4>
Lorsque l'accès à Windows Update est bloqué, la liste des <em>Capabilites (Features On Demand v2)</em> n'est pas disponible dans l'application Paramètres.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl7.png" /></p>
Pour ajouter les Features On Demand v2, vous devez approuver les mises à jour sur votre serveur WSUS.
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl8.png" /></p>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl9.png" />
<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl10.png" /></p>
Dans Windows 10, lorsque le client aura besoin de télécharger une fonctionnalité (Pack de langue, écriture manuscrite ou voix), il fera la recherche sur le serveur WSUS.

<em>Note : Le déploiement des Features On Demand v2 n'est pas encore supporté par <a href="https://configurationmanager.uservoice.com/forums/300492-ideas/suggestions/17481919-please-forward-internal-links-for-features-on-dema">SCCM</a>.
</em>
<h2>Incompatibilités des stratégies Windows Update</h2>
Comme indiqué dans les paragraphes ci-dessus, le fait de configurer plusieurs stratégies peut entraîner des problèmes pour l'installation des mises à jour. L'illustration indique le résultat lorsque différentes GPO sont appliquées en même temps.
<h4>Scénario 1 :</h4>
<ul>
 	<li>Le client Windows Update est configuré pour rechercher les mises à jour à partir de WSUS.</li>
 	<li>Les stratégies <em>Windows Update for Business (Defer Updates)</em> sont activées.</li>
</ul>
<strong>Résultat</strong> : La recherche des mises à jour à partir du serveur WSUS est ignorée, toutes les mises à jour sont installées à partir des serveurs Windows Update sur Internet. (Intersection WUfB et WSUS dans l'illustration)
<h4>Scénario 2 :</h4>
<ul>
 	<li>Le client Windows Update est configuré pour rechercher les mises à jour à partir de WSUS.</li>
 	<li>La stratégie <em>Do not connect to any Windows Update Internet locations</em> est activée.</li>
</ul>
<strong>Résultat</strong> : Les mises à jour sont effectuées à partir du serveur WSUS, mais l'installation/mises à jour des applications du Windows Store est désactivée. (Intersection WSUS et Disable WU Access dans l'illustration)
<h4>Scénario 3 :</h4>
<ul>
 	<li>Le client Windows Update est configuré pour rechercher les mises à jour à partir de WSUS.</li>
 	<li>Les stratégies Windows Update for Business sont activées.</li>
 	<li>La stratégie <em>Do not connect to any Windows Update Internet locations </em>ou la stratégie <em>Turn off all access to Windows Update Feature</em> est activée.</li>
</ul>
<strong>Résultat</strong> : Le client Windows Update va tenter de rechercher les mises à jour sur les serveurs Windows Update, mais une stratégie empêche l'utilisation des services Windows Update. Il n'est pas possible d'effectuer la recherche, le téléchargement et l'installation des mises à jour. (Intersection WUfB, WSUS, Disable WU Access dans l'illustration).
Dans ce cas, vous pouvez recevoir les erreurs suivantes :
<ul style="margin-left: 54pt">
 	<li>0x8024500c WU_E_REDIRECTOR_CONNECT_POLICY.</li>
 	<li>0x8024002e WU_E_WU_DISABLED.</li>
</ul>
<p style="text-align: center"><img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/04/041117_1627_Configurerl11.png" /></p>]]></content:encoded>
    </item>
    <item>
      <title>Impossible de changer le mot de passe d’un utilisateur via mstsc lorsque le NLA est activé sur une ferme RDS… Et c’est normal…</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/impossible-de-changer-le-mot-de-passe-dun-utilisateur-via-mstsc-lorsque-le-nla-est-active-sur-une-ferme-rds-et-cest-normal</link>
      <pubDate>Fri, 03 Feb 2017 15:56:54 GMT</pubDate>
      <dc:creator><![CDATA[Cédric Naudy]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=2385</guid>
      <description><![CDATA[Nous avons vu arriver beaucoup de demandes d'utilisateurs qui recherchaient la possibilité de...]]></description>
      <content:encoded><![CDATA[Nous avons vu arriver beaucoup de demandes d'utilisateurs qui recherchaient la possibilité de changer leur mot de passe (expiré par exemple) lorsqu'ils se connectent à leur session remote desktop sur une ferme RDS en utilisant le client mstsc.exe.

Lorsque le « Network Layer Authentication » (NLA) est activé sur une ferme Remote Dekstop Services (RDS), si un utilisateur se connecte pour la 1ere fois et qu'il doit changer son mot de passe, le message d'erreur suivant se produit :

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/02/020317_1556_Impossibled1.png" />

L'utilisateur n'a pas la possibilité de changer son mot de passe.

Si le NLA n'est pas activé sur la ferme, alors, il a la possibilité de changer son mot de passe lorsqu'il arrive sur l'écran de logon de Windows :

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/02/020317_1556_Impossibled2.png" />

En cliquant OK, on retrouve l'UI de changement de mot de passe.

<img alt="" src="https://msdnshared.blob.core.windows.net/media/2017/02/020317_1556_Impossibled3.png" />

<strong>Ce comportement est normal.
</strong>

Le NLA délègue les informations d'authentification de l'utilisateur à travers un SSP (Security Support Provider) présent côté client : CredSSP.
Cela provoque un prompt de l'utilisateur avant même de créer la session sur le serveur RDS.
<span style="text-decoration: underline">Malheureusement, la technologie CredSSP ne propose pas de fonctionnalité de changement de mot de passe</span> (si le mot de passe est expiré ou doit être changé au logon suivant).

L'utilisation du NLA (et donc de credssp) est conseillée par Microsoft.
En effet, lorsque le NLA est activé, il y a des gains de performance puisque l'on échoue éventuellement avant de créer une session sur le serveur RDS.
D'un point de vue sécurité, cela permet aussi, entre autres, d'être moins susceptible de subir des attaques de type déni de service etc...

<strong>Comment changer mon mot de passe quand le NLA est activé ?
</strong>

Si vous devez faire changer un mot de passe pour un utilisateur, dans RDS, il est possible de le faire en utilisant le portail rdweb installé avec le role RD WebAccess.

Il est possible que cette fonctionnalité ne soit pas activée.
Le blog suivant montre comment activer le changement de mot de passe sur le site rdweb:

<a href="https://social.technet.microsoft.com/wiki/contents/articles/10755.windows-server-2012-rds-enabling-the-rd-webaccess-expired-password-reset-option.aspx" title="https://social.technet.microsoft.com/wiki/contents/articles/10755.windows-server-2012-rds-enabling-the-rd-webaccess-expired-password-reset-option.aspx"><span style="font-family: Segoe UI;font-size: 10pt">https://social.technet.microsoft.com/wiki/contents/articles/10755.windows-server-2012-rds-enabling-the-rd-webaccess-expired-password-reset-option.aspx</span></a><span style="color: black;font-family: Segoe UI;font-size: 10pt">
</span>

Si l'utilisation du RDWeb n'est pas possible, on peut utiliser d'autres moyens pour changer le mot de passe :

Outlook Web Access, via une machine jointe au domaine, etc...]]></content:encoded>
    </item>
    <item>
      <title>Forte activité CPU dans le processus SVCHOST  hébergeant le service WinRM sur un controleur de domaine</title>
      <link>https://docs.microsoft.com/archive/blogs/windowsinternals/forte-activite-cpu-dans-le-processus-svchost-hebergeant-le-service-winrm-sur-un-controleur-de-domaine</link>
      <pubDate>Wed, 11 Jan 2017 12:58:43 GMT</pubDate>
      <dc:creator><![CDATA[Luc Talpe]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/windowsinternals/?p=2325</guid>
      <description><![CDATA[Dans ce post, je vais documenter un problème que j'ai rencontré de nombreuses fois avec des clients...]]></description>
      <content:encoded><![CDATA[Dans ce post, je vais documenter un problème que j'ai rencontré de nombreuses fois avec des clients . Ce problème très facilement évitable peut avoir des conséquences sur les performances de vos DCs.

<strong>Description du problème:</strong>

Sur un DC, vous constatez une forte activité CPU dans le processus SVCHOST hébergeant le service WinRM (Windows Remote Management). Lorsque le problème survient, la seule solution est de redémarrer le DC. Sur des DCs ayant peu de CPUs alloués (1 ou 2 ), ce problème peut empêcher les requêtes clientes  liées à Active Directory de s'exécuter dans un délai acceptable.

<strong>Cause:</strong>

Lors d'une tentative de connection sur un serveur  via WinRM (exemples: session powershell distante, utilisation du server manager, accès à WMI via WinRM, "Event Forwarding",...), WinRM va vérifier si l'utilisateur appartient au groupe WinRMRemoteWMIusers__ .  Un appel est alors fait par le service WinRM pour vérifier l'existence de ce groupe.

Ce groupe a été introduit dans la version 3 du "Windows Management Framework". Il est créé automatiquement à l'installation d'un serveur. Si le serveur est promu "Contrôleur de domaine" dans un nouveau domaine, alors le groupe sera "transféré" dans le domaine.  Si le serveur est intégré dans un <span style="text-decoration: underline">domaine exist<span style="color: #000000;text-decoration: underline">ant</span> </span>créé par la promotion d'un serveur avec une version <span style="text-decoration: underline">inférieure du Windows Management Framework</span>, alors le groupe WinRMRemoteWMIusers__  n'existera pas dans "Active Directory". La résolution de ce nom ne pourra se faire sur le DC et nécessitera des accès réseaux (vers les autres domaines)<span style="margin: 0px;font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #000000">.</span></span>

Si lors de cette résolution, une autre demande de connection arrive, celle-ci est bloquée en attente d'un  "s<span style="text-decoration: underline">pinlock détenu"</span> par la requête précédente. Malheureusement l'attente sur un spinlock est une attente active qui consomme du CPU. Sur des DCs avec peu de processeurs, cette attente ralentit la résolution initiale (il y a compétition entre plusieurs threads pour obtenir le processeur!) .

Si d’autres demandes de connexion WinRM arrivent, les threads créés pour satisfaire ces demandes vont également rentrer en compétition pour obtenir ce « spinlock ». Ces nouvelles demandes vont ainsi accroire la charge CPU. Tous ces threads (traitant les demandes de connexion) vont rentrer en compétition pour obtenir le CPU et vont empêcher la requête initiale de résolution du groupe WinRemoteUsers__  de se terminer. Les autres tâches du système seront également fortement impactées. Le serveur peut ainsi rapidement devenir inutilisable .

<strong>Moralité:</strong>

Pro-activement, vérifiez l'existence du groupe WinRMRemoteWMIusers__  dans chaque domaine et créez le si nécessaire (il n'a aucun membre par défaut)!

<a href="https://msdnshared.blob.core.windows.net/media/2017/01/wmiremoteusers.png"><img width="1284" height="550" class="aligncenter size-full wp-image-2345" alt="Groupe wmiremoteusers__" src="https://msdnshared.blob.core.windows.net/media/2017/01/wmiremoteusers.png" /></a>

<span style="font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #000000"><strong>Référence:  </strong> </span></span><a href="https://support.microsoft.com/en-us/kb/3118385"><span style="font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #0563c1">https://support.microsoft.com/en-us/kb/3118385</span></span></a><span style="font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #000000"> (Svchost.exe uses excessive CPU resources on a single-core Windows Server 2012 domain controller).</span></span>

<strong><span style="font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #000000"> Remarque: </span></span></strong><span style="font-family: 'Calibri',sans-serif;font-size: 11pt"><span style="color: #000000">Mes dossiers concernaient des serveurs Windows 2012 R2. Sur un serveur Windows 2016, le groupe n'est plus créé à l'installation mais dans le code la vérification est toujours présente! Donc continuez à appliquer ce conseil.</span></span>

&nbsp;

&nbsp;]]></content:encoded>
    </item>
  </channel>
</rss>