<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Azure Archives - Erjen Rijnders</title>
	<atom:link href="https://erjenrijnders.nl/category/azure/feed/" rel="self" type="application/rss+xml" />
	<link>https://erjenrijnders.nl/category/azure/</link>
	<description>Microsoft Azure/EMS blog</description>
	<lastBuildDate>Sat, 29 Feb 2020 11:48:51 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.2</generator>
	<item>
		<title>How to manage Windows Virtual Desktop</title>
		<link>https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/</link>
					<comments>https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/#comments</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Fri, 03 May 2019 12:36:48 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Windows Virtual Desktop]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=75994</guid>

					<description><![CDATA[<p>If you want to setup WVD, check this post. Currently, you can only manage WVD through PowerShell. Here you can [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/">How to manage Windows Virtual Desktop</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>If you want to setup WVD, <a rel="noreferrer noopener" aria-label="check my previous post. (opens in a new tab)" href="https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/" target="_blank"><strong>check this post.</strong></a></p>



<p>Currently, you can only manage WVD through PowerShell. Here you can see the most common commands to manage your enviroment.</p>



<p>You can only assign a user to a desktop pool or app pool, not both. Neither can a desktop pool contain apps (like it isn&#8217;t possible in RDS as well). By default, you create a desktop pool, let&#8217;s add an app pool now by running the commands below. Always start with this command, signing in, in the WVD-enviroment.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">&nbsp;Add-RdsAccount -DeploymentUrl &quot;https://rdbroker.wvd.microsoft.com&quot;</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading"> Add a new WVD App Group</h2>



<p>Run these commands to add a new app group.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$myTenantName = &quot;mytenantname&quot; #If you don't know, try Get-RdsTenant<br />
$hostpoolname = &quot;myhostpoolname&quot; #If you don't know, try Get-RdsHostPool<br />
$rdsremoteappgroupname = &quot;remoteappgroupname&quot;<br />
Get-RdsAppGroup $myTenantName $hostpoolname<br />
New-RdsAppGroup -TenantName $myTenantName -HostPoolName $hostpoolname -Name $rdsremoteappgroupname -ResourceType RemoteApp</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading">Find applications you can publish</h2>



<p>If you want to find apps currently able to publish to your new app group, run this command. It will search on your session hosts for apps.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Get-RdsStartMenuApp -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $rdsremoteappgroupname</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading">Publish applications</h2>



<p>For example, this is how you publish Internet Explorer and Registry Editor.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">New-RdsRemoteApp -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $rdsremoteappgroupname -Name &quot;Internet Explorer&quot; -FilePath &quot;C:\Program Files\internet explorer\iexplore.exe&quot; -IconPath &quot;C:\Program Files\internet explorer\iexplore.exe&quot;<br />
New-RdsRemoteApp -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $rdsremoteappgroupname -Name &quot;Registry Editor&quot; -AppAlias &quot;registryeditor&quot;</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading">Add users to your new app group</h2>



<p>Adding users is also very simple, just run this command.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Add-RdsAppGroupUser -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $rdsremoteappgroupname -UserPrincipalName &amp;lt;upn&gt;</div></td></tr></tbody></table></div>

</pre>



<p>If you want to publish more app groups, follow the steps above again. Remember, a user can only be a member of the App Group, or the Desktop Group. If you want to assign the user to the app group while being a member of the desktop group, remove it first with this command:</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Remove-RdsAppGroupUser -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $rdsremoteappgroupname -UserPrincipalName &amp;lt;upn&gt;</div></td></tr></tbody></table></div>

</pre>
<p>The post <a href="https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/">How to manage Windows Virtual Desktop</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>How-to deploy Windows Virtual Desktop in Azure</title>
		<link>https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/</link>
					<comments>https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/#comments</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Thu, 04 Apr 2019 08:59:42 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Windows Virtual Desktop]]></category>
		<category><![CDATA[Windows 10 Virtual Desktop]]></category>
		<category><![CDATA[Windows Virtual desktop]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=75927</guid>

					<description><![CDATA[<p>If you want to know how to manage WVD, check this post. Index 1. Add RDS Tenant2. Add Service Principal3. [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/">How-to deploy Windows Virtual Desktop in Azure</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>If you want to know how to manage WVD, <a rel="noreferrer noopener" aria-label="check this post. (opens in a new tab)" href="https://erjenrijnders.nl/2019/05/03/how-to-manage-windows-virtual-desktop/" target="_blank"><strong>check this post.</strong></a></p>



<h2 class="wp-block-heading"><strong>Index</strong></h2>



<p><a href="#Add-RDS-tenant">1. Add RDS Tenant</a><br><a href="#Add-Service-Principal">2. Add Service Principal</a><br><a href="#Assign-permissions">3. Assign permissions</a><br><a href="#Deploy-WVD-through-marketplace">4. Deploy WVD through marketplace</a><br><a href="#Open-HTML5-webclient">5. Open HTML5 webclient</a><br><a href="#Add-users-to-your-desktop">6. Add users to your desktop</a></p>



<p></p>



<p>I see a lot of people struggle deploying Windows Virtual desktop. Most people face this error message:</p>



<pre class="wp-block-preformatted">VM has reported a failure when processing extension 'dscextension'. Error message: \\\"DSC Configuration 'FirstSessionHost' completed with error(s). Following are the first few: PowerShell DSC resource MSFT_ScriptResource failed to execute Set-TargetResource functionality with error message: User is not authorized to query the management service</pre>



<p>This is because you need to create a service principal with the correct permissions. A normal user will work as well, but it&#8217;s failing too many times for people. <br>Following these steps should get you through the deployment.<br><br></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong><em>Keep in mind that the user deploying your WVD VMs to your domain, also needs the Owner role on your Azure Subscription! Because it needs to be able to run some Powershell DSC commands.</em></strong></p><p><em>NOTE:  User &#8216;Cloudcrusader&#8217; suggests in the comments that it should work with  the &#8216;Virtual Machine Contributor&#8217; role only as well.</em></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Start fresh. Delete all WVD tenants created before. Check if a tenant still exists with Get-RdsTenant. </strong></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong><em>This post is not going to help you, configuring WVD with AAD DS. It should be possible though, someone was able to configure it succesfully using <font color="#4f67c1"><a href="http://www.rebeladmin.com/2019/04/step-step-guide-azure-windows-virtual-desktop-preview/" target="_blank" rel="noreferrer noopener" aria-label="this post (opens in a new tab)"><font color="#4f67c1">this post</font></a></font>.</em></strong></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Remember, don&#8217;t use an MFA enabled account. It doesn&#8217;t work.</strong></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Also try: <a href="https://docs.microsoft.com/en-us/powershell/module/windowsvirtualdesktop/get-rdsdiagnosticactivities" rel="noopener noreferrer" target="_blank">Get-RdsDiagnosticActivities</a>. Others succeeded finding the root cause with that command</strong></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>I have deployed WVD multiple times already, so that&#8217;s how I know this works. If it doesn&#8217;t work for you, let me know, maybe I can help you.</strong></p></blockquote>



<p><br>Run through step one of the Microsoft documentation:<br><a rel="noreferrer noopener" aria-label="https://docs.microsoft.com/en-us/azure/virtual-desktop/tenant-setup-azure-active-directory (opens in a new tab)" href="https://docs.microsoft.com/en-us/azure/virtual-desktop/tenant-setup-azure-active-directory" target="_blank">https://docs.microsoft.com/en-us/azure/virtual-desktop/tenant-setup-azure-active-directory</a><br></p>



<h2 class="wp-block-heading" id="Add-RDS-tenant">Add RDS tenant</h2>



<p>Run these commands to add the RDS tenant.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"># Don't change the deploymenturl<br />
Add-RdsAccount -DeploymentUrl &quot;https://rdbroker.wvd.microsoft.com&quot;<br />
# Use any name for your tenant, get your ID from Azure portal &gt; Azure Active Directory &gt; Properties &gt; Directory ID. To get your SubscriptionID, go to Azure Portal &gt; All services &gt; subscriptions &gt; click the subscription where the VM's will reside and copy the subscription ID:<br />
New-RdsTenant -Name YourTenantName -AadTenantId YourAzureADTenantID -AzureSubscriptionId YourSubscriptionID</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading" id="Add-Service-Principal">Add Service Principal</h2>



<p>Next, follow these steps. Never change the <strong>Default Tenant Group</strong>, as per the Microsoft docs.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$myTenantGroupName = &quot;Default Tenant Group&quot;<br />
$myTenantName = &quot;tenantname&quot; #As you used in the previous step<br />
$hostpoolname = &quot;Hostpoolname&quot;<br />
<br />
# create the service principal:<br />
$aadContext = Connect-AzureAD<br />
$svcPrincipal = New-AzureADApplication -AvailableToOtherTenants $true -DisplayName &quot;Windows Virtual Desktop Svc Principal&quot;<br />
$svcPrincipalCreds = New-AzureADApplicationPasswordCredential -ObjectId $svcPrincipal.ObjectId<br />
<br />
# Don't change the URL below.<br />
Add-RdsAccount -DeploymentUrl &quot;https://rdbroker.wvd.microsoft.com&quot; <br />
Set-RdsContext -TenantGroupName $myTenantGroupName<br />
New-RdsHostPool -TenantName $myTenantName -name $hostpoolname</div></td></tr></tbody></table></div>

</pre>



<h2 class="wp-block-heading" id="Assign-permissions">Assign permissions</h2>



<p>Now below is the most important step, that&#8217;s where you assign the service principal permissions to the RDS environment. If you do this correctly, you can deploy the WVD template from the Azure Marketplace, without errors.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">New-RdsRoleAssignment -RoleDefinitionName &quot;RDS Owner&quot; -ApplicationId $svcPrincipal.AppId -TenantGroupName $myTenantGroupName -TenantName $myTenantName -HostPoolName $hostpoolname</div></td></tr></tbody></table></div>

</pre>



<p>Go to the Azure Portal and open the app just created and create your own key:<br><strong>Azure Portal &gt; app registrations &gt; Windows Virtual Desktop Svc Principal &gt; Settings &gt; Keys.</strong><br>Create your own key and save the value During the next step, deploying Windows Virtual Desktop from the marketplace, in step 3 of that template you need this password.</p>



<h2 class="wp-block-heading" id="Deploy-WVD-through-marketplace">Deploy WVD through marketplace</h2>



<p>Next step is to follow this Microsoft doc:<br><a href="https://docs.microsoft.com/en-us/azure/virtual-desktop/create-host-pools-azure-marketplace">https://docs.microsoft.com/en-us/azure/virtual-desktop/create-host-pools-azure-marketplace</a> <br>You should be able to get passed the error as mentioned above, also with help from these screenshots below.</p>



<figure class="wp-block-image is-resized"><img fetchpriority="high" decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/create-windows-virtual-desktop.png" alt="" class="wp-image-75930" width="560" height="358" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/create-windows-virtual-desktop.png 747w, https://erjenrijnders.nl/wp-content/uploads/2019/04/create-windows-virtual-desktop-300x192.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/04/create-windows-virtual-desktop-600x383.png 600w" sizes="(max-width: 560px) 100vw, 560px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-1-1.png" alt="" class="wp-image-75943" width="469" height="650" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-1-1.png 625w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-1-1-216x300.png 216w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-1-1-600x832.png 600w" sizes="(max-width: 469px) 100vw, 469px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-2.png" alt="" class="wp-image-75932" width="449" height="638" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-2.png 598w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-2-211x300.png 211w" sizes="(max-width: 449px) 100vw, 449px" /></figure>



<p>If you keep <strong>No </strong>selected below <strong>Specifiy domain or OU</strong>, it&#8217;s going to try joining the domain behind the @, used below <strong>AD domain join UPN</strong>. So in the example below it will use <strong>yourdomain.com</strong>. If your domain is <strong>ad.yourdomain.com</strong>, set <strong>Yes</strong> below the <strong>Specifiy domain or OU</strong>.<br><br></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-3.png" alt="" class="wp-image-75933" width="467" height="647" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-3.png 623w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-3-217x300.png 217w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-3-600x830.png 600w" sizes="(max-width: 467px) 100vw, 467px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-4.png" alt="" class="wp-image-75934" width="455" height="652" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-4.png 606w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-4-209x300.png 209w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-4-600x860.png 600w" sizes="(max-width: 455px) 100vw, 455px" /></figure>



<p>Finally, your deployment is succesful as you can see in the screenshot below. It took about 9 minutes for the DSCextension completed, per VM:</p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5-1024x461.png" alt="" class="wp-image-75935" width="768" height="346" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5-1024x461.png 1024w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5-300x135.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5-768x345.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5-600x270.png 600w, https://erjenrijnders.nl/wp-content/uploads/2019/04/step-5.png 1294w" sizes="(max-width: 768px) 100vw, 768px" /></figure>



<h2 class="wp-block-heading" id="Open-HTML5-webclient">Open HTML5 webclient</h2>



<p>Now go to the HTML5 client to open your desktop: <a href="https://rdweb.wvd.microsoft.com/webclient/index.html">https://rdweb.wvd.microsoft.com/webclient/index.html</a></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/your-session-host.png" alt="" class="wp-image-75936" width="227" height="170" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/your-session-host.png 302w, https://erjenrijnders.nl/wp-content/uploads/2019/04/your-session-host-300x226.png 300w" sizes="(max-width: 227px) 100vw, 227px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/acces-local-resources.png" alt="" class="wp-image-75937" width="444" height="209" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/acces-local-resources.png 592w, https://erjenrijnders.nl/wp-content/uploads/2019/04/acces-local-resources-300x141.png 300w" sizes="(max-width: 444px) 100vw, 444px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/start-your-desktop.png" alt="" class="wp-image-75938" width="437" height="221" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/start-your-desktop.png 583w, https://erjenrijnders.nl/wp-content/uploads/2019/04/start-your-desktop-300x152.png 300w" sizes="(max-width: 437px) 100vw, 437px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/start-wvd.png" alt="" class="wp-image-75939" width="434" height="209" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/start-wvd.png 579w, https://erjenrijnders.nl/wp-content/uploads/2019/04/start-wvd-300x145.png 300w" sizes="(max-width: 434px) 100vw, 434px" /></figure>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://erjenrijnders.nl/wp-content/uploads/2019/04/started-wvd.png" alt="" class="wp-image-75940" width="560" height="661" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/04/started-wvd.png 747w, https://erjenrijnders.nl/wp-content/uploads/2019/04/started-wvd-254x300.png 254w, https://erjenrijnders.nl/wp-content/uploads/2019/04/started-wvd-600x708.png 600w" sizes="(max-width: 560px) 100vw, 560px" /></figure>



<h2 class="wp-block-heading" id="Add-users-to-your-desktop">Add users to your desktop</h2>



<p>As a final step, add users to your desktop:</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Add-RdsAppGroupUser -TenantName $myTenantName -HostPoolName $hostpoolname -AppGroupName $appgroupname -UserPrincipalName upn</div></td></tr></tbody></table></div>

</pre>
<p>The post <a href="https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/">How-to deploy Windows Virtual Desktop in Azure</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2019/04/04/how-to-deploy-windows-virtual-desktop-in-azure/feed/</wfw:commentRss>
			<slash:comments>47</slash:comments>
		
		
			</item>
		<item>
		<title>Azure Sentinel &#8211; The reinvented SIEM</title>
		<link>https://erjenrijnders.nl/2019/03/20/azure-sentinel-the-reinvented-siem/</link>
					<comments>https://erjenrijnders.nl/2019/03/20/azure-sentinel-the-reinvented-siem/#comments</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Wed, 20 Mar 2019 15:54:06 +0000</pubDate>
				<category><![CDATA[Security and Compliance center]]></category>
		<category><![CDATA[Azure security]]></category>
		<category><![CDATA[Azure]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=75888</guid>

					<description><![CDATA[<p>Why Azure Sentinel Azure Sentinel &#8211; Data connectors Azure Sentinel &#8211; Analytics Azure Sentinel &#8211; Cases Azure Sentinel &#8211; Overview [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2019/03/20/azure-sentinel-the-reinvented-siem/">Azure Sentinel &#8211; The reinvented SIEM</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<ol class="wp-block-list"><li><a href="#WhyAzureSentinel"><strong>Why Azure Sentinel</strong></a></li><li><strong><a href="#AzureSentinelDataConnectors">Azure Sentinel &#8211; Data connectors</a></strong></li><li><strong><a href="#AzureSentinelAnalytics">Azure Sentinel &#8211; Analytics</a></strong></li><li><strong><a href="#AzureSentinelCases">Azure Sentinel &#8211; Cases</a></strong></li><li><strong><a href="#AzureSentinelOverview">Azure Sentinel &#8211; Overview page</a></strong></li></ol>



<h2 class="wp-block-heading" id="WhyAzureSentinel">Why Azure Sentinel</h2>



<p>Azure Sentinel is the latest, security related, innovation from Microsoft. Microsoft calls it a “reinvented SIEM” solution. Well, it’s not really innovation, it’s more of a combination of all security products of Microsoft. We have Cloud App Security, Azure Advanced Threat Protection, Security Events, Windows Firewall, Windows Azure Firewall etc. etc.<br><br>Azure Sentinel has not only built-in AI (which we expect from nowadays products from Microsoft), but it transcends the AI, already available in the product itself (like the AI in Identity Protection), but it creates an extra AI layer, on top of the already existing AI infrastructure which makes it really cool. So the AI of Sentinel doesn’t have to know the underlaying AI technology, it just needs to combine the output of every separate AI and create valuable input. Microsoft already uses this technique for years and because of their experience, it’s now broadly available.<br><br>Azure Sentinel has not only built-in AI (which we expect from nowadays products from Microsoft), but it transcends the AI, already available in the product itself (like the AI in Identity Protection), but it creates an extra AI layer, on top of the already existing AI infrastructure which makes it really cool. So the AI of Sentinel doesn’t have to know the underlaying AI technology, it just needs to combine the output of every separate AI and create valuable input. Microsoft already uses this technique for years and because of their experience, it’s now broadly available.<br><br>Let’s have a look at Azure Sentinel. Go to the Azure Portal and search for “Azure Sentinel”. As you can see it’s still in preview.</p>



<p>You need to
create a Log Analytics Workspace for Sentinel to work. As long as Sentinel is
in preview, you won’t pay anything, except costs like storage which you will
make creating a workspace.</p>



<figure class="wp-block-image"><img decoding="async" width="876" height="417" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/create-azure-log-analytics-workspace-1.png" alt="" class="wp-image-75892" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/create-azure-log-analytics-workspace-1.png 876w, https://erjenrijnders.nl/wp-content/uploads/2019/03/create-azure-log-analytics-workspace-1-300x143.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/create-azure-log-analytics-workspace-1-768x366.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/create-azure-log-analytics-workspace-1-600x286.png 600w" sizes="(max-width: 876px) 100vw, 876px" /></figure>



<h2 class="wp-block-heading" id="AzureSentinelDataConnectors">Azure Sentinel &#8211; Data connectors</h2>



<p>The first page you see is the &#8220;Getting started&#8221; page. Click on &#8220;Collect data&#8221; to start collecting data.</p>



<figure class="wp-block-image"><img decoding="async" width="1024" height="384" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1-1024x384.png" alt="" class="wp-image-75893" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1-1024x384.png 1024w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1-300x113.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1-768x288.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1-600x225.png 600w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-getting-started-1.png 1231w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>You will see an overview of all the data you connect. It&#8217;s already a nice list of services you can connect. If you are already full onboarded in Azure/Office 365, you will have many relevant products to connect!</p>



<figure class="wp-block-image"><img decoding="async" width="1024" height="539" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors-1024x539.png" alt="" class="wp-image-75896" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors-1024x539.png 1024w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors-300x158.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors-768x404.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors-600x316.png 600w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-data-connectors.png 1577w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Of course, we are going to connect &#8220;Azure Information Protection&#8221; first. You need to go to the &#8220;Azure Information Protection&#8221; tab Click &#8220;Azure Information Protection&#8221; and click &#8220;connect to your Azure Sentinel workspace&#8221;. </p>



<figure class="wp-block-image"><img decoding="async" width="951" height="683" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP.png" alt="" class="wp-image-75898" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP.png 951w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-300x215.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-768x552.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-600x431.png 600w" sizes="(max-width: 951px) 100vw, 951px" /></figure>



<p>Click on the Azure Sentinel workspace, you need to reconfigure the AIP log so that it stores the AIP information in the Azure Sentinel workspace (if you don&#8217;t see any, you should go to Azure Information Protection&#8221; and enable logging there) and also check the deeper analytics checkbox to see sensitive information types as well.</p>



<figure class="wp-block-image"><img decoding="async" width="829" height="135" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-sensitive.png" alt="" class="wp-image-75899" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-sensitive.png 829w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-sensitive-300x49.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-sensitive-768x125.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-AIP-sensitive-600x98.png 600w" sizes="(max-width: 829px) 100vw, 829px" /></figure>



<p>Now connect everything you want to connect, like Azure AD. Cool thing is that if you connect Office 365, you can connect multiple tenants! So I expect that more data connectors are going to be multi-tenant which mean we really have the reinvented SIEM.</p>



<figure class="wp-block-image"><img decoding="async" width="503" height="461" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-Azure-AD.png" alt="" class="wp-image-75901" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-Azure-AD.png 503w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-connect-Azure-AD-300x275.png 300w" sizes="(max-width: 503px) 100vw, 503px" /></figure>



<h2 class="wp-block-heading" id="AzureSentinelAnalytics">Azure Sentinel &#8211; Analytics</h2>



<p>If you click in the Azure Sentinal tab on &#8220;Analytics&#8221;, you can create rules when you want to be alerted. For example you can create an alert when a virtual machine is created or updated. For more information, check the code example from <a href="https://docs.microsoft.com/en-us/azure/sentinel/tutorial-detect-threats">Microsoft Docs</a> as well.</p>



<pre class="wp-block-code">

<div class="codecolorer-container text twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">AzureActivity<br />
&nbsp;| where OperationName == &quot;Create or Update Virtual Machine&quot; or OperationName == &quot;Create Deployment&quot;<br />
&nbsp;| where ActivityStatus == &quot;Succeeded&quot;<br />
| extend AccountCustomEntity = ResourceGroup<br />
| extend IPCustomEntity = TenantId</div></td></tr></tbody></table></div>

</pre>



<p>You can create a lot of rules, but in my opinion it&#8217;s not that simple to configure the alerts you need. Especially if you need many specific rules. But this is still a preview version, I expect more options and simplifications in the general available version.</p>



<figure class="wp-block-image"><img decoding="async" width="580" height="816" src="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-ip.png" alt="" class="wp-image-75915" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-ip.png 580w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Azure-Sentinel-ip-213x300.png 213w" sizes="(max-width: 580px) 100vw, 580px" /></figure>



<h2 class="wp-block-heading" id="AzureSentinelCases">Azure Sentinel Cases</h2>



<p>A case in Sentinel is automatically created, once an event is triggered. Soon I will update this with more data.</p>



<h2 class="wp-block-heading" id="AzureSentinelOverview">Azure Sentinel Overview page</h2>



<p>In the “Overview” section, you have a nice dashboard of everything that is going on. See an example here below. It&#8217;s not much data yet, but this is from just a few hours. I will update this dashboard once I have more detailed information.</p>



<figure class="wp-block-image"><img decoding="async" width="852" height="412" src="http://erjenrijnders.nl/wp-content/uploads/2019/03/Sentinel-overview.png" alt="" class="wp-image-75924" srcset="https://erjenrijnders.nl/wp-content/uploads/2019/03/Sentinel-overview.png 852w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Sentinel-overview-300x145.png 300w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Sentinel-overview-768x371.png 768w, https://erjenrijnders.nl/wp-content/uploads/2019/03/Sentinel-overview-600x290.png 600w" sizes="(max-width: 852px) 100vw, 852px" /><figcaption>Sentinel-overview</figcaption></figure>
<p>The post <a href="https://erjenrijnders.nl/2019/03/20/azure-sentinel-the-reinvented-siem/">Azure Sentinel &#8211; The reinvented SIEM</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2019/03/20/azure-sentinel-the-reinvented-siem/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Azure AD login without credentials (unattended)</title>
		<link>https://erjenrijnders.nl/2018/08/30/azuread-login-without-credentials-unattended/</link>
					<comments>https://erjenrijnders.nl/2018/08/30/azuread-login-without-credentials-unattended/#comments</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Thu, 30 Aug 2018 10:53:06 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[AzureAD]]></category>
		<category><![CDATA[Azure AD]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=75660</guid>

					<description><![CDATA[<p>Unattended login to Azure isn&#8217;t that easy, especially if you want to add a PowerShell script to the task scheduler. [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2018/08/30/azuread-login-without-credentials-unattended/">Azure AD login without credentials (unattended)</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Unattended login to Azure isn&#8217;t that easy, especially if you want to add a PowerShell script to the task scheduler. You will see that Plain Text password do not work, and it doesn’t work with the “CredentialManager” module either. You will get an error message like:</p>
<p>&nbsp;</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Connect<span style="color: pink;">-</span>AzureAD : One or more errors occurred.: Showing a modal dialog box or form when the application is not running <span style="color: #0000FF;">in</span> UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application.</div></td></tr></tbody></table></div>
<p>&nbsp;</p>
<p>The solution is to add a registered app in Azure AD and connect to that app. Here is the PowerShell I used.</p>
<blockquote><p>Note that running commands below on Server 2012 R2 or before will fail, it doesn’t support options that comes with Windows Server 2016. Stripping those options will fail the Azure AD login. Execute these commands on a Windows 10 or Server 2016 machine and copy the exported certificate to a Windows Server 2012 R2 machine. Also import the certificate in the Personal store of the “CurrentUser” on that specific machine.</p></blockquote>
<p>First, login with administrator credentials:</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Connect<span style="color: pink;">-</span>AzureAD</div></td></tr></tbody></table></div>
<p>Now Execute this PowerShell:</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #800080;">$pwd</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;yourpass&quot;</span><br />
<span style="color: #800080;">$thumb</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#40;</span>New<span style="color: pink;">-</span>SelfSignedCertificate <span style="color: pink;">-</span>CertStoreLocation Cert:\CurrentUser\My <span style="color: pink;">-</span>subject <span style="color: #800000;">&quot;unattendedlogin-azuread&quot;</span> <span style="color: pink;">-</span>KeyExportPolicy Exportable <span style="color: pink;">-</span>NotAfter <span style="color: #000000;">&#40;</span><span style="color: #008080; font-weight: bold;">Get-Date</span><span style="color: #000000;">&#41;</span>.AddYears<span style="color: #000000;">&#40;</span><span style="color: #804000;">10</span><span style="color: #000000;">&#41;</span> <span style="color: pink;">-</span><span style="color: #008080; font-weight: bold;">Type</span> CodeSigningCert <span style="color: pink;">-</span>KeySpec Signature<span style="color: #000000;">&#41;</span>.Thumbprint<br />
<span style="color: #800080;">$pwd</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">ConvertTo-SecureString</span> <span style="color: #008080; font-style: italic;">-String</span> <span style="color: #800080;">$pwd</span> <span style="color: #008080; font-style: italic;">-Force</span> <span style="color: #008080; font-style: italic;">-AsPlainText</span><br />
<span style="color: #800080;">$tmppath</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">Test-Path</span> C:\tmp<br />
<span style="color: #0000FF;">if</span> <span style="color: #000000;">&#40;</span><span style="color: #800080;">$tmppath</span> <span style="color: #FF0000;">-eq</span> <span style="color: #800080;">$false</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>mkdir C:\tmp<span style="color: #000000;">&#125;</span><br />
Export<span style="color: pink;">-</span>PfxCertificate <span style="color: pink;">-</span>cert <span style="color: #800000;">&quot;cert:\CurrentUser\my\$thumb&quot;</span> <span style="color: #008080; font-style: italic;">-FilePath</span> C:\tmp\unattendedlogin<span style="color: pink;">-</span>azuread.pfx <span style="color: pink;">-</span>Password <span style="color: #800080;">$pwd</span><br />
<span style="color: #800080;">$cert</span> <span style="color: pink;">=</span> <span style="color: #008080; font-weight: bold;">New-Object</span> System.Security.Cryptography.X509Certificates.X509Certificate<span style="color: #000000;">&#40;</span><span style="color: #800000;">&quot;C:\tmp\unattendedlogin-azuread.pfx&quot;</span><span style="color: pink;">,</span> <span style="color: #800080;">$pwd</span><span style="color: #000000;">&#41;</span><br />
<span style="color: #800080;">$keyValue</span> <span style="color: pink;">=</span> <span style="color: #000000;">&#91;</span>System.Convert<span style="color: #000000;">&#93;</span>::ToBase64String<span style="color: #000000;">&#40;</span><span style="color: #800080;">$cert</span>.GetRawCertData<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><br />
<span style="color: #800080;">$application</span> <span style="color: pink;">=</span> New<span style="color: pink;">-</span>AzureADApplication <span style="color: #008080; font-style: italic;">-DisplayName</span> <span style="color: #800000;">&quot;unattendedlogin-azuread&quot;</span> <span style="color: pink;">-</span>IdentifierUris <span style="color: #800000;">&quot;https://unattendedlogin&quot;</span><br />
New<span style="color: pink;">-</span>AzureADApplicationKeyCredential <span style="color: pink;">-</span>ObjectId <span style="color: #800080;">$application</span>.ObjectId <span style="color: pink;">-</span>CustomKeyIdentifier <span style="color: #800000;">&quot;unattendedlogin&quot;</span> <span style="color: pink;">-</span><span style="color: #008080; font-weight: bold;">Type</span> AsymmetricX509Cert <span style="color: pink;">-</span>Usage Verify <span style="color: #008080; font-style: italic;">-Value</span> <span style="color: #800080;">$keyValue</span><br />
<span style="color: #800080;">$sp</span><span style="color: pink;">=</span>New<span style="color: pink;">-</span>AzureADServicePrincipal <span style="color: pink;">-</span>AppId <span style="color: #800080;">$application</span>.AppId<br />
Add<span style="color: pink;">-</span>AzureADDirectoryRoleMember <span style="color: pink;">-</span>ObjectId <span style="color: #000000;">&#40;</span>Get<span style="color: pink;">-</span>AzureADDirectoryRole <span style="color: pink;">|</span> <span style="color: #008080; font-weight: bold;">where-object</span> <span style="color: #000000;">&#123;</span><a href="about:blank"><span style="color: #000080;">$_</span></a>.DisplayName <span style="color: #FF0000;">-eq</span> <span style="color: #800000;">&quot;Directory Readers&quot;</span><span style="color: #000000;">&#125;</span><span style="color: #000000;">&#41;</span>.Objectid <span style="color: pink;">-</span>RefObjectId <span style="color: #800080;">$sp</span>.ObjectId</div></td></tr></tbody></table></div>
<p>Now save the thumbprint, tenantID and appID.</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #800080;">$thumb</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;thumbprint&quot;</span><br />
<span style="color: #800080;">$tenantid</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;tenantid&quot;</span><br />
<span style="color: #800080;">$appid</span> <span style="color: pink;">=</span> <span style="color: #800000;">&quot;appid&quot;</span></div></td></tr></tbody></table></div>
<p>You can get these values like this (use the same PowerShell session), executing these commands:</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;"><span style="color: #800080;">$thumb</span><br />
<span style="color: #800080;">$appid</span> <span style="color: pink;">=</span> get<span style="color: pink;">-</span>azureadapplication <span style="color: pink;">|</span> <span style="color: #0000FF;">where</span> DisplayName <span style="color: #FF0000;">-match</span> <span style="color: #800000;">&quot;unattendedlogin&quot;</span><br />
<span style="color: #800080;">$appid</span>.AppId<br />
<span style="color: #800080;">$tenantid</span> <span style="color: pink;">=</span> Get<span style="color: pink;">-</span>AzureADTenantDetail<br />
<span style="color: #800080;">$tenantid</span>.ObjectId</div></td></tr></tbody></table></div>
<p>Next time login like this:</p>
<div class="codecolorer-container powershell twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;"><div>1<br /></div></td><td><div class="powershell codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">Connect<span style="color: pink;">-</span>AzureAD <span style="color: pink;">-</span>TenantId <span style="color: #800080;">$tenantid</span> <span style="color: pink;">-</span>ApplicationId <span style="color: #800080;">$appid</span> <span style="color: pink;">-</span>CertificateThumbprint $thumb</div></td></tr></tbody></table></div>
<p>&nbsp;</p>
<p>The post <a href="https://erjenrijnders.nl/2018/08/30/azuread-login-without-credentials-unattended/">Azure AD login without credentials (unattended)</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2018/08/30/azuread-login-without-credentials-unattended/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>GDPR: how to automatically delete sensitive content</title>
		<link>https://erjenrijnders.nl/2018/08/21/gdpr-how-to-automatically-delete-sensitive-content/</link>
					<comments>https://erjenrijnders.nl/2018/08/21/gdpr-how-to-automatically-delete-sensitive-content/#comments</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Tue, 21 Aug 2018 17:41:31 +0000</pubDate>
				<category><![CDATA[Cloud App Security]]></category>
		<category><![CDATA[Azure Information Protection]]></category>
		<category><![CDATA[Office 365]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Azure-information-protection]]></category>
		<category><![CDATA[aip]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[office 365]]></category>
		<category><![CDATA[cloud app security]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=73835</guid>

					<description><![CDATA[<p>These days, I get a lot of questions from customers how to make sure that for example a resumé is [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2018/08/21/gdpr-how-to-automatically-delete-sensitive-content/">GDPR: how to automatically delete sensitive content</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>These days, I get a lot of questions from customers how to make sure that for example a resumé is automatically deleted after a predefined timeframe. I receive this question a lot because of the GDPR legislation. To accomplish this, you have multiple options. Keep in mind that this blog is not covering in-depth knowledge of the products itself, nor how to configure regex (let me know if you’re interested how to do this in these scenario’s, I might make a blogpost about it), but rather giving you a good idea which tool you should use in which scenario.</p>
<p>So, in case when you have an applicant on a job offer, the person sends you its resumé somehow (by e-mail, sharing through OneDrive etc.) and you download it to the company share (SharePoint Online or locally). In all scenario’s you need to make sure that, whatever way the resumé is received, you catch it and set an expiration date.</p>
<p>Note: Every product to accomplish this have its caveats. You need to make sure that you align the job applications with the way you handle your sensitive data.</p>
<p>Depending on the license you have, you can use these products for achieving above:</p>
<ol>
<li style="list-style-type: none;">
<ol>
<li><a href="#azure-information-protection"><strong>Azure Information Protection;</strong></a></li>
<li><a href="#cloud-app-security"><strong>Cloud App Security;</strong></a></li>
<li><a href="#aip-scanner"><strong>AIP Scanner;</strong></a></li>
<li><a href="#data-loss-prevention"><strong>Data Loss Prevention;</strong></a></li>
<li><a href="#exchange-online-retention-policies"><strong>Exchange Online Retention Policies</strong></a></li>
<li><a href="#conclusion"><strong>Conclusion</strong></a></li>
</ol>
</li>
</ol>
<p>Let’s see how these products can achieve this.</p>
<h2><a id="azure-information-protection"></a>1. Azure Information Protection</h2>
<p>First you need to configure a label with content expiration. Go to the “Azure Portal &gt; Azure Information Protection &gt; Labels &gt; Protect”. Under “Content expiration”, set the content to expire “By days” or “By date”. When the content expires, you can no longer decrypt the content which makes it unreadable:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/azure-information-protection-content-expiration.png" alt="" width="903" height="510" /></h2>
<p>Now classify the document You can easily do this by right clicking a PDF or Word document and click “Classify and protect”:</p>
<p><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/08/azure-information-protection-classify-and-protect.png" alt="" width="274" height="93" /></p>
<p>Click the label you configured with “Content expiration”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/azure-information-protection-sensititvy.png" alt="" width="905" height="169" /></h2>
<p>If you view the custom properties of the document, you can see it’s now classified as “Confidential”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/azure-information-protection-advanced-properties.png" alt="" width="1012" height="495" /></h2>
<p>In my opinion, the problem with this approach is the chance on forgetting classifying a document. So, if you choose Azure Information Protection for achieving this, make sure no documents get through without classification and give your users clear instructions.</p>
<p>Another way with Azure Information Protection is the automatic labeling function. You can do this, based on document content. With PDF-files however (and any filetype other than docx, pptx, xlsx), you can only achieve this with the AIP scanner (check point 3). To configure automatic labeling, take the same steps as before but also configure a condition and create a regex policy or fill in predefined keywords:</p>
<p><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/08/azure-information-protection-conditions-300x120.png" alt="" width="300" height="120" /></p>
<h2><a id="cloud-app-security">2. Cloud App Security</a></h2>
<p>Using Cloud App Security, you can automatically classify documents when they reside in a specific folder or when the document contains sensitive information. Personally, I would love the last one, but it’s currently not possible to scan PDF files with Cloud App Security so the first option is the only working option at the moment.</p>
<p>We will discuss both options however. First let’s see how it works when sensitive files are stored in a specific folder. Go to <a href="https://portal.cloudappsecurity.com/" target="_blank" rel="noopener">https://portal.cloudappsecurity.com/</a>, click “Control &gt; Policies &gt; Create policy &gt; File policy”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/cloud-app-security-create-policy.png" alt="" width="1324" height="501" /></h2>
<p>Select as condition “Parent folder” and select the folder:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/cloud-app-security-conditions.png" alt="" width="816" height="161" /></h2>
<p>Apply a classification label beneath “Microsoft OneDrive for Business” and “Microsoft SharePoint Online”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/cloud-app-security-rule.png" alt="" width="448" height="398" /></h2>
<p>Create the policy, now all content in that folder will have automatically the content expiration activated. Of course, you need to configure content expiration for the label set. See step 1 for more details.</p>
<p>Let’s see how automatic labeling with Cloud App Security works. Create a File policy again and scroll down till the “Inspection method” part. We skip the conditions for now since we did that just before and it’s straight forward as well.</p>
<p>Select “Data Classification Service &gt; Match if Any of the following occur &gt; Choose inspection type… &gt; Select a sensitive information type”:</p>
<p><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/08/cloud-app-security-apply-classification-label-300x300.png" alt="" width="300" height="300" /></p>
<p>Here you can select a sensitive information type, or you can add a custom information type. You need to know regular expressions, but it’s not too hard.</p>
<p>For adding a custom information type, click the + button on the right:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/cloud-app-security-custom-rule.png" alt="" width="1832" height="512" /></h2>
<p>Once added, click “Done” and navigate to the bottom. Now again select the classification label you want to apply for “Microsoft OneDrive for Business” and “Microsoft SharePoint Online”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/cloud-app-security-rule.png" alt="" width="431" height="383" /></h2>
<p>All matched files are now automatically classified with “Confidential” (make sure you configure the content expiration again in Azure Information Protection).</p>
<p>Remember, it’s not working yet with PDF-files but will be available in future versions.</p>
<h2><a id="aip-scanner">3. AIP Scanner</a></h2>
<p>This is more or less the same as step 2, only the tool is different and it’s possible to scan PDF files. You still need to know regular expressions (or you need to choose predefined templates like “Credit Card Number”). the scanner uses the Office 365 data loss prevention (DLP) service. For configuration of the filetypes in DLP, see point 4.</p>
<p>The actual configuration of the AIP scanner is not covered in this post, since there are already many great posts how to do this.</p>
<h2><a id="data-loss-prevention">4. Data Loss Prevention</a></h2>
<p>DLP has great potential for achieving this task, especially because you can connect with Exchange Online which means you can scan e-mail attachments and restrict or encrypt the content when a condition matches.</p>
<p>However, one big flaw is that DLP cannot scan PDF files (yet), same goes for Cloud App Security. They both use the same core functionality, but I expect this possibility the coming months. Till then, we cannot use this functionality for scanning PDF files.</p>
<p>To create a custom classification type to use within a DLP policy, go to “<a href="https://protection.office.com" target="_blank" rel="noopener">https://protection.office.com</a> &gt; Classifications &gt; Custom sensitive information types”:</p>
<p><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/08/data-loss-prevention-custom-policies-157x300.png" alt="" width="157" height="300" /></p>
<p>Now click “Create” and add a Regular expression:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/data-loss-prevention-regular-expressions.png" alt="" width="1237" height="758" /></h2>
<p>At this point, click “Finish” and add a DLP policy. Click on “Data loss prevention &gt; Policy &gt; Create a policy”. Walk through the steps, at the “Policy settings” tab click “Use advanced settings”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/data-loss-prevention-advanced-settings.png" alt="" width="1204" height="539" /></h2>
<p>Click “New rule” and within the “Conditions” tab, click “Content contains &gt; Sensitive info types”:</p>
<p><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/08/data-loss-prevention-conditions-300x264.png" alt="" width="300" height="264" /></p>
<p>Now select your just created custom policy. On the “Actions” tab, select “Block people from sharing and restrict access to shared content” and “Everyone. Only the content owner, the last modifier, and the site admin will continue to have access”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/data-loss-prevention-actions.png" alt="" width="964" height="332" /></h2>
<p>Fill in the other desired settings and save the policy.</p>
<h2><a id="exchange-online-retention-policies">5. Exchange Online retention policies</a></h2>
<p>With Exchange Online retention policies, you can achieve best of all worlds. You can just delete content matching a custom information type that you created with regex. So, it’s possible to apply this to Exchange, SharePoint and OneDrive!</p>
<p>Go to “<a href="https://protection.office.com" target="_blank" rel="noopener">https://protection.office.com</a> &gt; Data governance &gt; Retention &gt; Create”. Create a custom retention policy and add a “Sensitive info types”:</p>
<h2><img decoding="async" src="http://erjenrijnders.nl/wp-content/uploads/2018/04/exchange-online-retention-policy.png" alt="" width="900" height="815" /></h2>
<p>Make sure you delete the content after the period you define, from the data when it was labeled.</p>
<p>One caveat with this option is that you don’t have much conditions. You can only choose to which location you want to apply it (SharePoint Online, OneDrive or Exchange Online).</p>
<p><strong> </strong></p>
<p><strong><a id="conclusion">Conclusion</a></strong></p>
<p>As you figured out by now, it’s impossible to use one tool for scanning your complete environment (if you both use on-premises file server and cloud-based file servers). Also, scanning PDF-files is apparently hard and even impossible to scan Exchange Online PDF files with a tool like Azure Information Protection, Data Loss Prevention or Cloud App Security. Fortunately, it’s possible with retention policies.</p>
<p>In the scenario where you only use SharePoint, OneDrive and Exchange Online and you also want to scan PDF-files, the best option would be using retention policies. Keep in mind that you do not have much options in conditions. In case you need more freedom in conditions and still need to scan PDF-files, you have to wait for this functionality to become available in AIP, DLP and MCAS.</p>
<p>You might have an on-premises file server as well, where you want to apply labels automatically, you need the AIP-scanner since it can scan PDF files.</p>
<p>If you have any questions, feel free to contact me or place a comment below.</p>
<p>The post <a href="https://erjenrijnders.nl/2018/08/21/gdpr-how-to-automatically-delete-sensitive-content/">GDPR: how to automatically delete sensitive content</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2018/08/21/gdpr-how-to-automatically-delete-sensitive-content/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>AIP label-based encryption</title>
		<link>https://erjenrijnders.nl/2018/07/03/aip-label-based-encryption/</link>
					<comments>https://erjenrijnders.nl/2018/07/03/aip-label-based-encryption/#respond</comments>
		
		<dc:creator><![CDATA[Erjen]]></dc:creator>
		<pubDate>Tue, 03 Jul 2018 19:12:04 +0000</pubDate>
				<category><![CDATA[Azure Information Protection]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Azure-information-protection]]></category>
		<category><![CDATA[aip]]></category>
		<guid isPermaLink="false">http://erjenrijnders.nl/?p=73792</guid>

					<description><![CDATA[<p>If you visited my session @Experts Live 2018, you saw the possibility to integrate Azure Information Protection with Office Message Encryption. [&#8230;]</p>
<p>The post <a href="https://erjenrijnders.nl/2018/07/03/aip-label-based-encryption/">AIP label-based encryption</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>If you visited my session @Experts Live 2018, you saw the possibility to integrate Azure Information Protection with Office Message Encryption. Basically, this means that you can encrypt e-mails based on a chosen AIP label.</p>
<p>At first, this is officially not supported but it’s working flawlessly and since you make use of the e-mail header, it’ll always work.</p>
<p>Lets pick a label in Word, for example “Confidential”. I have configured that Outlook automatically takes over the label from the document as you can see in below screenshots:</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73827" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-label-300x85.png" alt="" width="300" height="85" srcset="https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-label-300x85.png 300w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-label.png 596w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>&nbsp;</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73828" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-automatic-label-300x145.png" alt="" width="300" height="145" srcset="https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-automatic-label-300x145.png 300w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-automatic-label.png 469w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>&nbsp;</p>
<p>Now we want to make sure that this e-mail is encrypted, without the need for the user to select the “Do Not Forward” button (which is also only available with the AIP client) and without the need for the AIP client to be installed.</p>
<p>Go to “Exchange admin center &gt; mail flow &gt; new rule &gt; select Apply Office 365 Message Encryption and rights protection to messages…”</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73831" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-OME-300x226.png" alt="" width="300" height="226" srcset="https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-OME-300x226.png 300w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-OME-600x453.png 600w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-OME.png 680w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>If you check the e-mail header from an e-mail where you selected “Confidential”, you will see that the sensitivity is set to “Confidential”:</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73832" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-sensitivity-300x39.png" alt="" width="300" height="39" srcset="https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-sensitivity-300x39.png 300w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-sensitivity-600x78.png 600w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-sensitivity.png 632w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>So we have to make sure that OME is applied when an e-mail header matches “Confidential”.</p>
<p>the header name is called “msip_labels”</p>
<p>Configure it like this (make sure you configure multiple if you use multiple languages with AIP):</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73830" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-exchange-rule-300x232.png" alt="" width="300" height="232" srcset="https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-exchange-rule-300x232.png 300w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-exchange-rule-600x464.png 600w, https://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-exchange-rule.png 724w" sizes="(max-width: 300px) 100vw, 300px" /></p>
<p>Now wait a few minutes (can take up to one hour before your changes are synced through the 220 thousand Exchange servers) and try it out! You should you receive the e-mail now as a protected e-mail:</p>
<p><img decoding="async" class="alignnone size-medium wp-image-73829" src="http://erjenrijnders.nl/wp-content/uploads/2018/05/azure-information-protection-encrypted-email.png" alt="" width="259" height="59" /></p>
<p><strong>Note that if you encrypt the e-mail, by default it will also encrypt Office documents. And because they are encrypted by OME, you cannot track the document (yet).</strong></p>
<p>The post <a href="https://erjenrijnders.nl/2018/07/03/aip-label-based-encryption/">AIP label-based encryption</a> appeared first on <a href="https://erjenrijnders.nl">Erjen Rijnders</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://erjenrijnders.nl/2018/07/03/aip-label-based-encryption/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
