<?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>jimyarnold</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/jimyarnold/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/jimyarnold/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 04:05:41 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Adding usable removable storage to your Surface RT</title>
      <link>https://docs.microsoft.com/archive/blogs/jimyarnold/adding-usable-removable-storage-to-your-surface-rt</link>
      <pubDate>Tue, 17 Sep 2013 12:52:00 GMT</pubDate>
      <dc:creator><![CDATA[jimyarnold]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/jimyarnold/2013/09/17/adding-usable-removable-storage-to-your-surface-rt/</guid>
      <description><![CDATA[The Micro SD support on the Surface RT Windows 8.0, (Windows 8.1 has fixed this), has a few...]]></description>
      <content:encoded><![CDATA[<p style="text-align: left;">The Micro SD support on the Surface RT Windows 8.0, (Windows 8.1 has fixed this), has a few drawbacks. It's really designed as a go between for adding data in a sneaker-net fashion. If you want to view data on it you'll have to resort to file explorer as removable storage by design can't be added to libraries in Windows 8 making it invisible to Windows 8 modern apps.</p>
<p style="text-align: left;">There is a solution however! And it's based on a virtual hard disk or <strong>VHD</strong>.</p>
<p style="text-align: left;">I tested using junction points, (KWLINK), and I found it lacking as subfolders will not be seen by modern apps. I also looked into <a href="http://winsupersite.com/article/windows8/surface-tip-microsd-content-libraries-metro-apps-144658">Paul Thurrott's blog</a> and found too many people having issues both in the blog feedback and in our internal surfdisc DL which were related to indexing problems and folder naming conventions.</p>
<p style="text-align: left;">This is where a VHD can be used to create an index-able volume that can be used in libraries allowing media on the SD card to be seen in modern apps. It's an involved but simple process you'll only need to do once. Following are the steps:</p>
<h1 style="text-align: left;">Create a VHD</h1>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;"><strong>Get a Micro SD card</strong>. I went with a class 10 32GB mSD for about $50</p>
<p style="text-align: left;">Create a VHD using most of the space on the card. I say most and not all as you may want a couple GBs of free space so you can still use it to transfer data between devices easily, after all; it is removable storage.</p>
<ol style="text-align: left;">
<li>Insert your micro SD card into your surface, it's under the kick stand! See <strong>figure 1</strong></li>
<li>
<div>Launch Disk Management. (Easy way is drop your pointer to the bottom left corner and right-click:) See <strong>figure 2</strong></div>
<p>&nbsp;</p>
</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 462px;" /><col style="width: 258px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/8304.091713_1951_Addingusabl1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/8304.091713_5F00_1951_5F00_Addingusabl1.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/7658.091713_1951_Addingusabl2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/7658.091713_5F00_1951_5F00_Addingusabl2.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: left;"><strong>Figure 1</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 2</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">Once your card is recognized you'll see it's probably formatted as FAT32, <strong>figure 3</strong>. We'll need to reformat it as <strong>NTFS</strong> for the VHD creation to succeed.</p>
<p style="text-align: left; margin-left: 36pt;">&nbsp;&nbsp;</p>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 696px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-right: 7px; padding-left: 7px;">&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0601.fat32.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0601.fat32.png"><img style="float: left;" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0601.fat32.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0601.fat32.png" alt="" border="0" /></a></td>
</tr>
<tr>
<td style="padding-right: 7px; padding-left: 7px;">
<p style="text-align: center;"><strong>Figure 3</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Right click the partition and select <strong>Format</strong>:</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 696px;" /></colgroup>
<tbody valign="top">
<tr style="height: 348px;">
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/8032.091713_1951_Addingusabl5.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/8032.091713_5F00_1951_5F00_Addingusabl5.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: left;"><strong>Figure 4</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<ol style="text-align: left;">
<li>Choose your volume label name and format type, <strong>NTFS</strong>, <strong>figure 5</strong>, and once complete you'll see the resultant partition is now NTFS, <strong>figure 6</strong></li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 362px;" /><col style="width: 358px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/8154.091713_1951_Addingusabl6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/8154.091713_5F00_1951_5F00_Addingusabl6.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6825.091713_1951_Addingusabl7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6825.091713_5F00_1951_5F00_Addingusabl7.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p><strong>Figure 5</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 6</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>We're ready to create the VHD. From the <strong>Action</strong> menu in Disk Management select <strong>Create VHD</strong>, <strong>figure 7</strong>, and under '<strong>Location:</strong>' browse to your newly formatted NTFS volume on your Micro SD card and give it a name and size, <strong>figure 8</strong>. I called it "<strong>SDVHD.VHD</strong>" and gave it 28GB leaving a couple GBs for allowing me to sneaker-net data from other Windows PCs.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 360px;" /><col style="width: 360px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/2577.091713_1951_Addingusabl8.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/2577.091713_5F00_1951_5F00_Addingusabl8.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/1031.091713_1951_Addingusabl9.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/1031.091713_5F00_1951_5F00_Addingusabl9.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 7</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 8</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">Be patient as creation of the VHD will take some time, as much as 30 minutes or more depending on card size and speed<strong> </strong></p>
<p style="text-align: left; margin-left: 36pt;"><em><strong>Note: </strong>You can monitor the progress of the VHD creation in the status bar of Disk Management, <strong>figure 9</strong> </em></p>
<p style="text-align: left;">&nbsp;</p>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 452px;" /><col style="width: 268px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/3603.091713_1951_Addingusabl10.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/3603.091713_5F00_1951_5F00_Addingusabl10.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p>&nbsp;</p>
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/3531.091713_1951_Addingusabl11.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/3531.091713_5F00_1951_5F00_Addingusabl11.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 9</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 10</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Once the VHD is complete attach it via the <strong>Action Menu, figure 10</strong></li>
<li>Initialize the new disk by right clicking the volume and choose '<strong>Initialize Disk</strong>', <strong>figure 11</strong>, and choose the defaults in the following dialog, <strong>figure 12</strong></li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 338px;" /><col style="width: 382px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;">&nbsp;</p>
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/7840.091713_1951_Addingusabl12.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/7840.091713_5F00_1951_5F00_Addingusabl12.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p>&nbsp;</p>
<p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/0827.091713_1951_Addingusabl13.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/0827.091713_5F00_1951_5F00_Addingusabl13.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 11</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 12</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Create a simple volume by right clicking the new VHD and selecting '<strong>New Simple Volume</strong>' as in <strong>figure 13</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6644.091713_1951_Addingusabl14.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6644.091713_5F00_1951_5F00_Addingusabl14.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 13</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<ol style="text-align: left;">
<li>In the next three dialogs choose <strong>Next</strong> to specify Volume size and use defaults, <strong>figure 14</strong>, and assign it a drive letter, (no reason to not accept the defaults of drive letter E), <strong>figure 15</strong></li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 358px;" /><col style="width: 362px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;">&nbsp;</p>
<p>&nbsp;</p>
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/4024.091713_1951_Addingusabl15.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/4024.091713_5F00_1951_5F00_Addingusabl15.png" alt="" /></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/2474.091713_1951_Addingusabl16.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/2474.091713_5F00_1951_5F00_Addingusabl16.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 14</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 15</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">You have now completed creating a VHD on your Micro SD card, you attached the VHD and have it formatted and ready to accept media but we're not done yet! VHDs do <strong>NOT</strong> connect automatically after a reboot, we'll address that next.</p>
<h1 style="text-align: left;">Automate VHD Attachment at Boot-Up</h1>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">We can automate the attachment of the VHD at boot-up by using the <strong>task scheduler</strong> to run a command that involves use of DISKPART, let's create the command 1<sup>st</sup></p>
<p style="text-align: left;">Follow these steps to create the required command:</p>
<ol style="text-align: left;">
<li>Create a directory on the root of your C drive and call it something like '<strong>VHD</strong>' as used in the following examples</li>
<li>
<div>Create a text file that contains the DISKPART commands in <strong>figure 17</strong>. Notice that <strong>d:\sdvhd.vhd</strong> is the location of the VHD on the MicroSD card we created earlier. Save the file and name it '<strong>attachvhd.s'</strong></div>
<p><em><strong>Note:</strong> When using Notepad the default behavior is to save files with a 'TXT' extension, we don't want that extension. Simply use the '<strong>Save as type'</strong> pull down menu to select '<strong>All Files (*.*)</strong>' and we'll keep the '.s' extension, <strong>figure 16</strong> </em></p>
</li>
</ol>
<p style="text-align: left;">&nbsp;</p>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 360px;" /><col style="width: 360px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;" colspan="2">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/7585.091713_1951_Addingusabl17.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/7585.091713_5F00_1951_5F00_Addingusabl17.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;" colspan="2">
<p style="text-align: center;"><strong>Figure 16</strong></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: 14pt;">select vdisk file=d:\sdvhd.vhd </span></p>
<p><span style="font-size: 14pt;">attach vdisK</span></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: 14pt;">diskpart -s "c:\vhd\attachvhd.s" </span></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 17</strong></p>
</td>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 18</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Create another file in the same directory and include the content of <strong>figure 18</strong> and save it as "<strong>attachvhd.cmd</strong>" using the same technique to prevent adding the .txt extension to the file name as shown in <strong>figure 16.</strong></li>
<li>You can test the command by running from a command prompt to ensure your syntax is correct. You'll need to either disconnect your newly created VHD or simply reboot your Surface. Upon reboot you'll notice your new VHD drive using drive letter E is missing. Run the command from <strong>figure 18</strong> to confirm it reattaches.</li>
</ol>
<p style="text-align: left;">Now we're ready to automate attaching the VHD at boot-up using the <strong>Task Scheduler</strong>, here's how:</p>
<ol style="text-align: left;">
<li>
<div>Open <strong>Computer Management</strong> and navigate to <strong>Task Scheduler</strong> and right click selecting '<strong>Create Tas</strong>k' shown in <strong>figure 20 </strong>below.</div>
<p><em><strong>NOTE</strong>: <span style="font-size: 10pt;">(You can find Computer Management by hitting Windows Key + Q which allows you search for the applet as shown in <strong>figure 19</strong>:)</span></em></p>
</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/0741.091713_1951_Addingusabl18.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/0741.091713_5F00_1951_5F00_Addingusabl18.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 19</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/5811.091713_1951_Addingusabl19.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/5811.091713_5F00_1951_5F00_Addingusabl19.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 20</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>In the General tab of new task check "<strong>Run whether user is logged on or not</strong>" and tick "<strong>Run with highest privileges</strong>", this will prevent a dialog from User Access Control, UAC, at startup, as shown in <strong>figure 21</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6036.091713_1951_Addingusabl20.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6036.091713_5F00_1951_5F00_Addingusabl20.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 21</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Navigate to the <strong>Triggers</strong> tab and select '<strong>At startup</strong>' from the '<strong>Begin the task</strong>' setting and ensure '<strong>Enabled</strong>' is ticked as shown in <strong>figure 22</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/5635.091713_1951_Addingusabl21.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/5635.091713_5F00_1951_5F00_Addingusabl21.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 22</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Navigate to the '<strong>Actions</strong>' tab and under <strong>Action</strong> select '<strong>Start a program</strong>' and populate the '<strong>Program/script:</strong>' dialog with the command you created from figure 18, "<strong>attachvhd.cmd</strong>", you should be able to '<strong>Browse</strong>' to it, as shown in <strong>figure 23</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/8715.091713_1951_Addingusabl22.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/8715.091713_5F00_1951_5F00_Addingusabl22.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 23</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Navigate to the '<strong>Conditions</strong>' tab and under '<strong>Power</strong>' uncheck "<strong>Start the task only if the computer is on AC power</strong>" as shown in <strong>figure 24</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6607.091713_1951_Addingusabl23.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6607.091713_5F00_1951_5F00_Addingusabl23.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 24</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<ol style="text-align: left;">
<li>No need to make any changes in the <strong>Settings</strong> tab. Click the <strong>OK </strong>dialog to save your new task.</li>
<li>Test the scheduled task by rebooting your Surface and confirming your new scheduled task completed successfully. You can confirm by running <strong>file explorer</strong>, (Windows key + E), and confirm you see the newly created attached VHD as drive letter <strong>E</strong> by clicking on <strong>Computer</strong> as shown in <strong>figure 25</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/3021.091713_1951_Addingusabl24.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/3021.091713_5F00_1951_5F00_Addingusabl24.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 24</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left; margin-left: 36pt;"><em><strong>Notes:</strong> </em></p>
<ul style="text-align: left; margin-left: 72pt;">
<li><em>In <strong>figure 24</strong> above you'll notice the <strong>Media (E:)</strong> drive under <strong>Hard Disk Drives</strong> and you'll see your Micro SD under '<strong>Devices with Removable Storage</strong>' showing that it's near capacity, in red, as our VHD is consuming most of the SD card </em></li>
<li><em>If for some reason you do not get the expected result confirm your commands from <strong>figures 17</strong> and <strong>18</strong> are correct. You can run the <strong>attachvhd.cmd </strong>from a command prompt to confirm it attaches your VHD, if that works, examine your task to ensure its setup as specified in this document </em></li>
</ul>
<p style="text-align: left;">&nbsp;</p>
<h1 style="text-align: left;">Add VHD Folders to your Libraries</h1>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">Now that you've got a virtual hard disk on your micro SD you're ready create folders and add them to your libraries. This is required for Modern apps to see media stored on the VHD and is done via the File Explorer.</p>
<ol style="text-align: left;">
<li>Launch File Explorer, (<em>use windows key + E or run it from your desktop</em>) and create folders for each type of media you'd like include in your libraries. I created folders for pictures, videos and music as shown in <strong>figure 25</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6505.091713_1951_Addingusabl25.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6505.091713_5F00_1951_5F00_Addingusabl25.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 25</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Add the newly created folders to the appropriate library using the <strong>Library tools</strong> in File Explorer, the following will demonstrate the 'Music' Library. Click on Music below the '<strong>Libraries</strong>' folder in the left pane of File Explorer and the <strong>Library Tools</strong> on the title bar will revealed shown in <strong>Figure 26</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/4401.091713_1951_Addingusabl26.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/4401.091713_5F00_1951_5F00_Addingusabl26.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 26</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Click on the <strong>Library Tools</strong> shown on the title bar and select '<strong>Manage Library</strong>' from the ribbon and <strong>add</strong> the newly created Music folder on your VHD, the E drive as shown in <strong>figure 27</strong>.</li>
</ol>
<div style="text-align: left;">
<table style="border-collapse: collapse;" border="0"><colgroup><col style="width: 719px;" /></colgroup>
<tbody valign="top">
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/metablogapi/6320.091713_1951_Addingusabl27.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32-metablogapi/6320.091713_5F00_1951_5F00_Addingusabl27.png" alt="" /></p>
</td>
</tr>
<tr>
<td style="padding-left: 7px; padding-right: 7px;">
<p style="text-align: center;"><strong>Figure 27</strong></p>
</td>
</tr>
</tbody>
</table>
</div>
<p style="text-align: left;">&nbsp;</p>
<ol style="text-align: left;">
<li>Repeat steps 2 and 3 above for each folder from your VHD which you'd like to include in your library.</li>
<li>Add some media to the VHD folders and test the library configuration by running a modern app such as photos, video, music, etc. and confirm the media saved on your VHD is visible from within the modern app.</li>
</ol>
<h1 style="text-align: left;">Final Notes</h1>
<p style="text-align: left;">&nbsp;</p>
<ul style="text-align: left;">
<li>Now that you're micro SD contains a Virtual Hard Disk with folders which have been added to your libraries you need to ensure it remains inserted in the SD slot when your Surface is powered up. If you need to remove it to copy a file from another windows device ensure your Surface powered off, being asleep will not be enough.</li>
</ul>
<p style="text-align: left;">&nbsp;</p>
<ul style="text-align: left;">
<li>I noticed that high megapixel images, 16MP in my tests, actually rendered faster in the photo app. This may be based on the speed of the Micro SD card I'm using compared to the ROM memory used in the Surface or lack of overhead the file system imposes on a drive that shares media with everything else, whatever the reason; it was a pleasant surprise.</li>
</ul>
<p style="text-align: left;">&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Implement Kerberos Authentication for Exchange 2010 CAS Servers and MAPI clients and Confirm it’s Working</title>
      <link>https://docs.microsoft.com/archive/blogs/jimyarnold/implement-kerberos-authentication-for-exchange-2010-cas-servers-and-mapi-clients-and-confirm-its-working</link>
      <pubDate>Tue, 17 Sep 2013 12:41:00 GMT</pubDate>
      <dc:creator><![CDATA[jimyarnold]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/jimyarnold/2013/09/17/implement-kerberos-authentication-for-exchange-2010-cas-servers-and-mapi-clients-and-confirm-its-working/</guid>
      <description><![CDATA[The process of implementing Kerberos authentication on the CAS servers involves creating a service...]]></description>
      <content:encoded><![CDATA[<p>The process of implementing Kerberos authentication on the CAS servers involves creating a service account and registering the service principal name (SPN). This must be done on each CAS server in both the Egan and San Mateo Datacenters.</p>
<p>The steps to deploy the ASA credential are as follows:</p>
<ul style="margin-left: 36pt;">
<li>Create a computer account to be used as the ASA credential.</li>
<li>Deploy the ASA credential to the CAS members (using the RollAlternateserviceAccountPassword.ps1 script)</li>
<li>Confirm the setting on each CAS server</li>
<li>Convert the Offline Address Book (OAB) virtual directory to an application using the CovertOABVdir.ps1 script</li>
<li>Assign the SPNs to the ASA credential computer account.</li>
<li>Confirming Kerberos at the client</li>
</ul>
<p>To configure Kerberos ASA:</p>
<ol style="margin-left: 36pt;">
<li><strong>Create a computer object service account.</strong> (<em>All computer accounts must end with the "$" character but do not add "$" to the computer account name, it will be added automatically and will be shown in the SAMAccountName in LDP.</em>) The password is not important; it will be reset by the script. A Machine (computer) account is preferred. Only one service account is required for multiple Active Directory sites. <strong>NOTE:</strong> <em>The CAS array members in multiple sites will use this same service account but different SPNs</em>.</li>
</ol>
<p><span style="color: black;"><strong>EXAMPLE </strong></span></p>
<p>In my lab I'm using ADUC to create the ASA account:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8715.aduc1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8715.aduc1.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8715.aduc1.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8715.aduc1.png" alt="" width="443" height="121" border="0" /></a></p>
<p>Proceeded by filling in the details, no need for pre-windows 2000 assignment:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/5187.aduc2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/5187.aduc2.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/5187.aduc2.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/5187.aduc2.png" alt="" width="397" height="288" border="0" /></a></p>
<p>And no need for ticking "This is a managed computer"</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0310.aduc3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0310.aduc3.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0310.aduc3.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0310.aduc3.png" alt="" width="419" height="208" border="0" /></a></p>
<p>&nbsp;</p>
<ol style="margin-left: 36pt;">
<li><strong>Deploy the ASA credential to the CAS members (using the RollAlternateserviceAccountPassword.ps1 script) </strong></li>
</ol>
<p>Execute the following from the Exchange 2010 Management Shell:</p>
<ol style="margin-left: 72pt;">
<li>To target only members of a specific CAS array:</li>
</ol>
<p><span style="font-family: Courier New; font-size: 8pt;">.\RollAlternateserviceAccountPassword.ps1 -ToArrayMembers &lt;<em>CASArrayName</em>&gt; <br />-GenerateNewPasswordFor &lt;<em>Domain\Account$</em>&gt; </span></p>
<ol style="margin-left: 117pt;">
<li>Select <strong>Yes</strong> at the prompt to change password</li>
</ol>
<p>If this syntax is used then the command must be run twice, once for each datacenter.</p>
<ol style="margin-left: 72pt;">
<li>To target all Exchange 2010 CAS servers in the forest:</li>
</ol>
<p><span style="font-family: Courier New; font-size: 8pt;">.\RollAlternateserviceAccountPassword.ps1 <span style="color: black;">-ToEntireForest <br /></span>-GenerateNewPasswordFor &lt;<em>Domain\Account$</em>&gt; </span></p>
<ol style="margin-left: 117pt;">
<li>Select <strong>Yes</strong> at the prompt to change password</li>
</ol><ol style="margin-left: 72pt;">
<li>To target a newly installed CAS server:</li>
</ol>
<p><span style="font-family: Courier New; font-size: 8pt;">.\RollAlternateServiceAccountPassword.ps1 -CopyFrom &lt;<em>ExistingServerName</em>&gt; <br />-ToSpecificServers &lt;<em>NewServerName</em>&gt; -Verbose </span></p>
<p>&nbsp;</p>
<p><span style="color: black;"><strong>EXAMPLE </strong></span></p>
<p>In my lab have multi-role servers running MB, HT and CAS which means I'm running the cluster service which mean I can't add NLB to the CAS servers which means I can't create a CAS array. But the above commands will apply to most environments and the example below is for adding the ASA credential to my individual CAS servers:</p>
<p>Prior to setting the ASA the above command you can run the following command showing the ASA is not set:</p>
<p style="margin-left: 36pt;">Get-ClientAccessServer -Identity e2010 -IncludeAlternateServiceAccountCredentialStatus | fl AlternateServiceAccountConfiguration</p>
<p>My CAS server name is E2010</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8132.get-cas1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8132.get_2D00_cas1.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8132.get-cas1.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8132.get_2D00_cas1.png" alt="" width="586" height="101" border="0" /></a></p>
<p>&nbsp;</p>
<p>Now I'm running the following script pointing to my 1<sup>st</sup> CAS server:</p>
<p style="margin-left: 36pt;">.\RollAlternateserviceAccountPassword.ps1 -ToSpecificServers e2010 -GenerateNewPasswordFor "jy.com\ASA$" -Verbose</p>
<p>&nbsp;</p>
<p>Which produces this output:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/5270.eps1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/5270.eps1.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/5270.eps1.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/5270.eps1.png" alt="" border="0" /></a></p>
<p>And the rest of script output asking for the Password change:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/7140.eps2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/7140.eps2.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/7140.eps2.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/7140.eps2.png" alt="" border="0" /></a></p>
<p>Once you select Y you'll see the script complete:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8765.eps3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8765.eps3.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8765.eps3.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8765.eps3.png" alt="" border="0" /></a></p>
<p>Next I'll run the following command to add the ASA credential to another CAS server, e2010B. You would do this to newly deployed CAS servers:</p>
<p style="margin-left: 36pt;">.\RollAlternateServiceAccountPassword.ps1 -CopyFrom e2010 -ToSpecificServers e2010B &ndash;Verbose</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0574.eps4.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0574.eps4.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0574.eps4.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0574.eps4.png" alt="" border="0" /></a></p>
<ol style="margin-left: 36pt;">
<li><strong>Confirm the setting on each CAS server by running the following: </strong></li>
</ol>
<p><span style="font-family: Courier New; font-size: 8pt;">Get-ClientAccessServer -Identity &lt;CASServerName&gt; <br />-IncludeAlternateServiceAccountCredentialStatus | fl AlternateServiceAccountConfiguration </span></p>
<p><span style="color: black;"><strong>EXAMPLE </strong></span></p>
<p>Now that I've deployed the ASA credential I'll run the above command confirming the ASA credential has been deployed to my CAS servers, looking at just the e2010 CAS server:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/4426.eps5.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/4426.eps5.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/4426.eps5.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/4426.eps5.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<ol style="margin-left: 36pt;">
<li><strong>Convert the OAB virtual directory </strong></li>
</ol>
<p>This script will convert the OAB virtual directory to an IIS web application as well as create the new application pool, MSExchangeOabAppPool. Converting the OAB virtual directory is necessary to support different authentication methods like Kerberos and Certificate authentication and must be done before you configure Kerberos Client Authentication. The name of the script is <strong>ConvertOABVdir.ps1</strong>. The script is located in the Scripts subdirectory of the Exchange install path.</p>
<p style="margin-left: 11pt;"><span style="font-family: Courier New; font-size: 8pt;">.\ConvertOABVdir.ps1 </span></p>
<p><span style="color: black;"><strong>EXAMPLE </strong></span></p>
<p>This is easy and will complete quickly:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/4747.eps6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/4747.eps6.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/4747.eps6.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/4747.eps6.png" alt="" border="0" /></a></p>
<p>Done! Above is the result you're looking for.</p>
<ol style="margin-left: 36pt;">
<li><strong>Register the SPNs for this account</strong></li>
</ol>
<p>This is done only once using the SETSPN.EXE utility. Depending on how Active Directory permissions are implemented, the operation may require Domain Administrator rights. The step should only be completed after all previous steps have completed successfully.</p>
<p style="margin-left: 28pt;"><span style="font-family: Arial; font-size: 9pt;"><strong>NOTE:</strong> RollAlternateserviceAccountPassword.ps1 -This step must be performed immediately with production servers that are added in the future. Failure to do so will result in poor client performance if a new server is added to the CAS array and the steps above are not followed. Microsoft recommends that you schedule this password change via a schedule task. </span></p>
<p>&nbsp;</p>
<p><span style="color: black;"><strong>EXAMPLES </strong></span></p>
<ul style="margin-left: 47pt;">
<li>Use the created service account in Active Directory from step 1 above: JY\ASA</li>
<li>
<div>Register the SPN's on this account</div>
<ul>
<li>setspn -F -S exchangeMDB/webmail.jy.com JY\ASA</li>
<li>setspn -F -S exchangeRFR/webmail.jy.com JY\ASA</li>
<li>setspn -F -S exchangeAB/webmail.jy.com JY\ASA</li>
<li>setspn -F -S HTTP/webmail.jy.com JY\ASA</li>
<li>setspn -F -S exchangeMDB/webmail JY\ASA</li>
<li>setspn -F -S exchangeRFR/webmail JY\ASA</li>
<li>setspn -F -S exchangeAB/webmail JY\ASA</li>
<li>setspn -F -S HTTP/webmail JY\ASA</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<ul style="margin-left: 47pt;">
<li>
<div>The following steps have to be executed on each CAS server ?$cred = get-credential "JY\ASA"</div>
<ul>
<li>Set-clientaccessserver -Identity CASserver -AlternateServiceAccountCredential $cred</li>
<li>iisreset</li>
<li>restart-service MSexchangeAB</li>
<li>restart-service MSexchangeRPC</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<ul style="margin-left: 47pt;">
<li>To verify the setting, execute the following on each CAS server:</li>
</ul>
<p>&nbsp;</p>
<ul style="margin-left: 83pt;">
<li>Get-ClientAccessServer -Identity CASserver -IncludeAlternateServiceAccountCredentialStatus |fl AlternateServiceAccountConfiguration</li>
</ul>
<p>&nbsp;</p>
<p>Once you've registered your SPN for your environment you can view the registration via the following command, here's I'm using my ASA account in my jy.com domain:</p>
<p style="margin-left: 36pt;">Setspn &ndash;L jy.com\ASA</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/3750.eps7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/3750.eps7.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/3750.eps7.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/3750.eps7.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<ol style="margin-left: 36pt;">
<li><strong>Confirming Kerberos at the client </strong></li>
</ol>
<p><span style="font-size: 12pt;"><strong>Note</strong></span>; you'll need to run an IISReset, and restart the Exchange Address Book Service and the Exchange RPC Client Access Service on each CAS server after all the above steps are completed</p>
<p><span style="color: black;"><strong>EXAMPLE 1 </strong></span></p>
<p>Configure your Outlook profile to use Kerberos authentication via the Account settings of the profile via <strong>Change E-mail Account | More settings | Security</strong> and Restart Outlook if running<strong>:</strong></p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/6406.outlook1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/6406.outlook1.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/6406.outlook1.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/6406.outlook1.png" alt="" border="0" /></a></p>
<p>Check the connection status by right-clicking the systray Outlook icon and selecting connection status:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/7840.outlook2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/7840.outlook2.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/7840.outlook2.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/7840.outlook2.png" alt="" width="258" height="212" border="0" /></a></p>
<p>If your connection is TCP/IP you're successfully using Kerberos for MAPI connected clients, if HTTPS than you are not:</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/3201.outlook3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/3201.outlook3.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/3201.outlook3.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/3201.outlook3.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p><span style="color: black;"><strong>EXAMPLE 2</strong></span></p>
<p>You can also run <strong>klist</strong> from a command prompt to see the Kerberos tickets for Outlook access:</p>
<p>&nbsp;</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0552.klist.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0552.klist.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0552.klist.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0552.klist.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p><span style="color: black;"><strong>EXAMPLE 3 </strong></span></p>
<p>&nbsp;</p>
<p>Another method to ensure Kerberos is being accepted by the CAS servers using logs from OAB:</p>
<p>&nbsp;</p>
<ol>
<li>Update your OAB from EMC:</li>
</ol>
<p>&nbsp;</p>
<p style="margin-left: 36pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/1212.emc1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/1212.emc1.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/1212.emc1.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/1212.emc1.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<ol>
<li>Followed by looking at the logs in their default location:</li>
</ol>
<p>&nbsp;</p>
<p style="margin-left: 18pt;"><strong>C:\Program Files\Microsoft\Exchange server\v14\Logging\AddressBook Service </strong></p>
<p>&nbsp;</p>
<p style="margin-left: 18pt;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8015.emc2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8015.emc2.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/8015.emc2.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/8015.emc2.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<ol>
<li>Confirm the <strong>AddressBook_...</strong> is reflecting the time of your update and open it.&nbsp; Once you scroll to the end you should see something like this, notice the 'Kerberos' at the end of last line:</li>
</ol>
<p>&nbsp;</p>
<p style="margin-left: 36pt;"><span style="color: black;">2013-02-11T21:09:20.994Z,6,0,/o=JY/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=Administrator,,192.168.0.13,e2010,ncacn_ip_tcp,GetFQDNFromLegacyDN,,7,,,<strong>Kerberos</strong>, </span></p>
<p>&nbsp;</p>
<p><span style="color: black;"><strong>EXAMPLE 4 </strong></span></p>
<p>&nbsp;</p>
<p>Capture a netmon trace and look to see if the Kerberos Token is seen:</p>
<p style="padding-left: 30px;"><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0763.oablog.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0763.oablog.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/00/32/0763.oablog.png" original-url="http://blogs.technet.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-00-32/0763.oablog.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<ol style="margin-left: 36pt;">
<li><strong>Periodically Changing the Password for the ASA Credential Account</strong></li>
</ol>
<p>&nbsp;</p>
<p>It's recommended to periodically change the password for the ASA credential account. To do so you would need to create a scheduled task that runs the <strong>RollAlternateServiceAccountPassword.ps1</strong> script. From: <a href="http://technet.microsoft.com/en-us/library/ff808311.aspx">http://technet.microsoft.com/en-us/library/ff808311.aspx</a></p>
<p>If the script runs as a scheduled task, its results are logged to the Exchange server Logging folder in a subfolder called RollAlternateServiceAccountPassword.</p>
<p>You can use the log to confirm that the task has been running successfully.</p>
<ol style="margin-left: 36pt;">
<li><strong>References</strong></li>
</ol>
<p>The following references were used in the creation of this document:</p>
<ul style="margin-left: 54pt;">
<li><a href="http://technet.microsoft.com/en-us/library/ff808313.aspx">Using Kerberos with a Client Access Server Array or a Load-Balancing Solution</a></li>
<li><a href="http://www.msexchange.org/articles_tutorials/exchange-server-2010/management-administration/enabling-kerberos-authentication-mapi-clients-connecting-exchange-2010-sp1.html">Enabling Kerberos Authentication for MAPI Clients Connecting to Exchange 2010 SP1</a></li>
<li><a href="http://blogs.technet.com/b/exchange/archive/2011/04/15/recommendation-enabling-kerberos-authentication-for-mapi-clients.aspx">Recommendation: Enabling Kerberos Authentication for MAPI Clients</a></li>
<li><a href="http://technet.microsoft.com/en-us/library/ff808311.aspx">Using the RollAlternateserviceAccountPassword.ps1 Script in the Shell</a></li>
</ul>
<p>&nbsp;</p>
<p>Hope this helps!</p>]]></content:encoded>
    </item>
  </channel>
</rss>