{"id":406,"date":"2016-03-10T14:59:24","date_gmt":"2016-03-10T19:59:24","guid":{"rendered":"https:\/\/jackhanington.com\/blog\/?p=406"},"modified":"2016-03-10T14:59:39","modified_gmt":"2016-03-10T19:59:39","slug":"install-and-setup-adfs-2-0-on-a-windows-server","status":"publish","type":"post","link":"https:\/\/jackhanington.com\/blog\/2016\/03\/10\/install-and-setup-adfs-2-0-on-a-windows-server\/","title":{"rendered":"Install and Setup ADFS 2.0 on a Windows Server"},"content":{"rendered":"<p>Note: This guide assumes you have a Windows server, it is joined to a domain and you have an account that is part of the domain admins group.<\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<h3>First we need to install ADFS 2.0<\/h3>\n<ol>\n<li>To install version 2.0, it first needs to be downloaded and installed. Click this link to download the installation file <a href=\"https:\/\/www.microsoft.com\/en-au\/download\/details.aspx?id=10909\">https:\/\/www.microsoft.com\/en-au\/download\/details.aspx?id=10909<\/a><\/li>\n<li>Choose the type of installation file based on your OS (I am running Server 2008 R2 so I will choose RTW\\W2K8R2\\amd64\\AdfsSetup.exe). Save the installation file to your Desktop<\/li>\n<li>Run the <strong>exe<\/strong> located on your desktop<\/li>\n<li>On the Welcome screen, click <strong>Next<\/strong><\/li>\n<li>Accept the License Agreement.<\/li>\n<li>I will be setting this ADFS server as a Federation server so I will leave the default of\u00a0<strong>Federation Server<\/strong> selected and I will click <strong>Next<\/strong>. Note: you would select Federation server proxy if you were running your ADFS server in something like a DMZ.<\/li>\n<li>Click <strong>Next<\/strong> on the prerequisite software screen. The install wizard will install these automatically if they are not already present on the system. If there are no errors, the software will be installed and the ADFS 2.0 management window will open<br \/>\n<hr \/>\n<\/li>\n<\/ol>\n<h3>The next task is to create a certificate template to use with our SSL certificate<\/h3>\n<ol>\n<li>The first thing you need to do is open the Server Manager (Start &gt; Administrative Tools &gt; Server Manager)<\/li>\n<li>Select <strong>Roles<\/strong><\/li>\n<li>Click <strong>Add Roles<\/strong><\/li>\n<li>Click <strong>Next<\/strong> to get past the Welcome Screen<\/li>\n<li>Check off <strong>Active Directory Certificate Services<\/strong> and click <strong>Next<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Select-Roles.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-407\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Select-Roles.png\" alt=\"Select Roles\" width=\"703\" height=\"540\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Select-Roles.png 703w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Select-Roles-300x230.png 300w\" sizes=\"auto, (max-width: 703px) 100vw, 703px\" \/><\/a><\/li>\n<li>Click <strong>Next<\/strong> to get past the Welcome Screen<\/li>\n<li>Click <strong>Next<\/strong> on the <strong>Role Services <\/strong>page<\/li>\n<li>Leave the default of <strong>Enterprise<\/strong> selected and click <strong>Next<\/strong>. Note: if Enterprise is not an option, you must log out of the server and log back in using an account that is a member of the Domain Administrators group.<\/li>\n<li>On the next page you need to decide between choosing a Root CA or a Subordinate CA. Select Root CA if you are OK with using a self-signed certificate for your ADFS instance. Select Subordinate CA if you would like to purchase a certificate from a 3<sup>rd<\/sup> party certificate authority. I will be using a self-signed certificate so I will select <strong>Root CA<\/strong> and click <strong>Next<\/strong>.<\/li>\n<li>Click <strong>Next<\/strong> on the <strong>Private Key<\/strong> page to create a new private key.<\/li>\n<li>Choose the type of cryptography you would like to use on the next page. I will leave the default of SHA1 with a 2048 bit key character length, but you can choose whatever you want. Then click <strong>Next<\/strong><\/li>\n<li>Click<strong> Next <\/strong>on the<strong> CA Name <\/strong>page<\/li>\n<li>Choose how long you want the certificate to be valid. I will leave the default of 5 years set. Click <strong>Next<\/strong><\/li>\n<li>Click<strong> Next <\/strong>on the<strong> Certificate Database <\/strong>page<\/li>\n<li>Click <strong>Install<\/strong> to finish and then close the wizard when complete<\/li>\n<li>Next open up the Certificate Authority (Start &gt; Administrative Tools &gt; Certificate Authority)<\/li>\n<li>Expand your server on the left column, right click <strong>Certificate Templates<\/strong> and click <strong>Manage<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/manage.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-408\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/manage.png\" alt=\"manage\" width=\"231\" height=\"227\" \/><\/a><\/li>\n<li>Scroll down to the end of the list, right click <strong>Web Server<\/strong> and click <strong>Duplicate Template<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Duplicate-Template.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-409\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Duplicate-Template.png\" alt=\"Duplicate Template\" width=\"528\" height=\"201\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Duplicate-Template.png 528w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Duplicate-Template-300x114.png 300w\" sizes=\"auto, (max-width: 528px) 100vw, 528px\" \/><\/a><\/li>\n<li>Select <strong>Windows Server 2008 Enterprise <\/strong>and click<strong> OK<\/strong>. Note: you would select Windows Server 2003 only if you had 2003 servers on your network that needed to access the ADFS services.<\/li>\n<li>Give the template a name (ex: ADFS SSL Certificate)<\/li>\n<li>Next click on the <strong>Subject Name <\/strong>tab at the top.<\/li>\n<li>Click the <strong>Build from this Active Directory information<\/strong> radio button, select <strong>Common Name<\/strong> from the subject name format dropdown, uncheck <strong>User principal name (UPN)<\/strong> and check <strong>DNS\u00a0name<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-410\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties.png\" alt=\"Template Properties\" width=\"465\" height=\"545\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties.png 465w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties-256x300.png 256w\" sizes=\"auto, (max-width: 465px) 100vw, 465px\" \/><\/a><\/li>\n<li>In order for the ADFS server to obtain a certificate, it needs to have the correct permission set up to do so. To do this, select the <strong>Security<\/strong> tab at the top.<\/li>\n<li>To add the required permissions, click the <strong>Add<\/strong><\/li>\n<li>Click the <strong>Object Types\u2026 <\/strong>button, check <strong>Computers<\/strong> on the newly opened window and click <strong>OK<\/strong>.<br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Object-Types.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-411\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Object-Types.png\" alt=\"Object Types\" width=\"529\" height=\"555\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Object-Types.png 529w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Object-Types-286x300.png 286w\" sizes=\"auto, (max-width: 529px) 100vw, 529px\" \/><\/a><\/li>\n<li>Enter the name of the server that you previously installed ADFS on and click <strong>OK<\/strong>. The server will be added to the permission list.<\/li>\n<li>Next we need to set Enroll the allow permission for this particular server. Check <strong>Enroll<\/strong> and click <strong>OK<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties-Security.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-412\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties-Security.png\" alt=\"Template Properties - Security\" width=\"441\" height=\"530\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties-Security.png 441w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Template-Properties-Security-250x300.png 250w\" sizes=\"auto, (max-width: 441px) 100vw, 441px\" \/><\/a><\/li>\n<li>Now we need to make this certificate template is available to be used to issue certificates. To do this, open up the Certificate Authority window again (Start &gt; Administrative Tools &gt; Certificate Authority)<\/li>\n<li>Right\u00a0click the <strong>Certificate Templates<\/strong> icon in the left column, hover over <strong>New<\/strong> and click <strong>Certificate Template to Issue\u00a0<\/strong><br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificate-Template-to-Issue.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-413 alignnone\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificate-Template-to-Issue.png\" alt=\"Certificate Template to Issue\" width=\"426\" height=\"278\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificate-Template-to-Issue.png 426w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificate-Template-to-Issue-300x196.png 300w\" sizes=\"auto, (max-width: 426px) 100vw, 426px\" \/><\/a><\/li>\n<li>Select the name of the template you made previously (in my example I made it ADFS SSL Certificate) and click <strong>OK<\/strong>.<br \/>\n<hr \/>\n<\/li>\n<\/ol>\n<h3>The next task is to create a SSL certificate on the server that is compatible with ADFS<\/h3>\n<ol>\n<ol>\n<li>Open up a management console window on your server (Start, type in mmc.exe and hit enter)<\/li>\n<li>Click file and click Add or Remove Snap-ins<\/li>\n<li>Highlight <strong>Certificates<\/strong> and click <strong>Add<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificates.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-414\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificates.png\" alt=\"Certificates\" width=\"675\" height=\"384\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificates.png 675w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Certificates-300x171.png 300w\" sizes=\"auto, (max-width: 675px) 100vw, 675px\" \/><\/a><\/strong><\/li>\n<li>Select <strong>Computer Account<\/strong> and click <strong>Next<\/strong> and then click <strong>Finish<\/strong><\/li>\n<li>Now that the options are configured, click <strong>OK<\/strong><\/li>\n<li>On the Console window, click <strong>View<\/strong> and then select <strong>Options<br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Options.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-415\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Options.png\" alt=\"Options\" width=\"359\" height=\"224\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Options.png 359w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Options-300x187.png 300w\" sizes=\"auto, (max-width: 359px) 100vw, 359px\" \/><\/a><\/strong><\/li>\n<li>Select <strong>Certificate purpose<\/strong> and then click This will allow us to view the computer\u2019s certificate by their purpose.<\/li>\n<li>In the <strong>Intended Purposes<\/strong> view, right click <strong>Server Authentication<\/strong>, hover over <strong>All Tasks<\/strong> and click <strong>Request New Certificate<br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Request-New-Certificate.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-416\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Request-New-Certificate.png\" alt=\"Request New Certificate\" width=\"482\" height=\"250\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Request-New-Certificate.png 482w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Request-New-Certificate-300x156.png 300w\" sizes=\"auto, (max-width: 482px) 100vw, 482px\" \/><\/a><\/strong><\/li>\n<li>Click <strong>Next<\/strong> on the welcome screen.<\/li>\n<li>Click <strong>Next<\/strong> on the <strong>Select Certificate Enrollment Policy<\/strong><\/li>\n<li>Select the template you created before (ex: ADFS SSL Certificate) by checking it and clicking <strong>Enroll.<br \/>\n<a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Enroll.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-417\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Enroll.png\" alt=\"Enroll\" width=\"651\" height=\"456\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Enroll.png 651w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Enroll-300x210.png 300w\" sizes=\"auto, (max-width: 651px) 100vw, 651px\" \/><\/a><\/strong><\/li>\n<li>Click <strong>Finish<\/strong> and close all of the open windows.<\/li>\n<\/ol>\n<\/ol>\n<hr \/>\n<p>&nbsp;<\/p>\n<h3>The next task will be to configure ADFS<\/h3>\n<ol>\n<li>Open up ADFS management (Start &gt; Administrative tools &gt; AD FS 2.0 Management)<\/li>\n<li>On the ADFS 2.0 management window, click <strong>ADFS 2.0 Federation Server Configuration Wizard<\/strong><a href=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Wizard.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-418\" src=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Wizard.png\" alt=\"Wizard\" width=\"824\" height=\"358\" srcset=\"https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Wizard.png 824w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Wizard-300x130.png 300w, https:\/\/jackhanington.com\/blog\/wp-content\/uploads\/2016\/03\/Wizard-800x348.png 800w\" sizes=\"auto, (max-width: 824px) 100vw, 824px\" \/><\/a><\/li>\n<li>Leave the default of <strong>Create a new Federation Service<\/strong> selected and click <strong>Next<\/strong><\/li>\n<li>On the <strong>Select Deployment Type<\/strong> page, select Stand-alone federation server and click <strong>Next<\/strong><\/li>\n<li>Make sure your SSL certificate is selected on the <strong>Federation Service Name<\/strong> page and click <strong>Next<\/strong><\/li>\n<li>Click <strong>Next<\/strong> on the summary screen and wait for the wizard to complete.<\/li>\n<li>One the wizard is finished, click <strong>Close<\/strong>. Now ADFS is installed and ready to be used.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Note: This guide assumes you have a Windows server, it is joined to a domain and you have an account that is part of the domain admins group. &nbsp; First we need to install ADFS 2.0 To install version 2.0, it first needs to be downloaded and installed. Click this link to download the installation&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[101,20,3,67,4,54,6],"tags":[108,96,102,107,111,109,110,118,105,106,103,13,113,5,114,112,45,104,115,93],"class_list":["post-406","post","type-post","status-publish","format-standard","hentry","category-adfs","category-blog","category-information-technology","category-microsoft","category-servers","category-software","category-windows","tag-2-0","tag-active-directory","tag-adfs","tag-certificate","tag-encryption","tag-federation-service","tag-federation-services","tag-microsoft","tag-role","tag-roles","tag-saml","tag-server","tag-server-2008","tag-server-2008-r2","tag-servers","tag-service","tag-ssl","tag-sso","tag-windows","tag-windows-server"],"_links":{"self":[{"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/posts\/406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/comments?post=406"}],"version-history":[{"count":2,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/posts\/406\/revisions"}],"predecessor-version":[{"id":420,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/posts\/406\/revisions\/420"}],"wp:attachment":[{"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/media?parent=406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/categories?post=406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jackhanington.com\/blog\/wp-json\/wp\/v2\/tags?post=406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}