How to configure transparent (Kerberos) Integrated Windows Authentication (IWA) in IAG as Internal Authentication Gateway Created by forefrontforums on 10/13/2010 9:30:46 PM Before you begin
Microsoft released a new feature in IAG SP2 that will allow you to use IAG as internal transparent authentication, authorization, network and application gateway to protect your internal assets!
The following technical article describes how to configure Integrated Windows Authentication (IWA) - Kerberos Authentication (NTLM will be covered in a different article)
Important to know!
- Only logged-in users to a domain members computers will be able to enter the IAG portal internally without entering its credentials
- When using Kerberos authentication (IWA) there are only 4 events for each session, which means that Kerberos traffic is 33% cheaper than NTLM traffic
Prerequisites
Installing ADSIEDIT on your Domain Controller
Download ADSIEDIT
http://www.computerperformance.co.uk/ScriptsGuy/adsi.zip
Register the adsiedit DLL
regsvr32 %path%\adsiedit.dll
Configuration Procedures
Configuration Procedures on the IAG side
- Please pay attention! You must use the same public hostname that you configure in IAG Trunk all the way,through the entire process. To be able to create Kerberos ticket, you must register servicePrincipalName (SPN) Attribute in Active Directory that is identical to the URL that the user will enter in the browser
We will use internal.iagserver.org as our internal URL / SPN

In the Trunk configuration, please choose "Advanced Trunk Configuration"

- Go to the "Authentication" tab
Under the "Use Integrated Windows authentication" choose "Enable Kerberos protocol"

- Press "Ok" and move to the next phase
Configuration Procedures on the Domain Controller side
- On the Domain Controller machine, open adsiedit.msc (You need to install it - read the Prerequisites section)
- Find the IAG computer account, in our environment the computer name is IAGSP2 (see the print screen below)
Right click on the computer account, choose "Properties"

On the "Attribute Editor" tab find the "servicePrincipalName" (SPN) Attribute

- Double Click on the SPN Attribute will open a window with all of its current values
- Add http/internal.iagserver.org - the SPN MUST be identical to the public hostname you configured on the IAG Trunk and the hostname in the URL
Press "Add", validate that your SPN is in the list and click "Ok"


Configuration Procedures on the Client side - Manually
- You will need to add the internal URL which you configured on the IAG Trunk to the Local Intranet zone on your clients IE so the IE will be able to send the Kerberos ticket to the IAG
- For this demo I will explain how to do it manually and also via Group Policy for the entire organization
navigate to Tools->Internet Options

- Choose the "Security" tab
Choose "Local intranet" and click on "Sites"

In the following windows, choose "Advanced"

- In the following windows please write the internal URL - the same hostname you configured in the IAG Trunk and in the SPN Attribute
click on "Add" and then click on "Close"


- Now you will be able to access the internal IAG portal without entering your credentials again!
Configuration Procedures on the Client side - via Group Policy Configuration
- To add the internal URL to the Intranet Zone via Group Policy for the entire organization follow these phases
- Open the Domain Group Policy Object Editor
Navigate to User Configuration->Windows Settings->Internet Explorer Maintenance->Security

- Duble Click on "Security Zone and Content Ratings"
Choose "Import the current security zones and privacy settings"

If this is the first time you configure it, the following notification will appear, read it and click on "Continue" to continue to the next phase

Choose "Modify Settings"

- Navigate to the "Security" tab
click on "Sites"

- In the following windows please write the internal URL -the same hostname you configured in the IAG Trunk and in the SPN Attribute
click on "Add" and then click on "Close"


On the Domain Controller, open cmd and perform gpupdate /force, validate that you see event 1704 SceCli

- Now you will be able to access the internal IAG portal without entering your credentials again!
Under the hood
Kerberos authentication via HTTP is assembled from 4 events:
- The user enters the URL, the IE perform HTTP Request
- The IAG Response with HTTP 401 Unauthorized message with the WWW-Authenticate header that contains the Authentication method = Negotiate (see the Response print screen below)
- The IE inserts the Kerberos ticket into the Request to the same Header WWW-Authenticate: Negotiate (see the Request print screen below)
- The IAG sends back HTTP 200 if the token is authorized
It's important to say that the Kerberos ticket value is longer than NTLM challenge/response value
Response Header

Request Header

If you have any issues with the following configuration please go to our Technical Forums in the following link: http://Forums.ForefrontSecurity.ORG
