<?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>OKTA &#8211; Blog of Kliment Andreev &#8211; A place so I won&#039;t forget things</title>
	<atom:link href="https://blog.andreev.it/tag/okta/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.andreev.it</link>
	<description></description>
	<lastBuildDate>Wed, 20 Mar 2024 17:25:23 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Okta and AWS SSO (AWS IAM Identity Center)</title>
		<link>https://blog.andreev.it/2024/03/okta-and-aws-sso-aws-iam-identity-center/</link>
					<comments>https://blog.andreev.it/2024/03/okta-and-aws-sso-aws-iam-identity-center/#respond</comments>
		
		<dc:creator><![CDATA[Kliment Andreev]]></dc:creator>
		<pubDate>Wed, 20 Mar 2024 17:25:23 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[AWS IAM Identity Center]]></category>
		<category><![CDATA[OKTA]]></category>
		<category><![CDATA[SSO]]></category>
		<guid isPermaLink="false">https://blog.andreev.it/?p=9783</guid>

					<description><![CDATA[In this post I&#8217;ll describe how to integrate Okta and your AWS account. In&#8230;]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>In this post I&#8217;ll describe how to integrate Okta and your AWS account. In order everything to work, you&#8217;ll have to enable AWS Organization on the master account and then you can add multiple sub accounts in AWS.<br />
Best practice says that the AWS master account should be used for SSO only and you shouldn&#8217;t run any workloads. First thing first, let&#8217;s start with Okta. </p>
<h1>Okta</h1>
<p>Log to your Okta account or sign up for a 30 day trial. Once logged in, if you haven&#8217;t already done so, change the sign-in domain from trail*-okta.com to your domain. Or you can skip this step.<br />
Click on <strong>Admin </strong>from the upper right corner and then under <strong>Customizations</strong>, click on <strong>Domain</strong>. I&#8217;ve used the Okta-managed customization because it&#8217;s easier to manage.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-01.png"><img fetchpriority="high" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-1024x507.png" alt="" width="1024" height="507" class="aligncenter size-large wp-image-9784" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-1024x507.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-300x148.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-768x380.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-1536x760.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-2048x1014.png 2048w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-1920x950.png 1920w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-1170x579.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-01-585x290.png 585w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
After you click <strong>Next</strong>, you&#8217;ll be prompted to add two DNS entries for your domain.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-02.png"><img decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-1024x575.png" alt="" width="1024" height="575" class="aligncenter size-large wp-image-9785" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-1024x575.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-300x168.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-768x431.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-1536x862.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-1200x675.png 1200w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-1170x657.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02-585x328.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-02.png 1579w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Change the DNS. This will allow us to access Okta dashboard using our domain in my case it&#8217;s okta.andreev.it. From the same menu on the left, click on <strong>Applications</strong>, then <strong>Applications </strong>again and click on <strong>Browse App Catalog</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-03.png"><img decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-1024x584.png" alt="" width="1024" height="584" class="aligncenter size-large wp-image-9824" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-1024x584.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-300x171.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-768x438.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-1170x668.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-03-585x334.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-03.png 1230w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Search for <strong>AWS IAM</strong> and choose <strong>AWS IAM Identity Center</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-04.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-04-1024x477.png" alt="" width="1024" height="477" class="aligncenter size-large wp-image-9825" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-04-1024x477.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-04-300x140.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-04-768x358.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-04-585x273.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-04.png 1120w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click on <strong>Add Integration</strong> and then <strong>Done</strong>.<br />
Click on the<strong> Sign On</strong> tab and scroll all the way down to <strong>SAML Signing Certificates</strong>. Click on <strong>Actions </strong>drop-down and then <strong>View IdP metadata</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-05.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-1024x386.png" alt="" width="1024" height="386" class="aligncenter size-large wp-image-9830" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-1024x386.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-300x113.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-768x290.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-1170x441.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-05-585x221.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-05.png 1228w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
This will open a new tab with an XML file. Save the file as <em>metadata.xml</em>.</p>
<h1>AWS</h1>
<p>Go to console.aws.amazon.com and log with your root account. Go to <strong>IAM Identity Center</strong> and click on <strong>Enable</strong> and then select  <strong>Enable with AWS Organizations</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-06.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-06.png" alt="" width="594" height="357" class="aligncenter size-full wp-image-9831" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-06.png 594w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-06-300x180.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-06-585x352.png 585w" sizes="(max-width: 594px) 100vw, 594px" /></a><br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-07.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-1024x789.png" alt="" width="1024" height="789" class="aligncenter size-large wp-image-9832" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-1024x789.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-300x231.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-768x591.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-1170x901.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-07-585x450.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-07.png 1309w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click on <strong>Settings </strong>on the left, then <strong>Actions </strong>drop-down and click on <strong>Customize AWS access portal URL</strong>. Change the URL so it&#8217;s something that you can easily remember, e.g. yourorg or aws-master.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-10.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-1024x354.png" alt="" width="1024" height="354" class="aligncenter size-large wp-image-9836" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-1024x354.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-300x104.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-768x266.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-1536x532.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-2048x709.png 2048w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-1920x664.png 1920w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-1170x405.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-10-585x202.png 585w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click on <strong>Settings </strong>on the left, then <strong>Actions </strong>drop-down and click on <strong>Change identity source</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-08.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-1024x320.png" alt="" width="1024" height="320" class="aligncenter size-large wp-image-9833" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-1024x320.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-300x94.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-768x240.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-1536x481.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-2048x641.png 2048w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-1920x601.png 1920w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-1170x366.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-08-585x183.png 585w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Choose <strong>External identity provider</strong> and click <strong>Next</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-09.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-1024x579.png" alt="" width="1024" height="579" class="aligncenter size-large wp-image-9834" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-1024x579.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-300x170.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-768x434.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-1170x663.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-09-585x331.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-09.png 1291w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
You&#8217;ll land on a page with two parts, <em>Service provider metadata</em> (that&#8217;s AWS) and <em>Identity provider metadata</em> (that&#8217;s Okta).<br />
Click on <strong>Download metadata file</strong> from upper right. You&#8217;ll need this in Okta. The file will be named with some date prefix and some characters plus metadata.xml<br />
Copy the values for the 2nd and 3rd entry. You&#8217;ll also need these for Okta.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-11.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-11-1024x296.png" alt="" width="1024" height="296" class="aligncenter size-large wp-image-9838" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-11-1024x296.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-11-300x87.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-11-768x222.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-11-585x169.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-11.png 1155w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click on <strong>Choose file</strong> under <em>Identity provider metadata</em> and upload the <em>metadata.xml</em> file that you&#8217;ve downloaded earlier from Okta.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-12.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-12.png" alt="" width="649" height="319" class="aligncenter size-full wp-image-9839" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-12.png 649w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-12-300x147.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-12-585x288.png 585w" sizes="(max-width: 649px) 100vw, 649px" /></a><br />
Click <strong>Next</strong>, type <strong>ACCEPT </strong>and finally click <strong>Change identity source</strong>.</p>
<h1>Okta</h1>
<p>Go back to Okta, <strong>Sign On</strong> tab and right bellow click <strong>Edit</strong>. Enter the two URL entries that you copied from AWS. Click <strong>Save </strong>after.</p>
<h1>AWS</h1>
<p>Go back to AWS, then <strong>IAM Identity Center</strong>, click on <strong>Settings </strong>and click to <strong>Enable </strong>the <em>Automatic Provisioning</em>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-14.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-1024x144.png" alt="" width="1024" height="144" class="aligncenter size-large wp-image-9841" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-1024x144.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-300x42.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-768x108.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-1536x216.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-2048x287.png 2048w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-1920x269.png 1920w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-1170x164.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-14-585x82.png 585w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click on <strong>Show Token</strong> and copy both values for the <strong>SCIM endpoint </strong>and the <strong>Access Token</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-15.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-1024x632.png" alt="" width="1024" height="632" class="aligncenter size-large wp-image-9842" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-1024x632.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-300x185.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-768x474.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-1170x722.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-15-585x361.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-15.png 1216w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<h1>Okta</h1>
<p>Go back to Okta and for the AWS app, click on <strong>Provisioning </strong>and then click on <strong>Configure API Integration</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-16.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-1024x759.png" alt="" width="1024" height="759" class="aligncenter size-large wp-image-9843" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-1024x759.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-300x222.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-768x569.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-1170x867.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-16-585x434.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-16.png 1345w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Click <strong>Enable API Integration</strong> and enter the SCIM endpoint and the token value in the corresponding fields. Click <strong>Save</strong>. Remove the trailing slash from the end of the Base URL (SCIM endpoint) if you get an error (<em>Base URL: Does not match required pattern</em>)<br />
Under <strong>Provisioning </strong>tab, click on <strong>To App</strong>, click <strong>Edit </strong>and select all three checkmarks. Click <strong>Save</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-18.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-1024x755.png" alt="" width="1024" height="755" class="aligncenter size-large wp-image-9844" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-1024x755.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-300x221.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-768x567.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-1536x1133.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-1170x863.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18-585x432.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-18.png 1575w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Then, go to <strong>Assignments </strong>tab and assign a group or a user to this AWS app.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-19.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-1024x441.png" alt="" width="1024" height="441" class="aligncenter size-large wp-image-9846" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-1024x441.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-300x129.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-768x331.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-1170x504.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-19-585x252.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-19.png 1222w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<h1>AWS</h1>
<p>Go back to AWS and under <strong>IAM Identity Center</strong> and then <strong>Users</strong>, you can see the user that we just assigned.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-20.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-1024x337.png" alt="" width="1024" height="337" class="aligncenter size-large wp-image-9847" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-1024x337.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-300x99.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-768x253.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-1170x385.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-20-585x193.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-20.png 1279w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
But this user has no rights in AWS, so we have to create a Permission set and then assign this user to that permission set and the account that this user has access to. Click on <strong>Permission sets</strong> on the left and then <strong>Create permission set</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-21.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-21-1024x381.png" alt="" width="1024" height="381" class="aligncenter size-large wp-image-9848" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-21-1024x381.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-21-300x112.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-21-768x286.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-21-585x218.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-21.png 1050w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
I chose <strong>AdministratorAccess </strong>from the <strong>Predefined permission sets</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-22.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-22.png" alt="" width="657" height="616" class="aligncenter size-full wp-image-9849" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-22.png 657w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-22-300x281.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-22-585x548.png 585w" sizes="(max-width: 657px) 100vw, 657px" /></a><br />
Go back to <strong>AWS accounts</strong>, click on the account and choose <strong>Assign users or groups</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-23.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-1024x380.png" alt="" width="1024" height="380" class="aligncenter size-large wp-image-9850" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-1024x380.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-300x111.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-768x285.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-1536x570.png 1536w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-1170x434.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23-585x217.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-23.png 1642w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Select the <strong>User</strong> tab, click on the user, click <strong>Next</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-24.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-1024x641.png" alt="" width="1024" height="641" class="aligncenter size-large wp-image-9851" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-1024x641.png 1024w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-300x188.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-768x481.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-1170x732.png 1170w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-24-585x366.png 585w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-24.png 1270w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><br />
Select the permission set that we just created and click <strong>Next </strong>then <strong>Submit</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-25.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-25.png" alt="" width="766" height="582" class="aligncenter size-full wp-image-9852" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-25.png 766w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-25-300x228.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-25-585x444.png 585w" sizes="(max-width: 766px) 100vw, 766px" /></a><br />
We just told AWS that the user xyz will have access to the account abc with AdministratorAccess permissions.</p>
<h1>Test SSO</h1>
<p>Open a new tab and go to the URL that you configured earlier (<em>Customize AWS access portal</em>). It should be https://whatever.awsapps.com/start.<br />
AWS will redirect you to Okta where you&#8217;ll enter your Okta username.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-26.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-26.png" alt="" width="693" height="886" class="aligncenter size-full wp-image-9853" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-26.png 693w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-26-235x300.png 235w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-26-585x748.png 585w" sizes="(max-width: 693px) 100vw, 693px" /></a><br />
Once authenticated, you&#8217;ll see the AWS accounts in your org and the permissions that you have.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2024/03/P170-27.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2024/03/P170-27.png" alt="" width="904" height="577" class="aligncenter size-full wp-image-9854" srcset="https://blog.andreev.it/wp-content/uploads/2024/03/P170-27.png 904w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-27-300x191.png 300w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-27-768x490.png 768w, https://blog.andreev.it/wp-content/uploads/2024/03/P170-27-585x373.png 585w" sizes="(max-width: 904px) 100vw, 904px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.andreev.it/2024/03/okta-and-aws-sso-aws-iam-identity-center/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AWS, OKTA: Single sign-on in AWS Console using OKTA and on-prem Active Directory (AD)</title>
		<link>https://blog.andreev.it/2020/02/aws-okta-single-sign-on-in-aws-console-using-okta-and-on-prem-active-directory-ad/</link>
					<comments>https://blog.andreev.it/2020/02/aws-okta-single-sign-on-in-aws-console-using-okta-and-on-prem-active-directory-ad/#respond</comments>
		
		<dc:creator><![CDATA[Kliment Andreev]]></dc:creator>
		<pubDate>Sun, 16 Feb 2020 20:33:31 +0000</pubDate>
				<category><![CDATA[AWS]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[OKTA]]></category>
		<category><![CDATA[SSO]]></category>
		<guid isPermaLink="false">https://blog.andreev.it/?p=6483</guid>

					<description><![CDATA[AWS Console has its own authentication/authorization directory using IAM users, roles and policies. On&#8230;]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>AWS Console has its own authentication/authorization directory using IAM users, roles and policies. On top of that, they also offer multi-factor authentication, so your logins are much more secure. But, I wanted to see how I can use Okta for SSO between my AD domain at home and AWS. The setup is very simple as you can see from this diagram.<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-01.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-01.png" alt="" width="1778" height="1174" class="aligncenter size-full wp-image-6486" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-01.png 1778w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-300x198.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-1024x676.png 1024w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-768x507.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-1536x1014.png 1536w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-1170x773.png 1170w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-780x516.png 780w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-585x386.png 585w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-01-263x175.png 263w" sizes="(max-width: 1778px) 100vw, 1778px" /></a><br />
On the left side, AWS is missing &#8211; but you get the point. In my case, I&#8217;ll have two AD groups, <strong>AWS Full Admin</strong> and <strong>AWS Read Only</strong>. I also have two AD users, <strong>admin.user</strong> and <strong>ro.user</strong>. If you haven&#8217;t integrated your AD with Okta it&#8217;s time to do so. </p>
<h1>Okta</h1>
<p>Go to the Okta dashboard and from the menu go to <strong>Directory | Directory Integrations</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-02.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-02.png" alt="" width="742" height="500" class="aligncenter size-full wp-image-6490" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-02.png 742w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-02-300x202.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-02-585x394.png 585w" sizes="(max-width: 742px) 100vw, 742px" /></a><br />
Click on <strong>Add Active Directory</strong> and proceed so you can download an agent that you have to install on a member server with at least 8GB RAM. You can also install it on a domain controller, which I did in my lab, but I guess it&#8217;s not recommended. You&#8217;ll see this page telling you that Okta is waiting for your AD to connect.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-03.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-03.png" alt="" width="955" height="501" class="aligncenter size-full wp-image-6491" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-03.png 955w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-03-300x157.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-03-768x403.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-03-585x307.png 585w" sizes="(max-width: 955px) 100vw, 955px" /></a><br />
Go ahead and install the agent. You&#8217;ll be prompted to specify the domain name (<strong>andreev.local</strong> in my case), create a service account <strong>OktaService </strong>or choose an existing one, choose a proxy to connect to Okta servers over HTTPS (if needed) and finally you have to specify your Okta domain, e.g. the prefix for your Okta landing page, https://company.Okta.com. You have to type -company-.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-04.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-04.png" alt="" width="481" height="339" class="aligncenter size-full wp-image-6492" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-04.png 481w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-04-300x211.png 300w" sizes="(max-width: 481px) 100vw, 481px" /></a><br />
Once the service starts and authenticates with your Okta admin account to the Okta servers, your dashboard page will change asking you to specify what OUs in your AD you want to sync. Choose the OUs and choose your Okta username format.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-05.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-05.png" alt="" width="915" height="856" class="aligncenter size-full wp-image-6493" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-05.png 915w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-05-300x281.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-05-768x718.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-05-585x547.png 585w" sizes="(max-width: 915px) 100vw, 915px" /></a><br />
In my case I&#8217;ll use UPN which is <strong>username@andreev.local</strong>, but you can choose e-mail if your have a valid e-mail specified for the users, e.g. <strong>username@google.com</strong> or the SAM account which is your login that you use for AD, e.g. <strong>username</strong>. See below.<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-06.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-06.png" alt="" width="395" height="327" class="aligncenter size-full wp-image-6497" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-06.png 395w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-06-300x248.png 300w" sizes="(max-width: 395px) 100vw, 395px" /></a><br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-07.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-07.png" alt="" width="393" height="172" class="aligncenter size-full wp-image-6498" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-07.png 393w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-07-300x131.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></a><br />
Click <strong>Next </strong>and unless you have some non-standard AD attributes that you want to map, it&#8217;s safe to proceed with the defaults. Under the settings for the AD in Okta, you can choose the scheduled interval for the AD sync. By default, this sync is disabled. To test the integration, go to the settings page of your AD in Okta, choose <strong>Test Delegated Authentication</strong> (bottom right) and enter the username and password for an AD account that you know it&#8217;s synced with Okta.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-08.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-08.png" alt="" width="1077" height="687" class="aligncenter size-full wp-image-6500" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-08.png 1077w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-08-300x191.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-08-1024x653.png 1024w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-08-768x490.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-08-585x373.png 585w" sizes="(max-width: 1077px) 100vw, 1077px" /></a><br />
You can also test the integration if you go to https://-company-.okta.com and log in with a synced AD user. </p>
<h2>Okta app for AWS</h2>
<p>Before we move to AWS part, click on <strong>Applications </strong>from the menu and click on <strong>Add Application</strong> menu. Type <strong>Amazon Web Services</strong> and select the app. Do not use AWS Console app, that&#8217;s a different one.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-09.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-09.png" alt="" width="764" height="353" class="aligncenter size-full wp-image-6503" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-09.png 764w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-09-300x139.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-09-585x270.png 585w" sizes="(max-width: 764px) 100vw, 764px" /></a><br />
Click <strong>Add </strong>and you can leave the settings under <strong>General Settings</strong> or change it to AWS Console. Click <strong>Next </strong>and on the next screen, use <strong>SAML 2.0</strong><br />
Click on the <strong>Identity Provider Metadata</strong> link and download the file. You&#8217;ll need this for later.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-10.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-10.png" alt="" width="680" height="313" class="aligncenter size-full wp-image-6505" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-10.png 680w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-10-300x138.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-10-585x269.png 585w" sizes="(max-width: 680px) 100vw, 680px" /></a><br />
Click <strong>Done </strong>and once this part is completed, we can go to AWS Console and configure AWS IAM and then come back to Okta. </p>
<h1>AWS Console</h1>
<p>Log to the AWS Console with an account with sufficient rights to create IAM polices, roles and users. Go to <strong>IAM </strong>and then <strong>Identity Providers</strong> on the left side. Click <strong>Create Provider</strong> and choose <strong>SAML </strong>for <strong>Provider Type</strong>, type a description (e.g. <strong>OKTA</strong>) and choose the <strong>metadata </strong>file that you&#8217;ve just downloaded.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-11.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-11.png" alt="" width="563" height="255" class="aligncenter size-full wp-image-6506" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-11.png 563w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-11-300x136.png 300w" sizes="(max-width: 563px) 100vw, 563px" /></a><br />
Click on<strong> Next Step</strong> and then <strong>Create</strong>. Click on the entry that you just created and make a note of the ARN. You&#8217;ll need this later.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-12.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-12.png" alt="" width="657" height="239" class="aligncenter size-full wp-image-6507" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-12.png 657w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-12-300x109.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-12-585x213.png 585w" sizes="(max-width: 657px) 100vw, 657px" /></a></p>
<h2>IAM</h2>
<p>We&#8217;ll create two new roles based on existing AWS policies for full admin access and read only access. Go to <strong>IAM </strong>| <strong>Roles</strong> and click on <strong>Create Role</strong>. Click on <strong>SAML 2.0 federation</strong>, choose the <strong>SAML </strong>provider that we just created, select <strong>Allow programmatic and AWS Management Console</strong> access and click on <strong>Next: Permissions</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-13.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-13.png" alt="" width="1007" height="819" class="aligncenter size-full wp-image-6509" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-13.png 1007w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-13-300x244.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-13-768x625.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-13-585x476.png 585w" sizes="(max-width: 1007px) 100vw, 1007px" /></a><br />
You can create your own policy if you want by clicking on <strong>Create policy</strong> or choose an existing one like I did by filtering the <strong>Read Only</strong> policies. Click on <strong>Next: Tags</strong> after.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-14.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-14.png" alt="" width="1027" height="809" class="aligncenter size-full wp-image-6510" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-14.png 1027w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-14-300x236.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-14-1024x807.png 1024w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-14-768x605.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-14-585x461.png 585w" sizes="(max-width: 1027px) 100vw, 1027px" /></a><br />
You can tag your role and click <strong>Next: Review</strong> after&#8230;and finally you can create the role.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-16.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-16.png" alt="" width="1033" height="792" class="aligncenter size-full wp-image-6511" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-16.png 1033w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-16-300x230.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-16-1024x785.png 1024w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-16-768x589.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-16-585x449.png 585w" sizes="(max-width: 1033px) 100vw, 1033px" /></a><br />
Do the same again <strong>IAM | Roles | SAML</strong>, but this time create a full admin role named <strong>rolFullAdminAccess </strong>(filter the policies by <strong>Administrator</strong>).<br />
Let&#8217;s connect AWS and Okta now, but creating a user that will be able to list the roles. Go to <strong>IAM | User</strong> and click on <strong>Add user</strong>. Name your user and allow <strong>Programmatic access</strong> only.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-17.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-17.png" alt="" width="889" height="490" class="aligncenter size-full wp-image-6513" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-17.png 889w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-17-300x165.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-17-768x423.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-17-585x322.png 585w" sizes="(max-width: 889px) 100vw, 889px" /></a><br />
Click on <strong>Create policy</strong>. This will open a new window. Do not close the previous one.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-18.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-18.png" alt="" width="769" height="249" class="aligncenter size-full wp-image-6514" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-18.png 769w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-18-300x97.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-18-585x189.png 585w" sizes="(max-width: 769px) 100vw, 769px" /></a><br />
Click on the <strong>JSON </strong>tab and paste this policy. Then click <strong>Review policy</strong>.</p>
<pre class="brush: xml; title: ; notranslate">
{
    &quot;Version&quot;: &quot;2012-10-17&quot;,
    &quot;Statement&quot;: &#x5B;
        {
          &quot;Effect&quot;: &quot;Allow&quot;,
          &quot;Action&quot;: &#x5B;
              &quot;iam:ListRoles&quot;,
              &quot;iam:ListAccountAliases&quot;
          ],
          &quot;Resource&quot;: &quot;*&quot;
        }
    ]
}
</pre>
<p>Name your policy and click on <strong>Create policy</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-19.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-19.png" alt="" width="1214" height="592" class="aligncenter size-full wp-image-6517" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-19.png 1214w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-19-300x146.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-19-1024x499.png 1024w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-19-768x375.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-19-1170x571.png 1170w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-19-585x285.png 585w" sizes="(max-width: 1214px) 100vw, 1214px" /></a><br />
Go back to the previous tab and click on the refresh button, right off the <strong>Create policy</strong> button. Then filter the policy and assign it. Click <strong>Next: Tags</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-20.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-20.png" alt="" width="1004" height="241" class="aligncenter size-full wp-image-6518" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-20.png 1004w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-20-300x72.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-20-768x184.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-20-585x140.png 585w" sizes="(max-width: 1004px) 100vw, 1004px" /></a><br />
Proceed to create the user, but make sure you download the CSV file with the credentials for this user.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-21.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-21.png" alt="" width="1003" height="191" class="aligncenter size-full wp-image-6520" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-21.png 1003w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-21-300x57.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-21-768x146.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-21-585x111.png 585w" sizes="(max-width: 1003px) 100vw, 1003px" /></a></p>
<h1>Okta &#8211; app config</h1>
<p>Go back to Okta and click on the<strong> Sign On</strong> tab and then <strong>Edit</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-22.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-22.png" alt="" width="748" height="283" class="aligncenter size-full wp-image-6522" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-22.png 748w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-22-300x114.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-22-585x221.png 585w" sizes="(max-width: 748px) 100vw, 748px" /></a><br />
Scroll down a little bit and paste your ARN value (the one that you got from AWS earlier) under <strong>Identity Provider ARN (Required only for SAML SSO</strong>. It&#8217;s under <strong>IAM | Providers | -your-provider</strong> in AWS. Click <strong>Save</strong> after.<br />
Click on the <strong>Provisioning </strong>tab next to <strong>Sign On</strong> and click on <strong>Configure API Integration</strong>. Click the checkmark, then copy and paste the access key and the secret from the CSV file from AWS. Click Test API Credentials and if everything is OK, click on Save.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-24.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-24.png" alt="" width="803" height="411" class="aligncenter size-full wp-image-6524" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-24.png 803w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-24-300x154.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-24-768x393.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-24-585x299.png 585w" sizes="(max-width: 803px) 100vw, 803px" /></a><br />
Under <strong>Provisioning </strong>make sure that <strong>Create Users</strong> and <strong>Update User Attributes</strong> are enabled.<br />
Finally, go to the <strong>Assignments </strong>tab and select <strong>Groups</strong>. Then, click the green button <strong>Assign </strong>and choose <strong>Assign to Groups</strong>.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-26.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-26.png" alt="" width="598" height="399" class="aligncenter size-full wp-image-6527" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-26.png 598w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-26-300x200.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-26-585x390.png 585w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-26-263x175.png 263w" sizes="(max-width: 598px) 100vw, 598px" /></a><br />
You will see your groups here, select the first one and click the <strong>Assign </strong>button.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-27.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-27.png" alt="" width="630" height="608" class="aligncenter size-full wp-image-6528" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-27.png 630w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-27-300x290.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-27-585x565.png 585w" sizes="(max-width: 630px) 100vw, 630px" /></a><br />
You will see your roles there. Select the admin role and Save.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-28.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-28.png" alt="" width="616" height="581" class="aligncenter size-full wp-image-6529" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-28.png 616w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-28-300x283.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-28-585x552.png 585w" sizes="(max-width: 616px) 100vw, 616px" /></a><br />
Do the same for the other group and role and pretty much you are all set. Open a new browser and this time log as one of the users, in my case I am logging as admin.user to https://mycompany.okta.com.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-29.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-29.png" alt="" width="697" height="686" class="aligncenter size-full wp-image-6531" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-29.png 697w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-29-300x295.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-29-585x576.png 585w" sizes="(max-width: 697px) 100vw, 697px" /></a><br />
You&#8217;ll get a note that you have a new app assigned.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-30.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-30.png" alt="" width="764" height="365" class="aligncenter size-full wp-image-6532" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-30.png 764w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-30-300x143.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-30-585x279.png 585w" sizes="(max-width: 764px) 100vw, 764px" /></a><br />
If you click on the app icon, you&#8217;ll get logged in to the AWS console without any passwords.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-31.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-31.png" alt="" width="933" height="473" class="aligncenter size-full wp-image-6533" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-31.png 933w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-31-300x152.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-31-768x389.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-31-585x297.png 585w" sizes="(max-width: 933px) 100vw, 933px" /></a></p>
<h1>Multi-factor authentication</h1>
<p>While the above setup looks good, you still need MFA to make things even more secure. Go to the app settings in Okta and click on the Sign On tab then click Edit.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-32.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-32.png" alt="" width="736" height="256" class="aligncenter size-full wp-image-6535" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-32.png 736w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-32-300x104.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-32-585x203.png 585w" sizes="(max-width: 736px) 100vw, 736px" /></a><br />
Scroll all the way down and click on Add Rule.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-33.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-33.png" alt="" width="741" height="360" class="aligncenter size-full wp-image-6536" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-33.png 741w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-33-300x146.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-33-585x284.png 585w" sizes="(max-width: 741px) 100vw, 741px" /></a><br />
Name the rule however you want and scroll all the way down.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-34.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-34.png" alt="" width="806" height="206" class="aligncenter size-full wp-image-6537" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-34.png 806w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-34-300x77.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-34-768x196.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-34-585x150.png 585w" sizes="(max-width: 806px) 100vw, 806px" /></a><br />
Click on Prompt for fact and choose whatever you want from the settings.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-35.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-35.png" alt="" width="784" height="536" class="aligncenter size-full wp-image-6538" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-35.png 784w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-35-300x205.png 300w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-35-768x525.png 768w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-35-585x400.png 585w" sizes="(max-width: 784px) 100vw, 784px" /></a><br />
Once configured, when you log in to your Okta dashboard, you&#8217;ll get in without prompted for MFA, but when you click on the AWS Console app, you&#8217;ll get redirected to AWS to configure your MFA. You can use the Okta mobile app for MFA or Authy which I prefer. This is because we configured the MFA to occur on the AWS level, not on Okta level.<br />
<a href="https://blog.andreev.it/wp-content/uploads/2020/02/P145-36.png"><img loading="lazy" decoding="async" src="https://blog.andreev.it/wp-content/uploads/2020/02/P145-36.png" alt="" width="511" height="628" class="aligncenter size-full wp-image-6540" srcset="https://blog.andreev.it/wp-content/uploads/2020/02/P145-36.png 511w, https://blog.andreev.it/wp-content/uploads/2020/02/P145-36-244x300.png 244w" sizes="(max-width: 511px) 100vw, 511px" /></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.andreev.it/2020/02/aws-okta-single-sign-on-in-aws-console-using-okta-and-on-prem-active-directory-ad/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
