A critical vulnerability was discovered in React Server Components (Next.js). Our systems remain protected but we advise to update packages to newest version. Learn More


Oct 1, 2008
  7217
(0 votes)

EPiServer Authentication using Kerberos and Custom App Pool Identity

This article describes how to get Kerberos handshake to work when the website is running with a pre configured account. It will only happen if you are browsing to the "computer's name", otherwise NTLM is used, which is the most common scenario.

I recently had a hard time to get Windows authentication working properly.

I installed a standard EPiServer CMS SP3, with Authentication mode "windows", and configured the site to use integrated security against the Sql Server.

This was going to be the intranet site, or at least the test site for the intranet.

The window dialog appeared and despite supplying all kinds of usernames and passwords, the site refused to accept my credentials.

What has happened? This is usually working fine out of the box with a minimum of necessary brain activity.

It took half a day before I found the solution, and I hope that anyone that encounter the same problem, will find some help here.



Problem

The problem was that the site (Application pool) was running under a custom identity, and that browsing was against the computer name, which means that Kerberos authentication is being used.

Browsing with the IP or the DNS alias, was no problem at all, since NTLM handshake works fine. Single sign on without any hesitation.

Solution

Log on the webserver using a domain admin account.

Download the SPN tool, and install it.

Start command prompt in the same directory as you installed setspn.

Use the setspn command to authenticate the account on the server/domain.
Syntax:
setspn -A HTTP/<servername> <domain>\<account>

example:
"setspn -A HTTP/srv01 domain1\episervice"
"setspn -A HTTP/srv01.mycomppany.com domain1\episervice"
etc

You must authenticate all hosts, otherwise it won't work.

You can list all hosts with "setspn -l <servername>"


Note that this is only necessary to do when you run the website under a pre configured account, in other more common scenarios, the Kerberos authentication will work just fine.
Oct 01, 2008

Comments

Svante Seleborg
Svante Seleborg Sep 21, 2010 10:32 AM

On a similar note. I recently had an issue where I kept getting prompted for credentials after enabling Integrated Windows authentication. The environment is typical development machine, a Windows Server 2003 with IIS, EPiServer, Visual Studio and Internet Explorer all running locally on the server. For whatever reason, it appears that IIS will insist on using Negotiate authentication, and thus try Kerberos and fail. It should fall back to NTML I think, but it doesn't. The solution in this case was to edit C:\Windows\system32\inetsrv\MetaBase.xml . Add/Change the NTAuthenticationProviders attribute to "NTML" under the IISWebServer element for the affected virtual servers. For convenience you might want to add the site to the Intranet zone, since you'll not get prompted at all then using the standard settings. Anyone know a better solution, or the exact reason why it fails to fallback to NTLM automatically?

Please login to comment.
Latest blogs
Looking back at Optimizely in 2025

Explore Optimizely's architectural shift in 2025, which removed coordination cost through a unified execution loop. Learn how agentic Opal AI and...

Andy Blyth | Dec 17, 2025 |

Cleaning Up Content Graph Webhooks in PaaS CMS: Scheduled Job

The Problem Bit of a niche issue, but we are building a headless solution where the presentation layer is hosted on Netlify, when in a regular...

Minesh Shah (Netcel) | Dec 17, 2025

A day in the life of an Optimizely OMVP - OptiGraphExtensions v2.0: Enhanced Search Control with Language Support and Synonym Slots

Supercharge your Optimizely Graph search experience with powerful new features for multilingual sites and fine-grained search tuning. As search...

Graham Carr | Dec 16, 2025

A day in the life of an Optimizely OMVP - Optimizely Opal: Specialized Agents, Workflows, and Tools Explained

The AI landscape in digital experience platforms has shifted dramatically. At Opticon 2025, Optimizely unveiled the next evolution of Optimizely Op...

Graham Carr | Dec 16, 2025

Optimizely CMS - Learning by Doing: EP09 - Create Hero, Breadcrumb's and Integrate SEO : Demo

  Episode 9  is Live!! The latest installment of my  Learning by Doing: Build Series  on  Optimizely Episode 9 CMS 12  is now available on YouTube!...

Ratish | Dec 15, 2025 |

Building simple Opal tools for product search and content creation

Optimizely Opal tools make it easy for AI agents to call your APIs – in this post we’ll build a small ASP.NET host that exposes two of them: one fo...

Pär Wissmark | Dec 13, 2025 |