<?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>Security Archives - the Sysadmin Channel</title>
	<atom:link href="https://thesysadminchannel.com/security/feed/" rel="self" type="application/rss+xml" />
	<link>https://thesysadminchannel.com/security/</link>
	<description>Documenting My Life as a System Administrator</description>
	<lastBuildDate>Mon, 25 Sep 2023 02:21:20 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
<site xmlns="com-wordpress:feed-additions:1">144174110</site>	<item>
		<title>Block Unmanaged Devices Using Conditional Access</title>
		<link>https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/</link>
					<comments>https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Mon, 25 Sep 2023 02:21:20 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Office365]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[block unmanaged devices conditional access]]></category>
		<category><![CDATA[conditional access block sharepoint but not teams]]></category>
		<category><![CDATA[restrict m365 apps in browser]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=4839</guid>

					<description><![CDATA[<p>For most, the days of working off an entire on-premises environment where you have to connect to VPN in order to access email or your files is long gone. The world has shifted to hybrid or cloud only environments and&#8230; <a href="https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/">Block Unmanaged Devices Using Conditional Access</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>For most, the days of working off an entire on-premises environment where you have to connect to VPN in order to access email or your files is long gone.  The world has shifted to hybrid or cloud only environments and with that, it&#8217;s important to ensure your data is only accessible to devices that only you authorize. Today we are going to go over the methods on how to limit access when using a browser as well as the methods to <strong>block unmanaged devices using conditional access</strong>.</p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#unmanageddevice">What Classifies an Unmanaged Device</a></li>
<li><a href="#limitaccess">Limit Browser Access on Unmanaged Devices for M365 Apps</a></li>
<ul>
<li><a href="#limitspo">Limited Browser Access for SharePoint Online</a></li>
<ul>
<li><a href="#limitspopersite">Apply on a Per-Site Basis</a></li>
<li><a href="#limitspotenant">Apply at the Tenant Level</a></li>
</ul>
<li><a href="#limitexo">Limited Browser Access for Exchange Online</a></li>
<ul>
<li><a href="#limitexopermailbox">Apply on a Per-Mailbox Basis</a></li>
<li><a href="#limitexotenant">Apply at the Tenant Level</a></li>
</ul>
</ul>
<li><a href="#blockaccess">Block Unmanaged Devices Using Conditional Access</a></li>
<li><a href="#restrictaccess">Restrict Browser Access on Unmanaged Devices Using Conditional Access</a></li>
<li><a href="#extensions">Incognito Mode and Browser Extensions</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<p>&nbsp;</p>
<div id="requirements" style="scroll-margin-top: 10px;"></div>
<h2>Requirements</h2>
<p>Before we go into the details on how to set this up, we first need to ensure that we have everything in place so everything works as expected. Here&#8217;s what is needed.</p>
<ul>
<li>Azure AD P1 or P2 license for conditional access</li>
<li>Security Administrator, Conditional Access Administrator or Global Administrator</li>
<li>SharePoint Administrator or Global Administrator</li>
<li>Exchange Administrator or Global Administrator</li>
<li>Microsoft.Online.SharePoint.PowerShell PowerShell Module</li>
<li>ExchangeOnlineManagement PowerShell Module</li>
</ul>
<p>&nbsp;</p>
<p>To touch a bit on these requirements, we need to ensure we have an Azure AD P1 or P2 license so we can have access to use conditional access policies.  This is going to be the foundation of what we&#8217;re going to use to either limit or block unmanaged devices from accessing anything in the cloud.  Also as of today, Security Administrator, Conditional Access Administrator or Global Administrator are the only roles that are able to modify CA policies. So we will need at least one of those.<br />
&nbsp;</p>
<p>Exchange Administrator and SharePoint Administrators are needed to be able to set the respective platform policies to limited access.  A bit more on that later.</p>
<div id="unmanageddevice" style="scroll-margin-top: 10px;"></div>
<h2>What Classifies as an Unmanaged Device</h2>
<p>An unmanaged device is typically a device that is not issued by your organization.  It is often synonymous with BYOD (Bring Your Own Device) and can be anything from a personal computer or phone to a machine that you use to access emails while at grandma&#8217;s house.  The point here is that it doesn&#8217;t have any policies and it is not properly governed by the IT department.<br />
&nbsp;</p>
<div id="limitaccess" style="scroll-margin-top: 10px;"></div>
<h2>Limit Browser Access on Unmanaged Devices for M365 Apps</h2>
<p>If you don&#8217;t want to put a full stop on users accessing M365 resources, you do have the ability to limit what they can do while signed in from an unmanaged device.  Simply put, we can enforce policies so users can still sign in using the web only methods, however, they will be blocked from downloading anything to the local machine.<br />
&nbsp;</p>
<p>For most, this is a great happy medium because it still keeps your data secure to a certain extent and users can access their documents if they don&#8217;t have their company issued device around.<br />
&nbsp;</p>
<p>This is in fact a two-step process so we&#8217;ll target SharePoint/OneDrive and Exchange Online now.  Then we will finish it off with the CA Policies.</p>
<div id="limitspo" style="scroll-margin-top: 10px;"></div>
<h2>Limited Browser Access for SharePoint Online</h2>
<p>If you want to take this in incremental steps you definitely can.  Being able to set limited access on specific sites is supported so it&#8217;s definitely recommended you take that approach first. In my opinion it will be a good test to set limited access on a few SharePoint sites as well as a few OneDrive sites.<br />
&nbsp;</p>
<p>Let&#8217;s connect to SharePoint Online using the <a href="https://www.powershellgallery.com/packages/Microsoft.Online.SharePoint.PowerShell/" rel="noopener" target="_blank">Microsoft.Online.SharePoint.PowerShell</a> PowerShell Module.</p>
<pre class="brush: powershell; title: ; notranslate">
Import-Module Microsoft.Online.SharePoint.PowerShell -WarningAction SilentlyContinue
$adminURL = 'https://&lt;tenantname&gt;-admin.sharepoint.com'
Connect-SPOService -Url $adminURL -WarningAction SilentlyContinue
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Connect-SharePoint-Online.png" target="_blank" rel="noopener"><img fetchpriority="high" decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Connect-SharePoint-Online.png" alt="Connect-SharePoint Online" width="861" height="215" class="aligncenter size-full wp-image-4848" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Connect-SharePoint-Online.png?v=1695425407 861w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Connect-SharePoint-Online-768x192.png?v=1695425407 768w" sizes="(max-width: 861px) 100vw, 861px" /></a><br />
&nbsp;</p>
<div id="limitspopersite" style="scroll-margin-top: 10px;"></div>
<h4>Apply on a Per-Site Basis</h4>
<p>Next, let&#8217;s take a look at the conditional access property within the <strong><em>Get-SPOSite</em></strong> cmdlet.  This is what we&#8217;ll use to be able to limit access on specific SharePoint (or OneDrive) sites before we deploy this on the tenant level. By default, this should be set to allow full access.  Meaning anyone can access this SharePoint site from anywhere and there wouldn&#8217;t be any restrictions in place.</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Get-SPO-Site-PowerShell.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Get-SPO-Site-PowerShell.png" alt="Get SPOSite PowerShell" width="860" height="265" class="aligncenter size-full wp-image-4851" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Get-SPO-Site-PowerShell.png?v=1695486802 860w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Get-SPO-Site-PowerShell-768x237.png?v=1695486802 768w" sizes="(max-width: 860px) 100vw, 860px" /></a><br />
&nbsp;</p>
<p>With that out of the way, let&#8217;s change the access to allow limited, web only access for this site as well as a OneDrive site. To accomplish this we&#8217;re going to use the <strong><em>Set-SPOSite</em></strong> cmdlet along with the <strong><em>-ConditionalAccessPolicy</em></strong> Parameter.<br />
&nbsp;</p>
<p>This parameter supports the following inputs:</p>
<ul>
<li>AllowFullAccess: Allows full access from desktop apps, mobile apps, and the web</li>
<li>AllowLimitedAccess: Allows limited, web-only access</li>
<li>BlockAccess: Blocks Access</li>
<li>AuthenticationContext: Assign an Azure AD authentication context. Must add the AuthenticationContextName</li>
</ul>
<pre class="brush: powershell; title: ; notranslate">
$SiteURL = 'https://thesysadminchannel.sharepoint.com/sites/someproject'
$OneDriveURL = 'https://thesysadminchannel-my.sharepoint.com/personal/buzz_thesysadminchannel_com'

Set-SPOSite -Identity $SiteURL -ConditionalAccessPolicy AllowLimitedAccess
Set-SPOSite -Identity $OneDriveURL -ConditionalAccessPolicy AllowLimitedAccess

$SiteURL, $OneDriveURL | ForEach-Object {Get-SPOSite -Identity $_ | select Title, ConditionalAccessPolicy}

Title          ConditionalAccessPolicy
-----          -----------------------
SomeProject         AllowLimitedAccess
Buzz Lightyear      AllowLimitedAccess
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-SPOSite-Conditional-Access-Block.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-SPOSite-Conditional-Access-Block.png" alt="Set SPOSite Conditional Access Block" width="1040" height="387" class="aligncenter size-full wp-image-4855" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-SPOSite-Conditional-Access-Block.png?v=1695488188 1040w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-SPOSite-Conditional-Access-Block-1024x381.png?v=1695488188 1024w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-SPOSite-Conditional-Access-Block-768x286.png?v=1695488188 768w" sizes="(max-width: 1040px) 100vw, 1040px" /></a><br />
&nbsp;</p>
<p>Before you start checking the sites you set the limited access on, note that nothing is limited until we configure the CA policies.  It is strongly recommended that you do thorough testing before enabling this at the tenant level. Once you&#8217;ve done that and you&#8217;re ready to set it as the default, you can do that with another cmdlet.  That cmdlet is <strong><em>Set-SPOTenant</em></strong><br />
&nbsp;</p>
<div id="limitspotenant" style="scroll-margin-top: 10px;"></div>
<h4>Apply at the Tenant Level</h4>
<p>Now that you&#8217;re ready to enable this as the default on the tenant level, there is one thing we need to decide on.  That one thing is whether we want to enforce these restrictions on adhoc recipients. What exactly does that mean you say?<br />
&nbsp;</p>
<p>When the feature is enabled, all external users are going to be in scope of the restrictions and users who are accessing SharePoint Online files with a pass code are going to be blocked.<br />
&nbsp;</p>
<div id="blockquote1">
IMPORTANT:  By default when you set this at the tenant level, a conditional access policy is automatically created and scoped to ALL USERS. If you&#8217;re going to roll this out in stages (e.g. by department) I would suggest you immediately disable that policy and create a new CA policy that is finetuned to your liking.
</div>
<pre class="brush: powershell; title: ; notranslate">
Set-SPOTenant -ConditionalAccessPolicy AllowLimitedAccess -ApplyAppEnforcedRestrictionsToAdHocRecipients: $false
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-PowerShell.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-PowerShell.png" alt="SharePoint Limited Access PowerShell" width="860" height="214" class="aligncenter size-full wp-image-4863" /></a><br />
&nbsp;</p>
<p>When completed, we can also check the SharePoint Admin center to see the same thing.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-gui.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-gui.png" alt="SharePoint Limited Access gui" width="1356" height="604" class="aligncenter size-full wp-image-4866" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-gui.png?v=1695492603 1356w, https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-gui-1024x456.png?v=1695492603 1024w, https://thesysadminchannel.com/wp-content/uploads/2023/09/SharePoint-Limited-Access-gui-768x342.png?v=1695492603 768w" sizes="(max-width: 1356px) 100vw, 1356px" /></a><br />
&nbsp;</p>
<p>Finally, since doing this will automatically create a conditional access policy on our behalf, I would recommend disabling that and crafting one by hand so we can fine tune it to our liking.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Block-Unmanaged-Device-Conditional-Access-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Block-Unmanaged-Device-Conditional-Access-Policy.png" alt="Block Unmanaged Device Conditional Access Policy" width="1053" height="194" class="aligncenter size-full wp-image-4873" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Block-Unmanaged-Device-Conditional-Access-Policy.png?v=1695493643 1053w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Block-Unmanaged-Device-Conditional-Access-Policy-1024x189.png?v=1695493643 1024w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Block-Unmanaged-Device-Conditional-Access-Policy-768x141.png?v=1695493643 768w" sizes="(max-width: 1053px) 100vw, 1053px" /></a></p>
<div id="limitexo" style="scroll-margin-top: 10px;"></div>
<h2>Limited Browser Access for Exchange Online</h2>
<p>Much like the SharePoint Online scenario, we can also limit browser access for users who are trying to access their email when on an unmanaged device. This setting is done using the OwaMailboxPolicy and is configurable for specific mailboxes or at the tenant level.  Before we take a look at each one, we need to connect to Exchange Online via PowerShell.</p>
<pre class="brush: powershell; title: ; notranslate">
Connect-ExchangeOnline -UserPrincipalName user@domain.com -ShowBanner: $false
</pre>
<p>&nbsp;</p>
<div id="limitexopermailbox" style="scroll-margin-top: 10px;"></div>
<h4>Apply on a Per-Mailbox Basis</h4>
<p>Again, it&#8217;s always a great idea to test on a few people to ensure you&#8217;re able to get the results you want.  There&#8217;s nothing worse than enabling a policy and having to revert back because of incidents that could have very well been avoided if it was properly tested.<br />
&nbsp;</p>
<p>To set the limited access on a few mailboxes we&#8217;re going to need to create a new OwaMailboxPolicy and then set the same conditional access parameter to readonly.<br />
&nbsp;<br />
In case you&#8217;re interested, here is what the supported inputs are for that parameter:</p>
<ul>
<li>Off: No conditional access policy is applied to Outlook on the web. This is the default value</li>
<li>ReadOnly: Users can&#8217;t download attachments to their local computer, and can&#8217;t enable Offline Mode on non-compliant computers. They can still view attachments in the browser</li>
<li>ReadOnlyPlusAttachmentsBlocked: All restrictions from ReadOnly apply, but users can&#8217;t view attachments in the browser</li>
</ul>
<p>&nbsp;</p>
<pre class="brush: powershell; title: ; notranslate">
$OwaPolicy = New-OwaMailboxPolicy -Name LimitAccess
Set-OwaMailboxPolicy -Identity LimitAccess -ConditionalAccessPolicy ReadOnly
Get-OwaMailboxPolicy | select Name, IsDefault, ConditionalAccessPolicy

Name                     IsDefault ConditionalAccessPolicy
----                     --------- -----------------------
OwaMailboxPolicy-Default      True Off
LimitAccess                  False ReadOnly
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy.png" alt="Set OwaMailboxPolicy" width="860" height="249" class="aligncenter size-full wp-image-4876" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy.png?v=1695495316 860w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-768x222.png?v=1695495316 768w" sizes="(max-width: 860px) 100vw, 860px" /></a><br />
&nbsp;</p>
<p>With the OwaMailboxPolicy now created, let&#8217;s apply that policy to a few users so we can do our testing.  To apply we will use the <strong><em>Set-CASMailbox</em></strong> cmdlet.</p>
<pre class="brush: powershell; title: ; notranslate">
Set-CASMailbox darth -OwaMailboxPolicy LimitAccess
Get-CASMailbox darth | select DisplayName, OwaMailboxPolicy

DisplayName OwaMailboxPolicy
----------- ----------------
Darth Vader LimitAccess
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-mailbox.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-mailbox.png" alt="Set OwaMailboxPolicy on mailbox" width="853" height="264" class="aligncenter size-full wp-image-4878" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-mailbox.png?v=1695496064 853w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-mailbox-768x238.png?v=1695496064 768w" sizes="(max-width: 853px) 100vw, 853px" /></a><br />
&nbsp;</p>
<div id="limitexotenant" style="scroll-margin-top: 10px;"></div>
<h4>Apply at the Tenant Level</h4>
<p>After we&#8217;ve tested for a bit, we can now apply this as the default setting at the tenant level.  To accomplish this, we will use the <strong><em>Set-OwaMailboxPolicy</em></strong> and and modify the &#8220;OwaMailboxPolicy-Default&#8221; to use the readonly conditional access policy.<br />
&nbsp;</p>
<pre class="brush: powershell; title: ; notranslate">
Set-OwaMailboxPolicy -Identity OwaMailboxPolicy-Default -ConditionalAccessPolicy ReadOnly
Get-OwaMailboxPolicy | select Name, IsDefault, ConditionalAccessPolicy

Name                     IsDefault ConditionalAccessPolicy
----                     --------- -----------------------
OwaMailboxPolicy-Default      True ReadOnly
LimitAccess                  False ReadOnly
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-Tenant.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-Tenant.png" alt="Set OwaMailboxPolicy on Tenant" width="899" height="231" class="aligncenter size-full wp-image-4880" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-Tenant.png?v=1695578800 899w, https://thesysadminchannel.com/wp-content/uploads/2023/09/Set-OwaMailboxPolicy-on-Tenant-768x197.png?v=1695578800 768w" sizes="(max-width: 899px) 100vw, 899px" /></a><br />
&nbsp;</p>
<div id="blockaccess" style="scroll-margin-top: 10px;"></div>
<h2>Block Unmanaged Devices Using Conditional Access</h2>
<p>If you&#8217;re wondering why nothing has changed after setting the SharePoint or Exchange settings, it&#8217;s because your conditional access policies are the tools that are going to be enforcing these restrictions.  The platform settings are the underlying scoping policies, however the conditional access policies are the overlying restriction setting.  Since we ended up setting both platform restrictions at the tenant level, the users we add (and ONLY those users) in the conditional access policy should have this setting enforced.  Hopefully that clears up any confusion.<br />
&nbsp;</p>
<p>Similar to the default SharePoint policies that were automatically created, there are 2 policies we need to create so we can block unmanaged devices as well as restrict browser access if they&#8217;re not on an IT issued device.  We can use those as rough templates to get us started.<br />
&nbsp;</p>
<p>Within Azure AD:</p>
<ul>
<li>Navigate to Security → Conditional Access → Policies → New Policy</li>
<ul>
<li>Direct Link: <a href="https://portal.azure.com/#view/Microsoft_AAD_ConditionalAccess/ConditionalAccessBlade/~/Policies" rel="noopener" target="_blank">Conditional Access Blade</a>
    </ul>
<li><strong>Name</strong>: CA015: Block Unmanaged Devices for All Users</li>
<li>Under Users:</li>
<ul>
<li><strong>Include</strong>: All Users (or smaller groups for testing)</li>
<li><strong>Exclude</strong>: Break glass account, MFA exclude group and all Guest users</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment.png" alt="CA Policy User Assignment" width="959" height="648" class="aligncenter size-full wp-image-4883" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment.png?v=1695584729 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment-768x519.png?v=1695584729 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Target Resources:</li>
<ul>
<li><strong>Include</strong>: All Cloud Apps (or M365 Apps for testing)</li>
<li><strong>Exclude</strong>: None</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-App-Assignment.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-App-Assignment.png" alt="CA Policy App Assignment" width="959" height="648" class="aligncenter size-full wp-image-4884" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-App-Assignment.png?v=1695584755 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-App-Assignment-768x519.png?v=1695584755 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Conditions: No Changes needed (or exclude iOS and Android Devices for testing)</li>
<li>Under Grant:</li>
<ul>
<li><strong>Require device to be marked as compliant</strong>: Checked</li>
<li><strong>Require Hybrid Microsoft Entra joined device</strong>: Checked</li>
<li><strong>Require one of the selected controls</strong>: Is selected</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Grant-Control.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Grant-Control.png" alt="CA Policy Grant Control" width="959" height="648" class="aligncenter size-full wp-image-4885" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Grant-Control.png?v=1695584779 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Grant-Control-768x519.png?v=1695584779 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Sessions: No Changes needed</li>
</ul>
<p>&nbsp;</p>
<div id="restrictaccess" style="scroll-margin-top: 10px;"></div>
<h2>Restrict Browser Access on Unmanaged Devices Using Conditional Access</h2>
<p>Earlier we setup the policies on Exchange Online and SharePoint to be able to limit browser access while using an unmanaged device.  The policy on that platform is set, however, as mentioned earlier, we need to be able to enforce this using conditional access policies.  Let&#8217;s do that now.<br />
&nbsp;</p>
<p>Within Azure AD:</p>
<ul>
<li>Navigate to Security → Conditional Access → Policies → New Policy</li>
<ul>
<li>Direct Link: <a href="https://portal.azure.com/#view/Microsoft_AAD_ConditionalAccess/ConditionalAccessBlade/~/Policies" rel="noopener" target="_blank">Conditional Access Blade</a>
    </ul>
<li><strong>Name</strong>: CA016: Restrict Browser Access to Unmanaged Devices for All Users</li>
<li>Under Users:</li>
<ul>
<li><strong>Include</strong>: All Users (or smaller groups for testing)</li>
<li><strong>Exclude</strong>: Break glass account, MFA exclude group and all Guest users</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment-Restriction.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment-Restriction.png" alt="CA Policy User Assignment Restriction" width="959" height="648" class="aligncenter size-full wp-image-4890" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment-Restriction.png?v=1695601587 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-User-Assignment-Restriction-768x519.png?v=1695601587 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Target Resources:</li>
<ul>
<li><strong>Include</strong>: Office 365</li>
<li><strong>Exclude</strong>: None</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Target-Resource-Restriction.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Target-Resource-Restriction.png" alt="CA Policy Target Resource Restriction" width="959" height="648" class="aligncenter size-full wp-image-4899" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Target-Resource-Restriction.png?v=1695604471 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Target-Resource-Restriction-768x519.png?v=1695604471 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Conditions: </li>
<ul>
<li><strong>Client Apps → Browser</strong>: Checked</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Conditions-Client-App-Restriction.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Conditions-Client-App-Restriction.png" alt="CA Policy Conditions Client App Restriction" width="959" height="648" class="aligncenter size-full wp-image-4900" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Conditions-Client-App-Restriction.png?v=1695604502 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Conditions-Client-App-Restriction-768x519.png?v=1695604502 768w" sizes="(max-width: 959px) 100vw, 959px" /></a></p>
<li>Under Grant: No changes needed</li>
<li>Under Sessions:</li>
<ul>
<li><strong>Use app enforced restrictions</strong>: Checked</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Session-App-Enforced-Restriction.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Session-App-Enforced-Restriction.png" alt="CA Policy Session App Enforced Restriction" width="959" height="648" class="aligncenter size-full wp-image-4901" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Session-App-Enforced-Restriction.png?v=1695604537 959w, https://thesysadminchannel.com/wp-content/uploads/2023/09/CA-Policy-Session-App-Enforced-Restriction-768x519.png?v=1695604537 768w" sizes="(max-width: 959px) 100vw, 959px" /></a>
</ul>
<p>&nbsp;</p>
<div id="extensions" style="scroll-margin-top: 10px;"></div>
<h2>Incognito Mode and Browser Extensions</h2>
<p>One important item to call out is that your users can continue to have issues even though their device is compliant or Hybrid Azure AD Joined.  This is because certain browsers don&#8217;t have the functionality built-in to send the device payload so the CA policy can properly evaluate it.<br />
&nbsp;</p>
<ul>
<li>Edge: Functionality is built-in so testing with Edge is always recommended</li>
<li>Chrome: <a href="https://chrome.google.com/webstore/detail/windows-accounts/ppnbnpeolgkicgegkbkbjmhlideopiji" rel="noopener" target="_blank">Windows 10 accounts extension</a> is required for Chrome v111+</li>
<li>FireFox: <a href="https://support.mozilla.org/en-US/kb/windows-sso" rel="noopener" target="_blank">FireFox Windows SSO</a> is required</li>
<li>Incognito Mode: extensions should be abled for incognito mode as well</li>
</ul>
<p>If you&#8217;re STILL having issues after ensure your device is in the proper state and you have the proper extensions installed, one thing that I&#8217;ve learned is clear the cache and cookies and that resolves most of the issues.<br />
&nbsp;</p>
<div id="conclusion" style="scroll-margin-top: 10px;"></div>
<h2>Conclusion</h2>
<p>Hopefully this article on how to limit or restrict browser access to Microsoft 365 apps as well as block unmanaged devices using conditional access was insightful.  This should help add a bit more strength to your overall security posture so that&#8217;s always a good thing.<br />
&nbsp;</p>
<p>This policy is very powerful so you need to make sure you do some thorough testing before enabling the policy globally.  Another policy I would highly recommend is to <a href="https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/" rel="noopener" target="_blank">Enable Authentication Strengths Using Conditional Access</a> so you can set higher profile apps to use phishing resistant MFA.</p>
<p>The post <a href="https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/">Block Unmanaged Devices Using Conditional Access</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/block-unmanaged-devices-using-conditional-access/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4839</post-id>	</item>
		<item>
		<title>Securely Reduce MFA Prompts in Azure AD</title>
		<link>https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/</link>
					<comments>https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Sun, 05 Mar 2023 04:24:08 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Azure MFA keeps prompting your users]]></category>
		<category><![CDATA[MFA prompt frequency best practices]]></category>
		<category><![CDATA[Office 365 MFA prompts every time]]></category>
		<category><![CDATA[Reduce MFA prompts in Azure AD]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=4709</guid>

					<description><![CDATA[<p>In this day and age, it is imperative that organizations enforce MFA to enhance their security posture. As threat actors become equipped with more sophisticated tools, we need to ensure we enforce strong authentication requirements for all users, all the&#8230; <a href="https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/">Securely Reduce MFA Prompts in Azure AD</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In this day and age, it is imperative that organizations enforce MFA to enhance their security posture.  As threat actors become equipped with more sophisticated tools, we need to ensure we enforce strong authentication requirements for all users, all the time. However, more MFA prompts does not equate to better security.  In fact it is quite the opposite, but we&#8217;ll touch on that later.  Today we&#8217;re going to cover how to <strong>securely reduce MFA Prompts in Azure AD</strong>.</p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#whatnottodo">The Don’ts. What NOT to do if Azure MFA Keeps Prompting</a></li>
<li><a href="#analytics">Authentication Prompts Analysis: See Whos Is Getting Prompted for MFA</a></li>
<li><a href="#reduceprompts">How to Reduce MFA Prompts in Azure AD</a></li>
<ul>
<li><a href="#wh4b">Windows Hello for Business</a></li>
<li><a href="#chromeextension">Windows 10 Accounts Chrome extension</a></li>
<li><a href="#macsso">Enterprise SSO for Apple Devices</a></li>
</ul>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>If you&#8217;ve implemented MFA across the entire org or you&#8217;re just about to go down that path it is important to know there are tools and licenses you should have in place to make the experience a much better one.  Let&#8217;s touch on those a bit now.<br />
&nbsp;</p>
<p>While Azure AD P2 licenses are preferred, having a P1 license will grant you access to conditional policies, Log Analytics and other Azure AD features. Technically all you need is a single P2 license to enable these features however, all users that are using the features should be licensed for it.</p>
<div id="whatnottodo" style="scroll-margin-top: 15px;"></div>
<h2>What NOT to do if Azure MFA Keeps Prompting</h2>
<p>Before we go into detail on what MFA prompt frequency best practices are and what we can do suppress them, let&#8217;s take some time to discuss what we should NOT be doing.  These &#8220;don&#8217;ts&#8221; are called out because of the security implications it can have on your AAD environment.<br />
&nbsp;</p>
<p>I see it time and time again when scrolling through Twitter, Reddit or other articles, people recommend whitelisting their office public IP addresses as a way to bypass MFA.  After all, if you&#8217;re in a building that probably requires a badge to gain access, we should be good right?  WRONG!<br />
&nbsp;</p>
<p>Tailgating does happen in the wild and if you set policies to bypass MFA for people in the office, you have effectively punched security holes into your environment.  Aside from that, many office buildings have guest wi-fi networks for their visitors that someone can easily connect to. If the guest network is configured to use the same outbound public IP as the corporate network, you&#8217;ve just opened yourself up to a potential world of hurt. If that still doesn&#8217;t convince you, figuring out how to spoof a public IP address is just a Google search away so these methods should be avoided at all costs.<br />
&nbsp;</p>
<p>Another setting we want to avoid is to keep the &#8220;remember multi-factor authentication on trusted device&#8221; setting enabled in the <a href="https://account.activedirectory.windowsazure.com/UserManagement/MfaSettings.aspx" rel="noopener" target="_blank">legacy Azure service settings portal</a>. While it does what it says and reduces the number of MFA prompts you will get, it is not the best approach for what we are trying to accomplish.  Microsoft also calls this out on their documentation.</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/03/remember-my-device-mfa-setting.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/03/remember-my-device-mfa-setting.png" alt="remember my device mfa setting to reduce MFA Prompts in Azure AD" width="888" height="392" class="aligncenter size-full wp-image-4717" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/03/remember-my-device-mfa-setting.png 888w, https://thesysadminchannel.com/wp-content/uploads/2023/03/remember-my-device-mfa-setting-768x339.png 768w" sizes="(max-width: 888px) 100vw, 888px" /></a><br />
&nbsp;</p>
<p>I should also mention that requiring an MFA prompt for every sign in, or otherwise purposely overly prompting for MFA can be just as bad.  When someone is constantly getting prompted for MFA, they tend to become numb to the process and mindlessly hit approve. There are ways to mitigate MFA fatigue attacks by implementing MFA number matching but the point still stands.  More MFA prompts does not equate to more security.<br />
&nbsp;</p>
<p>To summarize, here is what we should NOT be doing to reduce MFA prompts in Azure AD:</p>
<ul>
<li>Do NOT whitelist public IPs to bypass MFA</li>
<li>Do NOT enable remember multi-factor authentication on trusted device</li>
<li>Do NOT purposely over prompt for MFA</li>
</ul>
<div id="analytics" style="scroll-margin-top: 15px;"></div>
<h2>Authentication Prompts Analysis: See Whos Is Getting Prompted for MFA</h2>
<p>Azure AD is a platform that can be used as a 100% cloud only solution for your users, or a hybrid solution if you&#8217;re still maintaining an On-Premises environment.  With that said, it also comes equipped with its own audit logging and monitoring tools (when you have Azure AD P1/P2 licenses) so we can use Azure AD workbooks to get insights on who is actually getting prompted for MFA and what applications are prompting them.<br />
&nbsp;</p>
<p>Azure AD has done all of the hard work for you and conveniently created an authentication prompts analysis workbook.<br />
To access it:</p>
<ul>
<li>Navigate to Azure AD → Workbooks</li>
<li>Select Authentication Prompts Analysis workbook</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook.png" alt="Authentication Prompts Analysis workbook" width="1634" height="645" class="aligncenter size-full wp-image-4719" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook.png 1634w, https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook-1024x404.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook-768x303.png 768w, https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-Analysis-workbook-1536x606.png 1536w" sizes="(max-width: 1634px) 100vw, 1634px" /></a><br />
&nbsp;</p>
<p>If you have time I would highly suggest you take a look at the data.  My only suggestion for the workbook would be that they remove &#8220;Windows Sign In&#8221; attempts since that can kind of skew the data.  Windows Sign In is when a user signs in their Windows device so this will not require MFA. However, the workbook lays out several categories for prompts. </p>
<p>Those include:</p>
<ul>
<li>Authentication prompts by authentication method</li>
<li>Authentication prompts by device</li>
<li>Authentication prompts by user</li>
<li>Authentication prompts by application</li>
<li>Authentication prompts by process detail</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-by-Application.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-by-Application.png" alt="Authentication Prompts by Application" width="1100" height="485" class="aligncenter size-full wp-image-4722" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-by-Application.png 1100w, https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-by-Application-1024x451.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2023/03/Authentication-Prompts-by-Application-768x339.png 768w" sizes="(max-width: 1100px) 100vw, 1100px" /></a></p>
<div id="reduceprompts" style="scroll-margin-top: 15px;"></div>
<h2>How to Reduce MFA Prompts in Azure AD</h2>
<p>Now that we&#8217;ve covered who is getting prompted for MFA and more importantly, what NOT to do, let&#8217;s focus on what we should be doing and the <strong>best practices for how to reduce MFA prompts in Azure AD</strong>. Remember, Azure AD is the Identity Provider (IdP) so this applies to all Azure AD cloud applications.  If Office 365 MFA prompts every time, this will ensure the prompts are significantly lowered when implemented successfully.</p>
<div id="wh4b" style="scroll-margin-top: 15px;"></div>
<h3>Windows Hello for Business</h3>
<p>If you&#8217;re looking for best practices to reduce MFA Prompts in Azure AD, Windows Hello for Business is by far the BEST way to securely accomplish this. With Windows Hello for Business enabled, you&#8217;re always using strong authentication and the MFA claims are satisfied automatically.<br />
&nbsp;</p>
<p>This is because when you sign in with WH4B, a Primary Refresh Token (PRT) gets generated at that initial sign in and is presented to all other Azure AD applications when they&#8217;re accessed. This allows for a truly seamless SSO experience and even better, it provides a fantastic user experience. If you&#8217;ve never heard of a PRT, I would highly suggest you take the time to learn more about <a href="https://learn.microsoft.com/en-us/azure/active-directory/devices/concept-primary-refresh-token" rel="noopener" target="_blank">Primary Refresh Tokens</a>. The documentation for this is phenomenal.<br />
&nbsp;</p>
<div id="blockquote1">
If you manage a hybrid environment, be sure to take a look at our guide on <a href="https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/" rel="noopener" target="_blank">How To Enable Windows Hello for Business Cloud Trust</a>.
</div>
<div id="chromeextension" style="scroll-margin-top: 15px;"></div>
<h3>Windows 10 Accounts Chrome extension</h3>
<p>While Edge handles this capability natively in the browser, It strongly recommended that those hard chargers using Google Chrome have the Windows 10 Accounts Chrome extensions deployed on their machine.  If you are NOT using Windows Hello for Business, you will need to MFA to that initial application which will create a PRT that can be used on any subsequent applications.<br />
&nbsp;</p>
<p>If you ARE using WH4B, you will still need to deploy this plugin because Chrome doesn&#8217;t natively support a Primary Refresh Token. As an optional step, you can enable this in incognito mode so users can continue to use their PRT while in private-mode.  Again, Microsoft Edge handles this natively but this is good to know.<br />
&nbsp;</p>
<p>Finally, and probably more importantly, in order to successfully create PRT, the devices will need to be at a minimum Azure AD registered. Non registered devices will not be given a PRT so those devices will continue to be prompted.</p>
<div id="macsso" style="scroll-margin-top: 15px;"></div>
<h3>Enterprise SSO for Apple Devices</h3>
<p>We&#8217;ve covered what to do for Windows devices, but what is the recommendation for MacOS and iOS devices?  After all, it is quite common to see an organization operate with a mix of Apple, Windows and Linux devices in their environment. The answer is <a href="https://learn.microsoft.com/en-us/azure/active-directory/develop/apple-sso-plugin" rel="noopener" target="_blank">Enterprise SSO for Apple devices</a>. There a few requirements that are listed in the documentation so we&#8217;ll summarize that here.<br />
&nbsp;</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2023/03/MDM-requirements.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2023/03/MDM-requirements.png" alt="MDM requirements Reduce MFA Prompts in Azure AD for Apple devices" width="906" height="241" class="aligncenter size-full wp-image-4729" srcset="https://thesysadminchannel.com/wp-content/uploads/2023/03/MDM-requirements.png 906w, https://thesysadminchannel.com/wp-content/uploads/2023/03/MDM-requirements-768x204.png 768w" sizes="(max-width: 906px) 100vw, 906px" /></a><br />
&nbsp;</p>
<p>An important item to note is if your primary MDM solution is not Microsoft Intune, you will need to deploy the SSO extension AND ensure your device is enrolled in Intune.  It doesn&#8217;t have to be managed by Intune, but it must be enrolled so Azure can see the device.</p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>Hopefully this article was able to provide useful insight on how to reduce the number of MFA prompts using secure best practices. Remember, the goal is to require strong authentication all the time, on every application.  However, the trick is to use these methods listed above so MFA requirements are satisfied and you&#8217;re no longer being prompted.<br />
&nbsp;</p>
<p>I personally use Windows Hello for Business and I am prompted once every several months on my standard account because my MFA requirement is already satisfied by claim in the token.</p>
<p>The post <a href="https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/">Securely Reduce MFA Prompts in Azure AD</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/reduce-mfa-prompts-in-azure-ad/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4709</post-id>	</item>
		<item>
		<title>How To Enable Authentication Strengths Using Azure AD Conditional Access Policy</title>
		<link>https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/</link>
					<comments>https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Sat, 29 Oct 2022 20:07:42 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[authentication strength azure ad]]></category>
		<category><![CDATA[enable authentication strengths]]></category>
		<category><![CDATA[Require Fido 2]]></category>
		<category><![CDATA[Require Windows Hello]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=4421</guid>

					<description><![CDATA[<p>We all know it is best practice to enable Multi-Factor Authentication for your user base. However, as we may come to find out, not all MFA methods are created equal. Some methods rely on username and password (weak sauce), while&#8230; <a href="https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/">How To Enable Authentication Strengths Using Azure AD Conditional Access Policy</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>We all know it is best practice to enable Multi-Factor Authentication for your user base. However, as we may come to find out, not all MFA methods are created equal.  Some methods rely on username and password (weak sauce), while others rely on physical devices such as Fido 2 and Windows Hello for Business.  Today we&#8217;re going to show you <strong>how to enable Authentication Strengths in Azure AD using Conditional Access Policies</strong>.</p>
<div id="blockquote1">
<strong>Note</strong>: Follow this step by step guide if you want to <a href="https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/" rel="noopener" target="_blank">Enable Windows Hello for Business Cloud Trust</a>
</div>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#whatisauthenticationstrength">What is Authentication Strength?</a></li>
<li><a href="#strengthtypes">What types of Authentication Strengths are available?</a></li>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#enableauthstrength">Enable Authentication Strengths</a></li>
<li><a href="#configurepolicy">Configure the Conditional Access Policy</a></li>
<li><a href="#userexperience">User Experience</a></li>
<ul>
<li><a href="#scenario1">Scenario 1: The user does NOT have the authentication strength registered</a></li>
<li><a href="#scenario2">Scenario 2:  The user does have the authentication method registered</a></li>
</ul>
<li><a href="#limitations">Known Limitations</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<div id="whatisauthenticationstrength" style="scroll-margin-top: 15px;"></div>
<h2>What is Authentication Strength?</h2>
<p>Authentication strength is a Conditional Access control that enables administrators to specify what combination of authentication techniques can be used to access a cloud resource.<br />
&nbsp;</p>
<p>The Authentication methods policy, which allows administrators to specify the authentication methods to be used across Azure AD applications, forms the basis for authentication strength. Authentication strength enables further control over the application which can depend heavily on variables like access to sensitive resources, user risk, location, and more.<br />
&nbsp;</p>
<p>With this policy enabled, you can require access to high profile applications using ONLY MFA resistant methods like Windows Hello for Business or Fido 2.  For all other applications or resources, you can set a policy to enable any one of the Passwordless methods available to you as an Azure AD user.  With that said, let&#8217;s touch on the different authentication strength types and how they&#8217;ll be useful to your organization.</p>
<div id="strengthtypes" style="scroll-margin-top: 15px;"></div>
<h2>What types of Authentication Strengths are available?</h2>
<p>When requiring MFA, it&#8217;s important to know that some methods are better than others.  If your resource is located in Azure, there are several authentication strengths available to you with little configuration on your end.  It&#8217;s all built-in to the product which is great.<br />
&nbsp;</p>
<p>Regarding the actual types, there are 3 main buckets </p>
<ul>
<li><strong>Password + MFA</strong> (Good)</li>
<li><strong>Passwordless MFA</strong> (Better)</li>
<li><strong>Phishing Resistant MFA</strong> (Best)</li>
</ul>
<p>Here is a table provided by Microsoft that outlines all of the possible types and what bucket they fall into.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/MFA-Authentication-Strength-Types-Diagram.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/MFA-Authentication-Strength-Types-Diagram.png" alt="MFA Authentication Strength Types Diagram" width="860" height="537" class="aligncenter size-full wp-image-4426" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/MFA-Authentication-Strength-Types-Diagram.png 860w, https://thesysadminchannel.com/wp-content/uploads/2022/10/MFA-Authentication-Strength-Types-Diagram-768x480.png 768w" sizes="(max-width: 860px) 100vw, 860px" /></a></p>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>In order to enable authentication strengths, we need check a few boxes to make that happen.  Let&#8217;s cover the requirements needed to ensure you&#8217;re on a road to success.<br />
&nbsp;</p>
<ul>
<li>Azure AD P1/P2 License</li>
<li>Authentication Policy Administrator or Global Administrator</li>
<li>Authentication Methods Policy configured</li>
<li>Enable combined registration</li>
</ul>
<div id="enableauthstrength" style="scroll-margin-top: 15px;"></div>
<h2>Enable Authentication Strengths</h2>
<p>By default Microsoft gives us 3 types of authentication strength policies right out of the box so we can hit the ground running.</p>
<p>Those built-in policies are:</p>
<ul>
<li>Multi-factor authentication</li>
<li>Passwordless MFA</li>
<li>Phishing-resistant MFA</li>
</ul>
<p>&nbsp;</p>
<p>It&#8217;s pretty neat that the 3 built in policies are exactly the same as the three buckets we mentioned above.  That&#8217;s great but what if we wanted to create a custom authentication strength to only allow a specific requirement for a specific Azure resource?  Let&#8217;s look at creating a custom authentication strength policy.<br />
&nbsp;</p>
<p>Within Azure AD:</p>
<ul>
<li>Navigate to <strong>Security</strong> → <strong>Authentication Methods</strong> → <strong>Authentication Strengths</strong></li>
<ul>
<li>Direct Link: <a href="https://portal.azure.com/#view/Microsoft_AAD_IAM/AuthenticationMethodsMenuBlade/~/AuthStrengths" rel="noopener" target="_blank">https://portal.azure.com/#view/Microsoft_AAD_IAM/AuthenticationMethodsMenuBlade/~/AuthStrengths</a></li>
</ul>
<li>Click on <strong>New Authentication Strength</strong></li>
<li>Enter in <strong>Name</strong> and <strong>Description</strong></li>
<li>With the chevrons expanded, select the specific authentication strength you&#8217;re looking to add</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/Create-Authentication-Strength-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/Create-Authentication-Strength-Policy.png" alt="Create Authentication Strength Policy" width="1050" height="706" class="aligncenter size-full wp-image-4445" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/Create-Authentication-Strength-Policy.png?v=1666988569 1050w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Create-Authentication-Strength-Policy-1024x689.png?v=1666988569 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Create-Authentication-Strength-Policy-768x516.png?v=1666988569 768w" sizes="(max-width: 1050px) 100vw, 1050px" /></a><br />
&nbsp;</p>
<ul>
<li>Follow the prompts to create the policy</li>
<li>My custom policy will only allow Windows Hello or Fido 2 to be used</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/New-Authentication-Strength-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/New-Authentication-Strength-Policy.png" alt="New Authentication Strength Policy" width="987" height="645" class="aligncenter size-full wp-image-4437" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/New-Authentication-Strength-Policy.png?v=1666826339 987w, https://thesysadminchannel.com/wp-content/uploads/2022/10/New-Authentication-Strength-Policy-768x502.png?v=1666826339 768w" sizes="(max-width: 987px) 100vw, 987px" /></a></p>
<p>&nbsp;<br />
Once I hit create, we can see that my policy is created.  However, you&#8217;ll notice that it is showing &#8220;Not configured in any policy yet&#8221; under the conditional access policies column.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/Authentication-Strength-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/Authentication-Strength-Policy.png" alt="Authentication Strength Policy" width="1138" height="521" class="aligncenter size-full wp-image-4442" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/Authentication-Strength-Policy.png?v=1666827195 1138w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Authentication-Strength-Policy-1024x469.png?v=1666827195 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Authentication-Strength-Policy-768x352.png?v=1666827195 768w" sizes="(max-width: 1138px) 100vw, 1138px" /></a><br />
&nbsp;</p>
<p>Let&#8217;s move forward to see how we can configure the conditional access policy.</p>
<div id="configurepolicy" style="scroll-margin-top: 15px;"></div>
<h2>Configure the Conditional Access Policy</h2>
<p>Now that we have our custom authentication strength created, let&#8217;s look at how to apply that for a specific set of users and/or applications.  Conditional access policies can have a wide variety of controls you want to put in place, however, for this article we&#8217;ll apply it to a user on a specific app.<br />
&nbsp;</p>
<p>Within Azure AD:</p>
<ul>
<li>Navigate to Security → Conditional Access → Create a new policy</li>
<li>Give the policy a relevant name</li>
<li>Under Users: select the users/groups you want in scope of this policy</li>
<li>Under Cloud apps:  select the apps you want in scope of this policy</li>
<li>Under Grant:</li>
<ul>
<li>Ensure the <strong>Grant access</strong> radio button is selected</li>
<li>Select <strong>Require authentication strength</strong> checkbox</li>
<li>Select the authentication strength you just created (Ours will be <strong>Fido 2 or Windows Hello</strong>)</li>
<li>Select <strong>require all the selected controls</strong></li>
</ul>
<li>Leave the policy in report only mode until you&#8217;re ready to enable it</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-Authentication-Strength-1.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-Authentication-Strength-1.png" alt="Require Authentication Strength" width="998" height="706" class="aligncenter size-full wp-image-4457" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-Authentication-Strength-1.png?v=1667060740 998w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-Authentication-Strength-1-768x543.png?v=1667060740 768w" sizes="(max-width: 998px) 100vw, 998px" /></a></p>
<div id="userexperience" style="scroll-margin-top: 15px;"></div>
<h2>User Experience</h2>
<p>From a user&#8217;s perspective, there are 2 scenarios we need to keep in mind when enforcing an authentication strength through a conditional access policy.  </p>
<ul>
<li>Scenario 1:  The user does NOT have the authentication strength registered</li>
<li>Scenario 2:  The user does have the authentication method registered</li>
</ul>
<p>Let&#8217;s drill down and cover both scenarios so you know exactly what to expect for each. The second scenario is the end goal so we&#8217;ll start with users who have not registered the required authentication strength first.<br />
&nbsp;</p>
<div id="scenario1" style="scroll-margin-top: 15px;"></div>
<h4>The user does NOT have the authentication strength registered</h4>
<p>If a user is in scope of a policy that requires an authentication strength and they have not registered it, what does that look like?<br />
&nbsp;</p>
<p>My new authentication strength CA policy was only scoped to a single user going to Office 365.  This user does not have Fido 2 or Windows Hello registered on their account so here&#8217;s what that looks like when I hit that endpoint.<br />
&nbsp;</p>
<p>First, I am prompted to authenticate using my normal method, then I get a notice saying the following.</p>
<p><em>Keep your account secure<br />
Your organization requires you to set up the following methods of proving who you are.<br />
To complete this sign-in, you need to use one of the methods listed below, but you cannot register those methods here. Please contact your administrator to register one or more of these methods and then try signing into this application again.</p>
<p>Authentication Methods:<br />
Your Required Authentication</em><br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-registration-of-new-method.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-registration-of-new-method.png" alt="Require registration of new method" width="1061" height="483" class="aligncenter size-full wp-image-4459" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-registration-of-new-method.png?v=1667062895 1061w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-registration-of-new-method-1024x466.png?v=1667062895 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/10/Require-registration-of-new-method-768x350.png?v=1667062895 768w" sizes="(max-width: 1061px) 100vw, 1061px" /></a><br />
&nbsp;</p>
<p>From here, the user will need to navigate to <a href="https://aka.ms/mysecurityinfo" rel="noopener" target="_blank">https://aka.ms/mysecurityinfo</a>, follow the prompts and add the required method. You can reference this <a href="https://support.microsoft.com/en-us/account-billing/set-up-a-security-key-as-your-verification-method-2911cacd-efa5-4593-ae22-e09ae14c6698" rel="noopener" target="_blank">MS Doc</a> to register a Fido 2 Security Key.</p>
<div id="scenario2" style="scroll-margin-top: 15px;"></div>
<h4>The user does have the authentication method registered</h4>
<p>Moving on to the second scenario.  If a user is already registered for their required auth strength, let&#8217;s take a peek of what that will look like from a user&#8217;s perspective.<br />
&nbsp;</p>
<p>If you&#8217;re signing in to a new session, you will need to successfully authenticate using the most recent authentication method used.  Azure will then determine if the conditions of the policy apply and if it does, you&#8217;ll be prompted to verify the identity using the required auth strength.  In my case, I&#8217;m required to use Fido 2.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/1-Require-Fido-2.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/1-Require-Fido-2.png" alt="Require Fido 2" width="1022" height="629" class="aligncenter size-full wp-image-4467" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/1-Require-Fido-2.png 1022w, https://thesysadminchannel.com/wp-content/uploads/2022/10/1-Require-Fido-2-768x473.png 768w" sizes="(max-width: 1022px) 100vw, 1022px" /></a></p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/10/2-Require-Fido-2.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/10/2-Require-Fido-2.png" alt="Require Fido 2" width="1025" height="751" class="aligncenter size-full wp-image-4468" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/10/2-Require-Fido-2.png 1025w, https://thesysadminchannel.com/wp-content/uploads/2022/10/2-Require-Fido-2-768x563.png 768w" sizes="(max-width: 1025px) 100vw, 1025px" /></a><br />
&nbsp;</p>
<div id="limitations" style="scroll-margin-top: 15px;"></div>
<h2>Known Limitations</h2>
<p>Before we go all gung ho and start enforcing everything using specific authentication strengths, it is important to know the limitations and how it can impact your users.  If you&#8217;re running a predominantly Windows environment,  there&#8217;s a much better chance you&#8217;ll have success because there are more things that are vertically integrated.<br />
&nbsp;</p>
<p>However, this is not the case for environments that have a mix of MacOS, Linux and Windows.  Obviously since Windows Hello is a Windows feature,  this will not work on other platforms so I guess that goes without saying.  We also need to understand that <strong>Fido 2 doesn&#8217;t work with Safari</strong> so MacOS users will need to use Chrome if they need to Fido into any application.  I&#8217;ve personally run into issues where some applications on MacOS just won&#8217;t work when requiring a security key because Apple hasn&#8217;t fully integrated this into their product yet.<br />
&nbsp;</p>
<p>Another thing to consider is that there are currently issues if you want to enforce Passwordless as a baseline policy.  If you apply a policy enforcing Passwordless to a user who currently doesn&#8217;t have it enabled, they&#8217;ll get an infinite loop.  Before you enforce this policy, be sure the users have this enabled so you can save yourself from trouble down the road.</p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>At last we&#8217;re at the tail end of this article and hopefully you found it very informative knowing how to enable authentication strengths using Azure AD conditional access policies.  This is something that can definitely improve your organizational security as well as add the convenience of Passwordless.<br />
&nbsp;</p>
<p>This feature is still in preview so there is still more work needed to iron out the rough edges but at the end of the day, this is still a win for admins who want a stronger security posture across their cloud environment.</p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/">How To Enable Authentication Strengths Using Azure AD Conditional Access Policy</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/how-to-enable-authentication-strengths-using-azure-ad-conditional-access-policy/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4421</post-id>	</item>
		<item>
		<title>How To Enable Windows Hello for Business Cloud Trust</title>
		<link>https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/</link>
					<comments>https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/#comments</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Sun, 11 Sep 2022 22:54:41 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Cloud Trust]]></category>
		<category><![CDATA[How To Enable Windows Hello for Business Cloud Trust]]></category>
		<category><![CDATA[wh4b no pki]]></category>
		<category><![CDATA[Windows Hello Fingerprint]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=3985</guid>

					<description><![CDATA[<p>Windows Hello for Business is a feature in Windows OS that is secure, phishing resistant and something every organization should strive to get 100% adoption. It is the perfect combination of organizational security and user convenience. Once enabled, your users&#8230; <a href="https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/">How To Enable Windows Hello for Business Cloud Trust</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Windows Hello for Business is a feature in Windows OS that is secure, phishing resistant and something every organization should strive to get 100% adoption.  It is the perfect combination of organizational security and user convenience. Once enabled, your users will absolutely love it.  Today we&#8217;re going to go through step by step on <strong>how to enable Windows Hello for Business Cloud Trust</strong>, and deploy the configs using Group Policy (GPO) to your hybrid machines.<br />
&nbsp;</p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#whatiswh4b">What is Windows Hello for Business</a></li>
<li><a href="#enablecloudtrust">How To Enable Windows Hello for Business Cloud Trust</a></li>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#aadkerberosserver">Creating the Azure AD Kerberos Server</a></li>
<li><a href="#deploygpo">Deploy Device Settings using Group Policy</a></li>
<li><a href="#clientprereqcheck">Next Generation Credential (Ngc) Client Prerequisite Check</a></li>
</ul>
<li><a href="#userexperience">User Experience</a></li>
<li><a href="#enablegestures">Enabling Additional Gestures like Fingerprint, Face or Fido2</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<div id="whatiswh4b" style="scroll-margin-top: 15px;"></div>
<h2>What is Windows Hello for Business</h2>
<p>So what exactly is Windows Hello for Business and why should we enable it as an organization? WH4B removes the need for traditional username and passwords (in most cases) and uses device based authentication with gestures.  Biometric, fingerprint, facial recognition or PIN are all examples of useable gestures that are supported with this feature.<br />
&nbsp;</p>
<p>With Windows Hello enabled, your users can seamlessly authenticate to cloud resources AND satisfy any MFA requirements since this is a strong auth credential. This credential is tied to the device and uses a gesture to verify the identity.  Once the identify has been verified, it creates what is known as a <a href="https://docs.microsoft.com/en-us/azure/active-directory/devices/concept-primary-refresh-token" rel="noopener" target="_blank">Primary Refresh Token</a> (PRT) to seamlessly sign in to cloud resources.</p>
<div id="enablecloudtrust" style="scroll-margin-top: 15px;"></div>
<h2>How To Enable Windows Hello for Business Cloud Trust</h2>
<p>In the past, there were some hurdles trying to get WH4B enabled for hybrid environments simply because it required a Public Key Infrastructure (PKI) to initially get the ball rolling.<br />
&nbsp;</p>
<p>Many organizations don&#8217;t have this setup in their environment so Microsoft released the latest evolution for this feature which is called <strong>Cloud Trust</strong>. Cloud Trust doesn&#8217;t require a PKI infrastructure and it doesn&#8217;t need any certificates deployed to machines or domain controllers.  What does it need?  Let&#8217;s touch on that right now.</p>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>There are requirements for the infrastructure as well as the client.  Both sets of requirements must be fulfilled to ensure this is working successfully.<br />
&nbsp;</p>
<h4>Infrastructure Requirements:</h4>
<ul>
<li>AzureADHybridAuthenticationManagement PowerShell Module</li>
<li>Several fully patched Windows Server 2016 or later Domain Controllers</li>
<li>A Domain Admin to create the Azure AD Kerberos Server object</li>
<li>A Global Admin to authenticate to the Azure tenant</li>
</ul>
<p>&nbsp;<br />
&nbsp;</p>
<h4>Client Requirements:</h4>
<ul>
<li>Fully patched Windows 10 21H2 or later devices</li>
<li>Devices are Hybrid Azure AD Joined</li>
<li>Managed via Group Policy or Microsoft Intune (this article focuses on deploying via GPO)</li>
<li>The user must be enrolled in MFA</li>
</ul>
<div id="aadkerberosserver" style="scroll-margin-top: 15px;"></div>
<h2>Creating the Azure AD Kerberos Server</h2>
<p>As part of the infrastructure requirements, we&#8217;ll need to install/use the AzureADHybridAuthenticationManagement PowerShell module.  This module has the specific cmdlets needed to create the Azure AD Kerberos server for your on-premises domain.</p>
<pre class="brush: powershell; title: ; notranslate">
#Install Powershell module
Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber -Scope AllUsers
</pre>
<p>&nbsp;</p>
<p>With the PowerShell module installed, we can now create the AAD Kerberos server using domain admin and global admin credentials.   The domain admin credentials are needed to create the on-premises AD object and the global administrator is needed to confirm that you have proper access to the tenant.<br />
&nbsp;</p>
<pre class="brush: powershell; title: ; notranslate">
$Domain = 'ad.thesysadminchannel.com'
$DomainCredential = Get-Credential -UserName 'ad\domainadmin' -Message 'Enter Password'

Set-AzureADKerberosServer -Domain $Domain -DomainCredential $DomainCredential `
  -UserPrincipalName paul@thesysadminchannel.com

Get-AzureADKerberosServer -Domain $Domain -DomainCredential $DomainCredential `
  -UserPrincipalName paul@thesysadminchannel.com

</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Set-Azure-AD-Kerberos-Server.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Set-Azure-AD-Kerberos-Server.png" alt="Set Azure AD Kerberos Server" width="901" height="542" class="aligncenter size-full wp-image-4382" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Set-Azure-AD-Kerberos-Server.png?v=1662926199 901w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Set-Azure-AD-Kerberos-Server-125x75.png?v=1662926199 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Set-Azure-AD-Kerberos-Server-768x462.png?v=1662926199 768w" sizes="(max-width: 901px) 100vw, 901px" /></a><br />
&nbsp;</p>
<p>You will notice that a new computer object will be created in the Domain Controllers OU within AD.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Azure-AD-Kerberos-Server-Computer-Object.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Azure-AD-Kerberos-Server-Computer-Object.png" alt="Azure AD Kerberos Server Computer Object" width="986" height="234" class="aligncenter size-full wp-image-4384" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Azure-AD-Kerberos-Server-Computer-Object.png?v=1662926502 986w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Azure-AD-Kerberos-Server-Computer-Object-768x182.png?v=1662926502 768w" sizes="(max-width: 986px) 100vw, 986px" /></a></p>
<div id="deploygpo" style="scroll-margin-top: 15px;"></div>
<h2>Deploy Device Settings using Group Policy</h2>
<p>With the Azure AD Kerberos server already created, all that&#8217;s left from an infrastructure perspective is to deploy the policy settings to the client devices.  As I mentioned previously, this can be completed via Microsoft Intune, however this article is going to focus on deploying those configs via Group Policy.<br />
&nbsp;</p>
<p>With Group Policy Editor Open:</p>
<ul>
<li>Navigate to <strong>Computer Configuration</strong> → <strong>Administrative Templates</strong> → <strong>Windows Components</strong> → <strong>Windows Hello for Business</strong></li>
<li>set <strong>Use a hardware security device</strong> to <strong>Enabled</strong></li>
<li>set <strong>Use biometrics</strong> to <strong>Enabled</strong></li>
<li>set <strong>Use Windows Hello for Business</strong> to <strong>Enabled</strong></li>
<li>set <strong>Use cloud trust for on-premises authentication</strong> to <strong>Enabled</strong></li>
<li>Apply the policy to your <strong>computer objects</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting.png" alt="Windows Hello for Business Group Policy Setting" width="826" height="343" class="aligncenter size-full wp-image-4393" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting.png?v=1662929723 826w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-768x319.png?v=1662929723 768w" sizes="(max-width: 826px) 100vw, 826px" /></a><br />
&nbsp;</p>
<p>The policy should look like this in the settings page.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-1.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-1.png" alt="Windows Hello for Business Group Policy Setting 1" width="1170" height="484" class="aligncenter size-full wp-image-4395" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-1.png?v=1662930031 1170w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-1-1024x424.png?v=1662930031 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Windows-Hello-for-Business-Group-Policy-Setting-1-768x318.png?v=1662930031 768w" sizes="(max-width: 1170px) 100vw, 1170px" /></a></p>
<div id="clientprereqcheck" style="scroll-margin-top: 15px;"></div>
<h2>Next Generation Credential (Ngc) Client Prerequisite Check</h2>
<p>Let&#8217;s head on over to the client machine to see what the current status of the device is and check if it will provision or not. This is not something the end user will be doing, however, it will provide troubleshooting tips if something is not working.<br />
&nbsp;</p>
<p>While on the client machine, open PowerShell and type: <strong>dsregcmd /status</strong>. Take a look at the device state and more importantly the Ngc Prerequisite Check (Image is edited for readability so you&#8217;ll need to scroll all the way down to see it).<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/NGC-Prereq-check.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/NGC-Prereq-check.png" alt="NGC Prereq check" width="826" height="589" class="aligncenter size-full wp-image-4397" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/NGC-Prereq-check.png?v=1662930749 826w, https://thesysadminchannel.com/wp-content/uploads/2022/09/NGC-Prereq-check-768x548.png?v=1662930749 768w" sizes="(max-width: 826px) 100vw, 826px" /></a><br />
&nbsp;</p>
<p>This will give you details for the provisioning state of the device.  If there are any issues like the device is not joined, the CloudTGT is unknown or the device is not eligible, a good place to start troubleshooting is to make sure the device is successfully Hybrid Azure AD Joined (not Azure AD Registered)<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Hybrid-Azure-AD-Joined-Machine.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Hybrid-Azure-AD-Joined-Machine.png" alt="Hybrid Azure AD Joined Machine" width="1170" height="324" class="aligncenter size-full wp-image-4399" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Hybrid-Azure-AD-Joined-Machine.png?v=1662931119 1170w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Hybrid-Azure-AD-Joined-Machine-1024x284.png?v=1662931119 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Hybrid-Azure-AD-Joined-Machine-768x213.png?v=1662931119 768w" sizes="(max-width: 1170px) 100vw, 1170px" /></a></p>
<div id="userexperience" style="scroll-margin-top: 15px;"></div>
<h2>User Experience</h2>
<p>We&#8217;ve now confirmed that the device is eligible and our status check says that it will provision.  What now?<br />
&nbsp;</p>
<p>The next time the user logs in they should be prompted with the Windows Hello enrollment screen.  If it&#8217;s not popping up, I&#8217;ve noticed logging out and logging back in again (instead of rebooting) usually does the trick.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen.png" alt="Hello for Business Setup Screen" width="1259" height="747" class="aligncenter size-full wp-image-4401" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen.png 1259w, https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen-1024x608.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen-125x75.png 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/1-Hello-for-Business-Setup-Screen-768x456.png 768w" sizes="(max-width: 1259px) 100vw, 1259px" /></a><br />
&nbsp;</p>
<p>The user will need to confirm their identity for completing an MFA request.  If the user is not enrolled in MFA, they&#8217;ll most likely be prompted here to enroll.  However, in our case, we have MFA enrolled so we&#8217;ll just complete the MFA number matching request.</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match.png" alt="MFA number match" width="1272" height="760" class="aligncenter size-full wp-image-4405" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match.png?v=1662932485 1272w, https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match-1024x612.png?v=1662932485 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match-125x75.png?v=1662932485 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/2-MFA-number-match-768x459.png?v=1662932485 768w" sizes="(max-width: 1272px) 100vw, 1272px" /></a><br />
&nbsp;</p>
<p>Next we&#8217;ll be prompted to set up a PIN that can be used only for this device.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup.png" alt="" width="1263" height="754" class="aligncenter size-full wp-image-4406" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup.png 1263w, https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup-1024x611.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup-125x75.png 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/3-Pin-Setup-768x458.png 768w" sizes="(max-width: 1263px) 100vw, 1263px" /></a><br />
&nbsp;</p>
<p>If there are no issues, you should now see an All set! screen.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup.png" alt="Complete Windows Hello setup" width="1266" height="758" class="aligncenter size-full wp-image-4407" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup.png 1266w, https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup-1024x613.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup-125x75.png 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/4-Complete-Windows-Hello-setup-768x460.png 768w" sizes="(max-width: 1266px) 100vw, 1266px" /></a><br />
&nbsp;</p>
<div id="enablegestures" style="scroll-margin-top: 15px;"></div>
<h2>Enabling Additional Gestures like Fingerprint, Face or Fido2</h2>
<p>In the event you want to enable additional gestures like Fingerprint, Face or even a Fido2 security key you can do this manually without having to go through the wizard.<br />
&nbsp;</p>
<p>For example, I personally like using external USB keys like the <a href="https://amzn.to/3Ld34oH" rel="noopener" target="_blank">TrustKey G320H</a> because it supports Windows Hello Fingerprint and Fido2.  Since I usually have my device with the lid closed and stowed away, this works great and it&#8217;s something I use literally everyday.  If I get another key, I can enable it using these settings.<br />
&nbsp;</p>
<p>To enable additional gestures go to start → type: Sign-in options<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/09/Enable-Windows-Hello-additional-gestures.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/09/Enable-Windows-Hello-additional-gestures.png" alt="Enable Windows Hello additional gestures" width="850" height="514" class="aligncenter size-full wp-image-4409" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/09/Enable-Windows-Hello-additional-gestures.png?v=1662933919 850w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Enable-Windows-Hello-additional-gestures-125x75.png?v=1662933919 125w, https://thesysadminchannel.com/wp-content/uploads/2022/09/Enable-Windows-Hello-additional-gestures-768x464.png?v=1662933919 768w" sizes="(max-width: 850px) 100vw, 850px" /></a></p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>Hopefully this article provided in-depth knowledge on how to enable Windows Hello for Business Cloud Trust.  This implementation is honestly quite easy and doesn&#8217;t take a lot of effort to get the ball rolling.  You will just need to make sure you test with a pilot group and communicate to your users what they&#8217;ll expect to see when this rolls out.</p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/">How To Enable Windows Hello for Business Cloud Trust</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/how-to-enable-windows-hello-for-business-cloud-trust/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3985</post-id>	</item>
		<item>
		<title>Get Per-User MFA Status using PowerShell</title>
		<link>https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/</link>
					<comments>https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/#comments</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Sat, 07 May 2022 07:01:01 +0000</pubDate>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[mfa status script]]></category>
		<category><![CDATA[per-user mfa status]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=4169</guid>

					<description><![CDATA[<p>There are a ton of scripts out there that show you if the user has MFA enabled by checking their authentication methods, something very similar to this Get MFA Methods using Graph API script I wrote a while back. However,&#8230; <a href="https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/">Get Per-User MFA Status using PowerShell</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>There are a ton of scripts out there that show you if the user has MFA enabled by checking their authentication methods, something very similar to this <a href="https://thesysadminchannel.com/get-mfa-methods-using-msgraph-api-and-powershell-sdk/" rel="noopener" target="_blank">Get MFA Methods using Graph API</a> script I wrote a while back.  However, I haven&#8217;t really seen a script to show me what their per-user MFA status is.<br />
&nbsp;</p>
<p>Well today, we&#8217;re going to do just that.  I understand this is the legacy method for setting multi-factor authentication on user accounts, however, there&#8217;s a probable chance that you might have forgotten to disable it when you eventually moved on to setting <a href="https://thesysadminchannel.com/deploy-mfa-using-azure-ad-conditional-access/" rel="noopener" target="_blank">MFA using conditional access policies</a>.  I say that because this was the case for me not too long ago.  </p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#perusermfaportal">Get Per-User MFA Status using Office 365 Portal</a></li>
<li><a href="#perusermfapowershell">Get Per-User MFA Status using PowerShell</a></li>
<ul>
<li><a href="#parameters">Script Parameters</a></li>
<li><a href="#examples">Examples and Usage</a></li>
</ul>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<p>&nbsp;</p>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>In order to get started with checking per-user MFA status, we&#8217;re going to need a few things in place to make sure we get a successful output.  Let&#8217;s list them out here.<br />
&nbsp;</p>
<ul>
<li>MSOnline (MSOL) PowerShell Module</li>
<li>Global Administrator Role</li>
</ul>
<div id="perusermfaportal" style="scroll-margin-top: 15px;"></div>
<h2>Get Per-User MFA Status using Office 365 Portal</h2>
<p>Before we get into the Powershell method, I wanted to quickly go over the method using the legacy Office 365 Portal.  In order to check this, you will need to be a Global Administrator.<br />
&nbsp;</p>
<p>In Azure AD:</p>
<ul>
<li>Navigate to <strong>Users</strong> -> <strong>Per-user MFA</strong></li>
<li>Using the drop down for <strong>Multi-Factor Auth status</strong>: Choose <strong>Enabled</strong> or <strong>Enforced</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/05/Get-Per-User-MFA-Status-using-Office-365-Portal.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/05/Get-Per-User-MFA-Status-using-Office-365-Portal.png" alt="Get Per-User MFA Status using Office 365 Portal" width="946" height="390" class="aligncenter size-full wp-image-4180" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/05/Get-Per-User-MFA-Status-using-Office-365-Portal.png?v=1651881481 946w, https://thesysadminchannel.com/wp-content/uploads/2022/05/Get-Per-User-MFA-Status-using-Office-365-Portal-768x317.png?v=1651881481 768w" sizes="(max-width: 946px) 100vw, 946px" /></a><br />
&nbsp;</p>
<p>Using this method, you have the option to quickly see their status and if you&#8217;re up to it, you can disable them right there.</p>
<div id="blockquote1">
<strong>Note</strong>: Before you disable per-user MFA, it is highly recommended to convert them to Conditional Access based MFA using this <a href="https://docs.microsoft.com/en-us/azure/active-directory/authentication/howto-mfa-userstates#convert-users-from-per-user-mfa-to-conditional-access-based-mfa" rel="noopener" target="_blank">script from MS Docs</a>
</div>
<div id="perusermfapowershell" style="scroll-margin-top: 15px;"></div>
<h2>Get Per-User MFA Status using PowerShell</h2>
<p>Now that we know how to check in the portal to view the per-user mfa status, let&#8217;s take look at how to do this within PowerShell.  This requires you to be connected to the MSOnline using Connect-MSolService so let&#8217;s take a look now.</p>
<pre class="brush: powershell; title: ; notranslate">

Function Get-PerUserMFAStatus {
&lt;#
.SYNOPSIS
    Get Per-User MFA Status using MSOnline Powershell Module

.NOTES
    Name: Get-PerUserMFAStatus
    Author: theSysadminChannel
    Version: 1.0
    DateCreated: 2021-Feb-3

.LINK
    https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell -
#&gt;

    [CmdletBinding(DefaultParameterSetName='All')]
    param(
        [Parameter(
            Mandatory = $false,
            ParameterSetName = 'UPN',
            Position = 0
        )]
        [string[]]  $UserPrincipalName,


        [Parameter(
            Mandatory = $false,
            ParameterSetName = 'All'
        )]
        [switch]    $All

    )

    BEGIN {
        if (-not (Get-MsolDomain -ErrorAction SilentlyContinue)) {
            Write-Error &quot;You must connect to the MSolService to continue&quot; -ErrorAction Stop
        }
    }

    PROCESS {
        if ($PSBoundParameters.ContainsKey('UserPrincipalName')) {
            $MsolUserList = foreach ($MsolUser in $UserPrincipalName) {
                try {
                    Get-MsolUser -UserPrincipalName $MsolUser -ErrorAction Stop
                    
                } catch {
                    Write-Error $_.Exception.Message

                }
            }
        } else {
            $MsolUserList = Get-MsolUser -All -ErrorAction Stop | Where-Object {$_.UserType -ne 'Guest' -and $_.DisplayName -notmatch 'On-Premises Directory Synchronization'}
        }

        #Now that we have our UserList, lets check the per-user mfa status
        foreach ($User in $MsolUserList) {
            if ($User.StrongAuthenticationRequirements) {
                $PerUserMFAState = $User.StrongAuthenticationRequirements.State

              } else {
                $PerUserMFAState = 'Disabled'

            }

            $MethodType = $User.StrongAuthenticationMethods | Where-Object {$_.IsDefault -eq $true} | select -ExpandProperty MethodType
            
            if ($MethodType) {
                switch ($MethodType) {
                    'OneWaySMS'            {$DefaultMethodType = 'SMS Text Message'  }
                    'TwoWayVoiceMobile'    {$DefaultMethodType = 'Call to Phone'     }
                    'PhoneAppOTP'          {$DefaultMethodType = 'TOTP'              }
                    'PhoneAppNotification' {$DefaultMethodType = 'Authenticator App' }
                }
              } else {
                $DefaultMethodType = 'Not Enabled'
            }
    
            [PSCustomObject]@{
                UserPrincipalName    = $User.UserPrincipalName
                DisplayName          = $User.DisplayName
                PerUserMFAState      = $PerUserMFAState
                DefaultMethodType    = $DefaultMethodType

            }

            $MethodType        = $null
        }

    }

    END {}
}

</pre>
<div id="parameters" style="scroll-margin-top: 15px;"></div>
<h2>Script Parameters</h2>
<h3>    -UserPrincipalName</h3>
<p>DataType: string/array<br />
Description: Specify the UserPrincipalName of the per-user MFA status you would like to see.  Multiple UPNs separated by a comma are acceptable.<br />
&nbsp;</p>
<div id="examples" style="scroll-margin-top: 15px;"></div>
<h3>Example 1 &#8211; Specifying UserPrincipalNames separated by a comma</h3>
<pre class="brush: powershell; gutter: false; title: ; notranslate">
PS C:\&gt; Get-PerUserMFAStatus -UserPrincipalName aaduser3@thesysadminchannel.com, aaduser4@thesysadminchannel.com, `
astark@thesysadminchannel.com, jsnow@thesysadminchannel.com
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/05/01-Get-Per-User-MFA-Status-using-Powershell.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/05/01-Get-Per-User-MFA-Status-using-Powershell.png" alt="Get Per-User MFA Status using Powershell" width="1053" height="314" class="aligncenter size-full wp-image-4188" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/05/01-Get-Per-User-MFA-Status-using-Powershell.png?v=1651890614 1053w, https://thesysadminchannel.com/wp-content/uploads/2022/05/01-Get-Per-User-MFA-Status-using-Powershell-1024x305.png?v=1651890614 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/05/01-Get-Per-User-MFA-Status-using-Powershell-768x229.png?v=1651890614 768w" sizes="(max-width: 1053px) 100vw, 1053px" /></a><br />
&nbsp;</p>
<h3>Example 2 &#8211; Getting all user&#8217;s status in the tenant</h3>
<pre class="brush: powershell; gutter: false; title: ; notranslate">
PS C:\&gt; Get-PerUserMFAStatus -All
</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/05/02-Get-Per-User-MFA-Status-using-Powershell.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/05/02-Get-Per-User-MFA-Status-using-Powershell.png" alt="Get Per-User MFA Status using Powershell" width="860" height="350" class="aligncenter size-full wp-image-4190" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/05/02-Get-Per-User-MFA-Status-using-Powershell.png?v=1651891330 860w, https://thesysadminchannel.com/wp-content/uploads/2022/05/02-Get-Per-User-MFA-Status-using-Powershell-768x313.png?v=1651891330 768w" sizes="(max-width: 860px) 100vw, 860px" /></a></p>
<p>&nbsp;</p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>As mentioned, the per-user mfa is not the recommended way to enable MFA for your users.  For that, we&#8217;ll want to either use conditional access (which require an Azure P1/P2 license). For those that don&#8217;t have this license in their tenant, you can use security defaults which enables MFA across the whole tenant.<br />
&nbsp;</p>
<p>Hopefully, you were able to find this script useful in finding which users still have the legacy MFA method enabled.</p>
<p>The post <a href="https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/">Get Per-User MFA Status using PowerShell</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/get-per-user-mfa-status-using-powershell/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4169</post-id>	</item>
		<item>
		<title>How To Enable MFA for External Users Office 365</title>
		<link>https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/</link>
					<comments>https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/#comments</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Tue, 08 Mar 2022 00:53:19 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Office365]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[azure ad b2b mfa]]></category>
		<category><![CDATA[enable multi-factor authentication for guest users]]></category>
		<category><![CDATA[mfa for external users office 365]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=3893</guid>

					<description><![CDATA[<p>Whether you&#8217;re focusing on internal or external users, having 2-factor enabled so people can access resources in your org is always a recommended practice to enhance your security footprint. Today, we&#8217;re going to focus our efforts using conditional access to&#8230; <a href="https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/">How To Enable MFA for External Users Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Whether you&#8217;re focusing on internal or external users, having 2-factor enabled so people can access resources in your org is always a recommended practice to enhance your security footprint.  Today, we&#8217;re going to focus our efforts using conditional access to <strong>enable MFA for external users Office 365</strong>.</p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#requirements">Requirements</a></li>
<li><a href="#userexperience">User Experience and What to Expect</a></li>
<ul>
<li><a href="#beforemfapolicy">What to Expect if MFA is not enabled for the User</a></li>
<li><a href="#usermfaenabled">What to Expect if the User has MFA Enabled</a></li>
</ul>
<li><a href="#enablemfaexternalusers">How To Enable MFA for External Users Office 365</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>In order to move forward with enabling multi-factor authentication for guest users there are a couple of requirements that are needed.  Let&#8217;s list them out here so we have a clear understanding of what they are.</p>
<ul>
<li>Azure AD Premium license (P1 or P2)</li>
<li>A valid external email account that you can add as B2B guest user</li>
</ul>
<p>In my lab tenant, I have EMS-E5 licenses which is P2 so I&#8217;m good to use conditional access policies to get this all setup.</p>
<div id="userexperience" style="scroll-margin-top: 15px;"></div>
<h2>End User Experience and What to Expect</h2>
<p>To give you some context on how I&#8217;m testing this in my lab tenant, I&#8217;ve granted the external user who is named &#8220;Guest User&#8221; access to a SharePoint site that I&#8217;ve created for this purpose.<br />
&nbsp;</p>
<p>The SPO site, Project Gladiator, has an &#8220;ExternalUser&#8221; folder that I&#8217;ve setup to mimic a real-world scenario.  This folder is where people from other orgs will update their notes to use for collaboration.</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Project-Gladiator1.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Project-Gladiator1.png" alt="Project-Gladiator" width="1361" height="613" class="aligncenter size-full wp-image-3898" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Project-Gladiator1.png?v=1646613581 1361w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Project-Gladiator1-1024x461.png?v=1646613581 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Project-Gladiator1-768x346.png?v=1646613581 768w" sizes="auto, (max-width: 1361px) 100vw, 1361px" /></a><br />
&nbsp;</p>
<p>At this point, I&#8217;ve sent an invitation to the guest user and they have accepted the invite.  Next, I copied the link to that folder and sent over to the external user so they can access the resources that are setup at their convenience.<br />
&nbsp;</p>
<p>For now, we&#8217;ll take a moment to check in on the user experience before and after the policy is enabled.</p>
<div id="usermfaenabled" style="scroll-margin-top: 15px;"></div>
<h2>What to Expect if the User has MFA Enabled</h2>
<p>Let&#8217;s take a moment to clear the air first. If a user has MFA enabled on their own <strong><em>home</em></strong> tenant, this doesn&#8217;t mean that they&#8217;ll be prompted to confirm their identity with an MFA prompt on your <strong><em>resource</em></strong> tenant.  There are now ways to trust the MFA claims from the home tenant using <a href="https://docs.microsoft.com/en-us/azure/active-directory/external-identities/cross-tenant-access-settings-b2b-collaboration" rel="noopener" target="_blank">Cross Tenant Access Policies (xtap)</a> but that&#8217;s a little outside the scope of the this article.<br />
&nbsp;</p>
<p>It will actually take some effort to enable MFA on a resource tenant if you&#8217;re not enforcing it so chances are they won&#8217;t do unless you make them.<br />
&nbsp;<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-Access-for-MFA.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-Access-for-MFA.png" alt="MFA for External Users Office 365" width="1270" height="488" class="aligncenter size-full wp-image-3925" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-Access-for-MFA.png?v=1646634124 1270w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-Access-for-MFA-1024x393.png?v=1646634124 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-Access-for-MFA-768x295.png?v=1646634124 768w" sizes="auto, (max-width: 1270px) 100vw, 1270px" /></a></p>
<p>However, if a user has enrolled in MFA in the resource tenant, then they&#8217;ll continue to be prompted for MFA as they previously have.</p>
<div id="beforemfapolicy" style="scroll-margin-top: 15px;"></div>
<h2>What to Expect if MFA is not enabled for the User</h2>
<p>Since there aren&#8217;t any policies that are enforcing MFA for external (guest, B2B etc..) users, this user is able to get in with just a username and password.  If someone potentially compromised the remote credentials, they now have access to your tenant.  This is obviously a no-no and is the reason why enabling MFA is so vital to security.<br />
&nbsp;</p>
<p>We haven&#8217;t touched on how to enable the policy yet, however, what can we expect when we enable MFA for external users Office 365 / Azure AD?<br />
&nbsp;</p>
<p>Once you enable the policy, the user would be shown the typical prompt for when a user tries to enroll in MFA in the home tenant. </p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-User-MFA-Enrollment.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-User-MFA-Enrollment.png" alt="Guest User MFA Enrollment" width="1263" height="622" class="aligncenter size-full wp-image-3921" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-User-MFA-Enrollment.png?v=1646632859 1263w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-User-MFA-Enrollment-1024x504.png?v=1646632859 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Guest-User-MFA-Enrollment-768x378.png?v=1646632859 768w" sizes="auto, (max-width: 1263px) 100vw, 1263px" /></a></p>
<div id="enablemfaexternalusers" style="scroll-margin-top: 15px;"></div>
<h2>How To Enable MFA for External Users Office 365</h2>
<p>Now that we know what it looks like, next up is to use a conditional access policy template in Azure AD to set it up.  As mentioned, this would require you have a premium license so hopefully you have that setup in you tenant so you can follow along.  Let&#8217;s review the steps needed to enable this policy.</p>
<p>In Azure AD:</p>
<ul>
<li>Navigate to <strong>Security</strong> -> <strong>Conditional access</strong> -> <strong>Policies</strong></li>
<ul>
<li>Direct Link: <a href="https://portal.azure.com/#blade/Microsoft_AAD_IAM/ConditionalAccessBlade/Policies" rel="noopener" target="_blank">https://portal.azure.com/#blade/Microsoft_AAD_IAM/ConditionalAccessBlade/Policies</a></li>
</ul>
<li>Click <strong>New Policy</strong> -> <strong>Create new policies from templates</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Create-Conditional-Access-Policy-External-Users.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Create-Conditional-Access-Policy-External-Users.png" alt="MFA for External Users Office 365 - Create Conditional Access Policy External Users" width="917" height="323" class="aligncenter size-full wp-image-3913" loading="lazy" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Create-Conditional-Access-Policy-External-Users.png?v=1646620246 917w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Create-Conditional-Access-Policy-External-Users-768x271.png?v=1646620246 768w" sizes="auto, (max-width: 917px) 100vw, 917px" /></a><br />
&nbsp;</p>
<ul>
<li>Under Customize your build:  select <strong>Identities</strong> and click Next</li>
<li>select <strong>Require multi-factor authentication for guest access</strong> and click Next</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access.png" alt="Require MFA for Guest Access" width="1652" height="919" class="aligncenter size-full wp-image-3916" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access.png?v=1646631291 1652w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access-1024x570.png?v=1646631291 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access-768x427.png?v=1646631291 768w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Require-MFA-for-Guest-Access-1536x854.png?v=1646631291 1536w" sizes="auto, (max-width: 1652px) 100vw, 1652px" /></a><br />
&nbsp;</p>
<ul>
<li>Review the policy and confirm it is in Report-only</li>
<li>Click Create Policy</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365.png" alt="MFA for External Users Office 365" width="1740" height="807" class="aligncenter size-full wp-image-3917" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365.png?v=1646631360 1740w, https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365-1024x475.png?v=1646631360 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365-768x356.png?v=1646631360 768w, https://thesysadminchannel.com/wp-content/uploads/2022/03/MFA-for-External-Users-Office-365-1536x712.png?v=1646631360 1536w" sizes="auto, (max-width: 1740px) 100vw, 1740px" /></a><br />
&nbsp;</p>
<div id="blockquote1">
<strong>Important</strong>: Leave the policy in Report-only for now.  We&#8217;ll still need to make adjustments before enabling it.
</div>
<p>&nbsp;</p>
<p>Now let&#8217;s go back into the policy and under Assignments -> Exclude:  Enter the breakglass account and an MFA exclusions group in your own tenant.  Hopefully this won&#8217;t be needed, but if someone decides to modify the policy and applies it to people in your org, you&#8217;ll at least have some specific exclusions in place.<br />
&nbsp;</p>
<p>Finally, enable the policy and click save.  External users will now need to enable MFA to access resources in your home tenant.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users.png" target="_blank" rel="noopener"><img decoding="async" loading="lazy" src="https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users.png" alt="Exclude MFA users" width="1617" height="894" class="aligncenter size-full wp-image-3919" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users.png?v=1646632056 1617w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users-1024x566.png?v=1646632056 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users-768x425.png?v=1646632056 768w, https://thesysadminchannel.com/wp-content/uploads/2022/03/Exclude-MFA-users-1536x849.png?v=1646632056 1536w" sizes="auto, (max-width: 1617px) 100vw, 1617px" /></a></p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>Hopefully this article showed you how to enable MFA for external users Office 365 and was easy to follow along.  If you haven&#8217;t done so already, be sure to <a href="https://thesysadminchannel.com/deploy-mfa-using-azure-ad-conditional-access/" rel="noopener" target="_blank">enable MFA for your regular users</a> to ensure you&#8217;re covered across the board.</p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/">How To Enable MFA for External Users Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/how-to-enable-mfa-for-external-users-office-365/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3893</post-id>	</item>
		<item>
		<title>How To Enable Passwordless Authentication Azure AD</title>
		<link>https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/</link>
					<comments>https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Wed, 23 Feb 2022 06:22:19 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[azure ad passwordless authentication]]></category>
		<category><![CDATA[Enable Passwordless Authentication Azure AD]]></category>
		<category><![CDATA[Passwordless Authentication]]></category>
		<category><![CDATA[passwordless authentication microsoft]]></category>
		<category><![CDATA[passwordless authentication solutions]]></category>
		<category><![CDATA[passwordless sign in]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=3017</guid>

					<description><![CDATA[<p>One of the best recommendations I can suggest to significantly reduce the attack surface for your accounts is to enable multi-factor authentication. To vastly improve the user experience, I would absolutely make the effort to enable Passwordless authentication for Azure&#8230; <a href="https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/">How To Enable Passwordless Authentication Azure AD</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>One of the best recommendations I can suggest to significantly reduce the attack surface for your accounts is to <a href="https://thesysadminchannel.com/deploy-mfa-using-azure-ad-conditional-access/">enable multi-factor authentication</a>.  To vastly improve the user experience, I would absolutely make the effort to <strong>enable Passwordless authentication for Azure AD</strong>.<br />
&nbsp;</p>
<p>Today we&#8217;re going to cover exactly how to enable Passwordless authentication so you can answer the age old question of how to login to Microsoft Authenticator app.  To give you a bit of context, when you enable Passwordless, you&#8217;re actually using your phone&#8217;s authenticator app in lieu of your password along with the biometric (or PIN) that&#8217;s set on your device.  This allows you to verify your identity by approving the MFA challenge without ever having to enter in your password. </p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#requirements">Requirements and prerequisites</a></li>
<li><a href="#registration">Microsoft Authenticator User Registration and Management</a></li>
<li><a href="#enablepasswordless">How To Enable Passwordless Authentication Azure AD</a></li>
<ul>
<li><a href="#adminsettings">Configure Administrative Settings for Passwordless Authentication</a></li>
<li><a href="#userexperience">Client Setup and User Experience</a></li>
</ul>
<li><a href="#conclusion">Conclusion</a></li>
</ul>
</div>
<div id="requirements" style="scroll-margin-top: 15px;"></div>
<h2>Requirements</h2>
<p>In order to get passwordless authentication setup and configured in your environment, there are a couple of items that need to be setup beforehand.  Don&#8217;t worry, we&#8217;ll walk through the entire process to ensure you&#8217;re at least beta testing this feature.  Here&#8217;s an overview.</p>
<ul>
<li>The user must have Microsoft Authenticator installed on their device</li>
<li>Microsoft Authenticator must be the default MFA method</li>
<ul>
<li>If a user has TOTP as their default method, passwordless authentication will not work</li>
</ul>
<li>A device can only be registered to 1 account</li>
<ul>
<li>To Confirm Device Registration: <strong>Open Authenticator</strong> → <strong>Settings</strong> → <strong>Device Registration</strong></li>
</ul>
<li>The user will need to be scoped to the authentication method policy</li>
<li>The app must be a cloud app. Applications hosted in ADFS may not work since it&#8217;s a different IdP</li>
</ul>
<div id="registration" style="scroll-margin-top: 15px;"></div>
<h2>Microsoft Authenticator Registration and Management</h2>
<p>As mentioned, one of the requirements above is to ensure that the user has MFA push notifications enabled on their account.<br />
&nbsp;</p>
<p>If you don&#8217;t have admin access to check these settings, they can check themselves by doing the following:</p>
<ul>
<li>Navigate to <a href="https://aka.ms/mysecurityinfo" rel="noopener" target="_blank">https://aka.ms/mysecurityinfo</a></li>
<li>In the Security info blade&#8230;</li>
<ul>
<li>Ensure the default sign-in method is set to <strong>Microsoft Authenticator &#8211; notification</strong></li>
<li>If it&#8217;s set to TOTP, you might need to click <strong>Add method</strong> and register a push notification method</li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-My-security-info.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-My-security-info.png" alt="Enable Passwordless Authentication Azure AD - My security info" width="1406" height="576" class="aligncenter size-full wp-image-3870" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-My-security-info.png?v=1645840609 1406w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-My-security-info-1024x420.png?v=1645840609 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-My-security-info-768x315.png?v=1645840609 768w" sizes="(max-width: 1406px) 100vw, 1406px" /></a><br />
&nbsp;</p>
<p>If you are an admin and you&#8217;re rolling this out to a larger set of people, it would be a good idea to get ahead of the curve and find out the user&#8217;s default strong authentication method. Luckily, we have the ability to check this using the MSOnline Powershell module.<br />
&nbsp;</p>
<p>As of today, we&#8217;re able to <a href="https://thesysadminchannel.com/get-mfa-methods-using-msgraph-api-and-powershell-sdk/" rel="noopener" target="_blank">get Azure AD authentication methods using Microsoft Graph API</a>, however Graph API does not have the capability to view the default method so we&#8217;ll need to rely on the MSOL module.</p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-Default-Strong-Auth-Method.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-Default-Strong-Auth-Method.png" alt="Enable Passwordless Authentication Azure AD - Default Strong Auth Method" width="1108" height="329" class="aligncenter size-full wp-image-3872" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-Default-Strong-Auth-Method.png?v=1645841688 1108w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-Default-Strong-Auth-Method-1024x304.png?v=1645841688 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Passwordless-Authentication-Azure-AD-Default-Strong-Auth-Method-768x228.png?v=1645841688 768w" sizes="(max-width: 1108px) 100vw, 1108px" /></a></p>
<div id="enablepasswordless" style="scroll-margin-top: 15px;"></div>
<h2>How To Enable Passwordless Authentication Azure AD</h2>
<p>Now that we&#8217;ve met the requirements and confirmed that MFA push notifications is the user&#8217;s default method, we&#8217;re now read to move forward with setting up passwordless for your org.<br />
&nbsp;</p>
<div id="adminsettings" style="scroll-margin-top: 15px;"></div>
<h2>Configure Administrative Settings for Passwordless Authentication</h2>
<p>Let&#8217;s follow the steps below:</p>
<ul>
<li>Navigate to the <strong>Azure Active Directory</strong> -> <strong>Security</strong> -> <strong>Authentication Methods</strong> -> <strong>Microsoft Authenticator</strong></li>
<li>Set the policy to <strong>Enable</strong></li>
<li>Set the target to All Users or specify a pilot user/group</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png" alt="Microsoft Authenticator Settings" width="1065" height="630" class="aligncenter size-full wp-image-3790" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png?v=1642905951 1065w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-1024x606.png?v=1642905951 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-125x75.png?v=1642905951 125w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-768x454.png?v=1642905951 768w" sizes="(max-width: 1065px) 100vw, 1065px" /></a><br />
&nbsp;</p>
<ul>
<li>As a bonus, <a href="https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/" rel="noopener" target="_blank">enable location rich context For MFA Push Notifications</a> and number matching for icing on the cake</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png" alt="Configure Authentication Policies" width="1083" height="702" class="aligncenter size-full wp-image-3798" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png?v=1642906984 1083w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1-1024x664.png?v=1642906984 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1-768x498.png?v=1642906984 768w" sizes="(max-width: 1083px) 100vw, 1083px" /></a><br />
&nbsp;</p>
<div id="userexperience" style="scroll-margin-top: 15px;"></div>
<h2>Client Setup and User Experience</h2>
<p>Assuming the user is in scope of the policy, let&#8217;s review the setup that&#8217;s needed as the end-user.  It is relatively straight forward and setup is only needed once per device.</p>
<ul>
<li>On the user&#8217;s mobile device, click the entry for the account</li>
<li>Click <strong>Enable phone sign-in</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Phone-Sign-in-Azure-AD.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Enable-Phone-Sign-in-Azure-AD.png" alt="Enable Phone Sign-in Azure AD" width="750" height="619" class="aligncenter size-full wp-image-3876" /></a><br />
&nbsp;</p>
<ul>
<li>Select continue on the next screen and you&#8217;ll be prompted to authenticate to approve MFA</li>
<li>If successful, click back into your account and you should see <strong>Passwordless enabled</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-is-enabled-on-mobile-device.jpg" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-is-enabled-on-mobile-device.jpg" alt="Passwordless is enabled on mobile device" width="750" height="608" class="aligncenter size-full wp-image-3877" /></a><br />
&nbsp;</p>
<p>Now that we&#8217;ve enabled passwordless on the client device, let&#8217;s activate it.</p>
<ul>
<li>Open an incognito browser and enter in your user name</li>
<li>On the prompt to enter your password, select Use an app instead (or other ways to sign-in if Fido2 is enabled)</li>
<li>Enter the corresponding number</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Use-an-app-instead-passwordless-prompt.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Use-an-app-instead-passwordless-prompt.png" alt="Use an app instead passwordless prompt" width="1331" height="645" class="aligncenter size-full wp-image-3878" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/09/Use-an-app-instead-passwordless-prompt.png 1331w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Use-an-app-instead-passwordless-prompt-1024x496.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Use-an-app-instead-passwordless-prompt-768x372.png 768w" sizes="(max-width: 1331px) 100vw, 1331px" /></a></p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-number-matching-prompt.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-number-matching-prompt.png" alt="Passwordless number matching prompt" width="1056" height="440" class="aligncenter size-full wp-image-3879" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-number-matching-prompt.png 1056w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-number-matching-prompt-1024x427.png 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/09/Passwordless-number-matching-prompt-768x320.png 768w" sizes="(max-width: 1056px) 100vw, 1056px" /></a></p>
<div id="conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>That&#8217;s it! Passwordless is now enabled on your account.  Going forward, anytime you try to authenticate to a cloud resource you will be able to use passwordless authentication.  One caveat to this is, if the application is hosted in your onprem ADFS, your mileage may vary.<br />
&nbsp;</p>
<p>All in all, I think this one of the great features that you should have rolled out to your organization.  It is user friendly, adds security with MFA and is good practice to implement.</p>
<p>The post <a href="https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/">How To Enable Passwordless Authentication Azure AD</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/how-to-enable-passwordless-authentication-azure-ad/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3017</post-id>	</item>
		<item>
		<title>Enable Location Rich Context For MFA Push Notifications</title>
		<link>https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/</link>
					<comments>https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Sun, 23 Jan 2022 07:07:44 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[enable location rich context For MFA push notifications]]></category>
		<category><![CDATA[location rich context for MFA]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=3786</guid>

					<description><![CDATA[<p>Wow! I must say this is a preview that I&#8217;ve been waiting to go public for quite some time. Microsoft recently released a feature to show the application as well as the IP address location in your MFA push notifications.&#8230; <a href="https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/">Enable Location Rich Context For MFA Push Notifications</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wow! I must say this is a preview that I&#8217;ve been waiting to go public for quite some time.  Microsoft recently released a feature to show the application as well as the IP address location in your MFA push notifications. This feature is more appropriately referred to as MFA additional context and it&#8217;s definitely a step in right direction for security and IT Professionals.  This article will explain how to enable location rich context for MFA push notifications.</p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#WhatIsMFARichContext">What is Additional Context</a></li>
<li><a href="#Requirements">What are the requirements to enable this feature</a></li>
<li><a href="#HowToEnable">How To Enable Location Rich Context For MFA Push Notifications</a></li>
<li><a href="#Conclusion">Conclusion</a></li>
</ul>
</div>
<div id="WhatIsMFARichContext" style="scroll-margin-top: 15px;"></div>
<h2>What is Additional Context</h2>
<p>As mentioned, additional context allows the user to see what application triggered the MFA challenge and arguably more importantly, the location of the device that triggered it.  So essentially, it will tell you what and where the MFA was triggered.<br />
&nbsp;</p>
<p>A lot of administrators have been requesting a feature like this to provide better security for their organization.  Now, when users get MFA push notifications they can confirm that the location is not somewhere half way across the world.</p>
<div id="Requirements" style="scroll-margin-top: 15px;"></div>
<h2>What Are The Requirements To Enable This Feature</h2>
<p>Before we get into the steps to enable this feature, let&#8217;s take a brief moment to discuss the requirements. </p>
<p>For starters:</p>
<ul>
<li>A Global Administrator -or Authentication Policy Administrator are required to set the policies</li>
<li>MFA push notifications must be enabled and set as the default</li>
<ul>
<li>Note: If the default authentication method is TOTP additional context won&#8217;t work</li>
</ul>
</ul>
<div id="HowToEnable" style="scroll-margin-top: 15px;"></div>
<h2>How To Enable Location Rich Context For MFA Push Notifications</h2>
<p>In order to move forward with MFA location rich context, let&#8217;s take you step by step to enable this policy for all or a subset of users in your organization.  This can be enabled via Graph Explorer, but we&#8217;ll cover the method for setting this up in the Azure Portal graphical user interface.</p>
<p>In the Azure Portal:</p>
<ul>
<li>Navigate to <strong>Azure AD</strong> -> <strong>Security</strong> -> <strong>Authentication Methods</strong></li>
<li>Select Microsoft Authenticator</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Microsoft-Authenticator-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Microsoft-Authenticator-Policy.png" alt="Enable Microsoft Authenticator Policy" width="945" height="438" class="aligncenter size-full wp-image-3789" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Microsoft-Authenticator-Policy.png?v=1642905134 945w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Microsoft-Authenticator-Policy-768x356.png?v=1642905134 768w" sizes="(max-width: 945px) 100vw, 945px" /></a><br />
&nbsp;</p>
<ul>
<li>Under Enable: Click Yes to <strong>enable the policy</strong></li>
<li>Under Target: Select your choice of <strong>All users</strong> -or <strong>Select users</strong></li>
<li>Next to Registration, click the <strong>3 ellipsis</strong> -> <strong>Configure</strong></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png" alt="Microsoft Authenticator Settings" width="1065" height="630" class="alignleft size-full wp-image-3790" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings.png?v=1642905951 1065w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-1024x606.png?v=1642905951 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-125x75.png?v=1642905951 125w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Microsoft-Authenticator-Settings-768x454.png?v=1642905951 768w" sizes="(max-width: 1065px) 100vw, 1065px" /></a><br />
&nbsp;</p>
<ul>
<li>Authentication Method: set to Any</li>
<li>Require Number Matching: I recommend setting to enable</li>
<li>Show additional context in notifications: set to Enabled</li>
<li>Click Done</li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png" alt="Configure Authentication Policies" width="1083" height="702" class="aligncenter size-full wp-image-3798" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1.png?v=1642906984 1083w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1-1024x664.png?v=1642906984 1024w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Configure-Authentication-Policies1-768x498.png?v=1642906984 768w" sizes="(max-width: 1083px) 100vw, 1083px" /></a></p>
<div id="attachment_3800" style="width: 813px" class="wp-caption aligncenter"><a href="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Location-Rich-Context-For-MFA-Push-Notifications.png" target="_blank" rel="noopener"><img decoding="async" aria-describedby="caption-attachment-3800" src="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Location-Rich-Context-For-MFA-Push-Notifications.png" alt="Enable Location Rich Context For MFA Push Notifications" width="803" height="550" class="size-full wp-image-3800" srcset="https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Location-Rich-Context-For-MFA-Push-Notifications.png?v=1642908354 803w, https://thesysadminchannel.com/wp-content/uploads/2022/01/Enable-Location-Rich-Context-For-MFA-Push-Notifications-768x526.png?v=1642908354 768w" sizes="(max-width: 803px) 100vw, 803px" /></a><p id="caption-attachment-3800" class="wp-caption-text">This is using additional context and number matching for added security.</p></div>
<div id="Conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>So there you have it.  We&#8217;ve gone over the steps to enable location rich context for MFA push notifications in your organization and hopefully it&#8217;s something you&#8217;ll be able to implement fairly soon.  It&#8217;s great step for security and personally I think it&#8217;s great for users as well.<br />
&nbsp;</p>
<p>If you enjoyed this and want to see more like it, be sure to check out our <a href="https://thesysadminchannel.com/azure/" rel="noopener" target="_blank">Azure posts</a> for more useful content.</p>
<p>The post <a href="https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/">Enable Location Rich Context For MFA Push Notifications</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/enable-location-rich-context-for-mfa-push-notifications/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3786</post-id>	</item>
		<item>
		<title>How To Block Legacy Authentication Office 365</title>
		<link>https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/</link>
					<comments>https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/#comments</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Mon, 31 May 2021 03:51:45 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Exchange Online]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[block legacy authentication exchange activesync legacy authentication]]></category>
		<category><![CDATA[block legacy authentication sharepoint online]]></category>
		<category><![CDATA[microsoft legacy authentication end of life]]></category>
		<category><![CDATA[New-AuthenticationPolicy]]></category>
		<category><![CDATA[office 365 legacy authentication report]]></category>
		<category><![CDATA[sharepoint online legacy authentication]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=1927</guid>

					<description><![CDATA[<p>Microsoft recently announced that on October 1, 2022 they are going to disable legacy authentication (basic auth) for all M365 tenants. With everything now moving to Modern Authentication and Microsoft Authentication Library (MSAL), previously Active Directory Authentication Library (ADAL) we&#8230; <a href="https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/">How To Block Legacy Authentication Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Microsoft recently announced that on October 1, 2022 they are going to disable legacy authentication (basic auth) for all M365 tenants. With everything now moving to Modern Authentication and Microsoft Authentication Library (MSAL), previously Active Directory Authentication Library (ADAL) we should know how to disable those old authentication methods. Today, we&#8217;re actually going to cover the step by step methods to <strong>block legacy authentication Office 365</strong>. </p>
<div id="tableofcontents">
<h2>Table Of Contents</h2>
<ul>
<li><a href="#WhatisLegacyAuth">What is Legacy Authentication And Why We Should Block It</a></li>
<li><a href="#CurrentAuthSettings">How To See If Legacy Authentication Is Blocked in your Tenant</a></li>
<li><a href="#ConditionalAccessPolicy">Use Conditional Access To Block Legacy Authentication In Office 365</a></li>
<li><a href="#BlockLegacyAuthExchangeOnline">Block Legacy Authentication Exchange Online</a></li>
<ul>
<li><a href="#CreateLegacyAuthPolicy">Create an Authentication Policy to Disable Basic Authentication</a></li>
<li><a href="#DisableProtocols">Disable IMAP/POP/Mapi/SMTPAuth protocols per mailbox</a></li>
</ul>
<li><a href="#Conclusion">Conclusion</a></li>
</ul>
</div>
<p>&nbsp;</p>
<div id="WhatisLegacyAuth" style="scroll-margin-top: 15px;"></div>
<h2>What is Legacy Authentication And Why We Should Block It</h2>
<p>I suppose before we go into detail on how to block it, we should probably address what it is.  Legacy authentication is more or less self explanatory.  By that I mean, it includes authentication methods that are superseded by todays modern authentication.  In short, legacy authentication are authentication methods typically used by mail protocols such as IMAP, SMTP and POP3.  Microsoft Office 2010 is an example client that uses legacy authentication.</p>
<p>&nbsp;<br />
The biggest take away here is that legacy authentication was highly active during a time where multi-factor authentication wasn&#8217;t really a thing. We&#8217;ve come a long way as far as security and auth methods go, but should still close those gaps because it can lead to open vulnerabilities in your environment.</p>
<p>&nbsp;<br />
<strong>To summarize, legacy authentication does not enforce multi-factor authentication (MFA)</strong> so it gives attackers a preferred attack vector to exploit.  This is the biggest reason <strong>why we want to block legacy authentication</strong>.  With that said, we can now get into the modern (and preferred) methods to blocking legacy authentication using conditional access policies.</p>
<p>&nbsp;</p>
<div id="CurrentAuthSettings" style="scroll-margin-top: 15px;"></div>
<h2>How To See If Legacy Authentication Is Blocked in your Tenant</h2>
<p>Now before you go through your testing it might be a good idea to check whether basic authentication is blocked in your tenant to begin with.  Microsoft has already stated that if they don&#8217;t see any authentication requests using these older protocols, they&#8217;re going to disable it by default.  In my tenant I wasn&#8217;t using so it was actually already turned off.  To save you the headache, here are the steps to check if basic authentication is enabled in your tenant.</p>
<ul>
<li>Navigate to <a href="https://admin.microsoft.com/" rel="noopener" target="_blank">https://admin.microsoft.com/</a> to get to the Office 365 admin portal</li>
<li>Next navigate to <strong>settings</strong> -> <strong>Org Settings</strong> -> <strong>Services</strong> -> <strong>Modern Authentication</strong></li>
<ul>
<li>Direct Link: <a href="https://admin.microsoft.com/AdminPortal/Home#/Settings/Services/:/Settings/L1/ModernAuthentication" rel="noopener" target="_blank">https://admin.microsoft.com/AdminPortal/Home#/Settings/Services/:/Settings/L1/ModernAuthentication</a></li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings.png" alt="Office 365 Org Settings" width="1761" height="748" class="aligncenter size-full wp-image-3467" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings.png?v=1632729485 1761w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings-1024x435.png?v=1632729485 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings-768x326.png?v=1632729485 768w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Office-365-Org-Settings-1536x652.png?v=1632729485 1536w" sizes="(max-width: 1761px) 100vw, 1761px" /></a></p>
<p>&nbsp;</p>
<div id="ConditionalAccessPolicy" style="scroll-margin-top: 15px;"></div>
<h2>Use Conditional Access To Block Legacy Authentication In Office 365</h2>
<p>Now that we understand the why, let&#8217;s get into the how portion of this article.  We&#8217;re going to assume you have permissions to create conditional access policies. </p>
<ul>
<li>In Azure, navigate to <strong>Azure Active Directory</strong> -> <strong>Security</strong> -> <strong>Conditional Access</strong> -> Create a <strong>New Policy</strong></li>
<li>Direct Link: <a href="https://portal.azure.com/#blade/Microsoft_AAD_IAM/ConditionalAccessBlade/Policies" rel="noopener" target="_blank">https://portal.azure.com/#blade/Microsoft_AAD_IAM/ConditionalAccessBlade/Policies</a></li>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/CA-Policy-Legacy-Auth.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/CA-Policy-Legacy-Auth.png" alt="CA Policy Legacy Auth" width="1247" height="686" class="aligncenter size-full wp-image-3118" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/CA-Policy-Legacy-Auth.png?v=1622426763 1247w, https://thesysadminchannel.com/wp-content/uploads/2021/05/CA-Policy-Legacy-Auth-1024x563.png?v=1622426763 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/05/CA-Policy-Legacy-Auth-768x422.png?v=1622426763 768w" sizes="(max-width: 1247px) 100vw, 1247px" /></a><br />
&nbsp;</p>
<ul>
<li>We&#8217;ll name this policy, <strong>Common Policy &#8211; Block Legacy Authentication</strong></li>
<li><strong>Under Users and groups</strong>:</li>
<ul>
<li>Under <strong>Include</strong>: We&#8217;ll select <strong>all users</strong></li>
<li>Under <strong>Exclude</strong>: We&#8217;ll want to <strong>exclude our exclusions group</strong> &#8211; e.g. break glass/service accounts</li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Legacy-Auth-User-Assignment.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Legacy-Auth-User-Assignment.png" alt="Legacy Auth User Assignment" width="991" height="447" class="aligncenter size-full wp-image-3123" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Legacy-Auth-User-Assignment.png?v=1622427972 991w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Legacy-Auth-User-Assignment-768x346.png?v=1622427972 768w" sizes="(max-width: 991px) 100vw, 991px" /></a></p>
<p>&nbsp;</p>
<ul>
<li><strong>Cloud apps or actions</strong>:</li>
<ul>
<li>Under <strong>Include</strong>: We&#8217;ll select <strong>all cloud apps</strong></li>
<li>Under <strong>Exclude</strong>: We&#8217;ll want to <strong>leave this blank</strong></li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Cloud-App-Assignment.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Cloud-App-Assignment.png" alt="Cloud App Assignment" width="915" height="470" class="aligncenter size-full wp-image-3125" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Cloud-App-Assignment.png?v=1622429191 915w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Cloud-App-Assignment-768x394.png?v=1622429191 768w" sizes="(max-width: 915px) 100vw, 915px" /></a></p>
<p>&nbsp;</p>
<ul>
<li><strong>Conditions</strong> -> <strong>Client apps</strong>:</li>
<ul>
<li>Select &#8220;Yes&#8221; to configure policy</li>
<li>Unselect Browser and Mobile apps and desktop clients</li>
<li>Leave <strong>Exchange ActiveSync clients</strong> checked</li>
<li>Leave <strong>Other clients</strong> checked</li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Conditions-in-CA-Policy.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Conditions-in-CA-Policy.png" alt="Conditions in CA Policy" width="956" height="677" class="aligncenter size-full wp-image-3126" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Conditions-in-CA-Policy.png?v=1622429607 956w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Conditions-in-CA-Policy-768x544.png?v=1622429607 768w" sizes="(max-width: 956px) 100vw, 956px" /></a></p>
<p>&nbsp;</p>
<ul>
<li><strong>Grant</strong>:</li>
<ul>
<li>Select <strong>Block Access</strong></li>
</ul>
</ul>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Block-Access-Azure-AD-Conditional-Access-blade.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Block-Access-Azure-AD-Conditional-Access-blade.png" alt="Block Access Azure AD Conditional Access blade" width="1071" height="702" class="aligncenter size-full wp-image-3129" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Block-Access-Azure-AD-Conditional-Access-blade.png?v=1622430587 1071w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Block-Access-Azure-AD-Conditional-Access-blade-1024x671.png?v=1622430587 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Block-Access-Azure-AD-Conditional-Access-blade-768x503.png?v=1622430587 768w" sizes="(max-width: 1071px) 100vw, 1071px" /></a></p>
<p>&nbsp;</p>
<p>For the final step, <strong>set the policy to Report-only</strong> so you can have some insights before enabling the policy.  This will give you a heads up as to who is still using legacy authentication and at least give them some kind of notice to stop.  Otherwise, if you&#8217;re brave, turn it off and apply the scream test which is also just as effective as finding out who is still using it.</p>
<p>&nbsp;</p>
<div id="BlockLegacyAuthExchangeOnline" style="scroll-margin-top: 15px;"></div>
<h2>Block Legacy Authentication Exchange Online</h2>
<p>In addition to conditional access, we should also consider disabling the legacy auth methods in Exchange Online itself.  There are several ways we can about it and we&#8217;ll cover those methods as well. However, here is a quick overview.</p>
<ul>
<li>Using an Authentication Policy</li>
<ul>
<li>Apply it as the default organization policy</li>
<li>Apply it as a per user policy</li>
</ul>
<li>Disable IMAP/POP/Mapi/SMTPAuth protocols per mailbox</li>
</ul>
<p>&nbsp;</p>
<div id="CreateLegacyAuthPolicy" style="scroll-margin-top: 15px;"></div>
<h3>Create an Authentication Policy to Disable Basic Authentication</h3>
<p>Being able to create an authentication policy would be able to help you not only identify who is using the policy, but set a standard for your setup.  The command to create an auth policy is <strong>New-AuthenticationPolicy</strong>. Let&#8217;s cover two scenarios for enabling and disabling the required protocols.</p>
<pre class="brush: powershell; title: ; notranslate">
#Create a Block Legacy Authentication Policy
New-AuthenticationPolicy -Name &quot;Block Legacy Authentication&quot;


#Create an Allow All Legacy Authentication Policy
New-AuthenticationPolicy -Name &quot;Allow All Legacy Authentication&quot; -AllowBasicAuthRpc -AllowBasicAuthPop -AllowBasicAuthSmtp -AllowBasicAuthMapi -AllowBasicAuthImap -AllowBasicAuthAutodiscover -AllowBasicAuthPowershell -AllowBasicAuthActiveSync -AllowBasicAuthOfflineAddressBook -AllowBasicAuthReportingWebServices -AllowBasicAuthOutlookService -AllowBasicAuthWebServices 

#Set the authentication policy as the default authentication policy for your organization
Set-OrganizationConfig -DefaultAuthenticationPolicy 'Block Legacy Authentication'

#Set the authentication policy on a per user basis
Set-User jsnow -AuthenticationPolicy 'Block Legacy Authentication'

#Have the policy take effect within the next 30 minutes.  By default it can take up to 24 hours.
Set-User -Identity jsnow -STSRefreshTokensValidFrom (Get-Date).ToUniversalTime()
</pre>
<p>&nbsp;</p>
<div id="DisableProtocols" style="scroll-margin-top: 15px;"></div>
<h3>Disable IMAP/POP/Mapi/SMTPAuth protocols per mailbox</h3>
<p>Another alternative to the authentication method is to disable the protocols for each individual mailbox. This can be done using the Set-CASMailbox command for each of the mailboxes you&#8217;d want to disable.  </p>
<pre class="brush: powershell; title: ; notranslate">
PS C:\&gt; Get-CASMailbox blightyear

Name       ActiveSyncEnabled OWAEnabled PopEnabled ImapEnabled MapiEnabled SmtpClientAuthenticationDisabled
----       ----------------- ---------- ---------- ----------- ----------- --------------------------------
blightyear True              True       True       True        True


PS C:\&gt; Set-CASMailbox blightyear -ActiveSyncEnabled: $false -PopEnabled: $false -ImapEnabled: $false -MAPIEnabled: $false
PS C:\&gt;
PS C:\&gt; Get-CASMailbox blightyear

Name       ActiveSyncEnabled OWAEnabled PopEnabled ImapEnabled MapiEnabled SmtpClientAuthenticationDisabled
----       ----------------- ---------- ---------- ----------- ----------- --------------------------------
blightyear False             True       False      False       False

</pre>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2021/05/Set-CASMailbox-Block-Legacy-Auth.png" target="_blank" rel="noopener"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2021/05/Set-CASMailbox-Block-Legacy-Auth.png" alt="Set CASMailbox Block Legacy Auth" width="1099" height="420" class="aligncenter size-full wp-image-3466" srcset="https://thesysadminchannel.com/wp-content/uploads/2021/05/Set-CASMailbox-Block-Legacy-Auth.png?v=1632728845 1099w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Set-CASMailbox-Block-Legacy-Auth-1024x391.png?v=1632728845 1024w, https://thesysadminchannel.com/wp-content/uploads/2021/05/Set-CASMailbox-Block-Legacy-Auth-768x294.png?v=1632728845 768w" sizes="(max-width: 1099px) 100vw, 1099px" /></a></p>
<p>&nbsp;</p>
<div id="Conclusion" style="scroll-margin-top: 15px;"></div>
<h2>Conclusion</h2>
<p>That&#8217;s it.  Now we know how to block legacy authentication using conditional access policies in Azure Active Directory.  For more posts on conditional access or Azure AD in general, be sure to check out our gallery of <a href="https://thesysadminchannel.com/azure/" rel="noopener" target="_blank">Azure Active Directory</a>.</p>
<p>The post <a href="https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/">How To Block Legacy Authentication Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/use-conditional-access-to-block-legacy-authentication-in-office-365/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1927</post-id>	</item>
		<item>
		<title>How To Setup DMARC in Office 365</title>
		<link>https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/</link>
					<comments>https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/#respond</comments>
		
		<dc:creator><![CDATA[Paul Contreras]]></dc:creator>
		<pubDate>Thu, 09 Jan 2020 06:37:45 +0000</pubDate>
				<category><![CDATA[Exchange Online]]></category>
		<category><![CDATA[Office365]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[dmarc office 365]]></category>
		<category><![CDATA[dmarc setup]]></category>
		<category><![CDATA[dmarc setup office 365]]></category>
		<category><![CDATA[dmarc test]]></category>
		<category><![CDATA[enable dmarc for email]]></category>
		<category><![CDATA[Enable DMARC in Office 365]]></category>
		<category><![CDATA[how to implement dmarc]]></category>
		<category><![CDATA[Setup dmarc in office 365]]></category>
		<guid isPermaLink="false">https://thesysadminchannel.com/?p=1975</guid>

					<description><![CDATA[<p>Domain-based Message Authentication, Reporting and Conformance, otherwise known as DMARC is a protocol used for email authentication. It essentially gives domain owners the ability to protect their domain&#8217;s address from email spoofing or other unauthorized use. It is to your&#8230; <a href="https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/" class="more-link">Continue Reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/">How To Setup DMARC in Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Domain-based Message Authentication, Reporting and Conformance, otherwise known as DMARC is a protocol used for email authentication.  It essentially gives domain owners the ability to protect their domain&#8217;s address from email spoofing or other unauthorized use.  It is to your benefit to enable DMARC for your domain because it lets systems know that this email from your domain is legitimate. I&#8217;m using Office 365 for email but this applies whatever your using as well. In this article we&#8217;ll go over the steps needed to <strong>setup DMARC in Office 365</strong>.</p>
<h2>Setup DMARC in Office 365</h2>
<p>We previously <a href="https://thesysadminchannel.com/how-to-enable-dkim-in-office-365/" rel="noopener noreferrer" target="_blank">setup DKIM for Office 365</a> and as a measure to strengthen our security footprint, we&#8217;re going to setup DMARC in Office 365 as well.</p>
<ul>
<li><strong>Login</strong> to your <strong>DNS provider</strong>.  I&#8217;m using Cloudflare so i&#8217;ll get it setup there</li>
<li>Create a <strong>new TXT record</strong></li>
<li>In the <strong>name</strong> field, type: <strong>_dmarc</strong></li>
<li>In the <strong>value</strong> field, type: <strong>v=DMARC1; p=none; rua=mailto:dmarcreports@domain.com</strong></li>
<li>Set TTL to 5 minutes to allow for a quick DNS propogation. Be sure to change to 1 hour afterwords</li>
</ul>
<p>Here&#8217;s a quick break down of what the above values mean.  </p>
<h4>DMARC Explained &#8211; Quick breakdown</h4>
<p>Name or Hostname value (Domains and subdomains)</p>
<ul>
<li>Hostnames will usually be _dmarc for top level domains.  e.g.  _dmarc.thesysadminchannel.com</li>
<li>Subdomains should have _dmarc.subdomain.  e.g.  _dmarc.subdomain.thesysadminchannel.com</li>
</ul>
<p>&nbsp;<br />
Value or Content</p>
<ul>
<li>There are two required value pairs that MUST be present on every DMARC record. They are &#8220;v&#8221; and &#8220;p&#8221;.</li>
<li>The only tag-value pair for &#8220;v&#8221; is v=DMARC1</li>
<li>The &#8220;p&#8221; tag pair &#8220;p=&#8221; can be paired with none, quarantine, or reject. e.g. p=none or p=quarantine or p=reject</li>
<li>The &#8220;rua&#8221; &#038; &#8220;ruf&#8221; tags support multiple email addresses with each separated by a comma e.g. rua=mailto:dmarcreports@domain.com</li>
<li>It is recommended to start out with &#8220;p=none&#8221; so you can identify any issues with mail flow. After some time change it to quarantine or reject.</li>
</ul>
<p>&nbsp;<br />
At the end of the day this is my DMARC record looks like in Cloudflare.<br />
<a href="https://thesysadminchannel.com/wp-content/uploads/2020/08/DMARC-record-cloudflare.png" target="_blank" rel="noopener noreferrer"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2020/08/DMARC-record-cloudflare.png" alt="DMARC record cloudflare" width="1024" height="318" class="aligncenter size-full wp-image-1978" srcset="https://thesysadminchannel.com/wp-content/uploads/2020/08/DMARC-record-cloudflare.png?v=1596931568 1024w, https://thesysadminchannel.com/wp-content/uploads/2020/08/DMARC-record-cloudflare-768x239.png?v=1596931568 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<h2>How To Confirm If DMARC Is Enabled and Working</h2>
<p>Now that we have setup DMARC for our domain, we want to make sure everything is working as expected. So now the question is, how can we check to see if DMARC is enabled and working? Let’s head on over to https://mxtoolbox.com/dmarc.aspx so they can do the heavy lifting for us. </p>
<p><a href="https://thesysadminchannel.com/wp-content/uploads/2020/08/Confirm-DMARC-settings.png" target="_blank" rel="noopener noreferrer"><img decoding="async" src="https://thesysadminchannel.com/wp-content/uploads/2020/08/Confirm-DMARC-settings.png" alt="Confirm DMARC settings" width="1365" height="648" class="aligncenter size-full wp-image-1979" srcset="https://thesysadminchannel.com/wp-content/uploads/2020/08/Confirm-DMARC-settings.png?v=1596931913 1365w, https://thesysadminchannel.com/wp-content/uploads/2020/08/Confirm-DMARC-settings-1024x486.png?v=1596931913 1024w, https://thesysadminchannel.com/wp-content/uploads/2020/08/Confirm-DMARC-settings-768x365.png?v=1596931913 768w" sizes="(max-width: 1365px) 100vw, 1365px" /></a></p>
<p>The post <a href="https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/">How To Setup DMARC in Office 365</a> appeared first on <a href="https://thesysadminchannel.com">the Sysadmin Channel</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://thesysadminchannel.com/how-to-setup-dmarc-in-office-365/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1975</post-id>	</item>
	</channel>
</rss>
