在IIS网站上配置Kerberos认证
以下是如何在运行Windows Server 2012 R2的IIS网站上配置透明SSO(单点登录)Kerberos域用户身份验证的分步指南。
在Web服务器上启动IIS管理器,选择所需的网站并转到“身份验证”部分。如我们所见,默认情况下只启用了 匿名认证。禁用并启用 Windows身份验证(首先,IIS始终尝试执行匿名身份验证 )。
下一步包括为网站名称注册 服务主体名称(SPN)条目,用户将访问该条目。如果IIS网站只能通过其所在服务器的名称可用(http://服务器名或者http://server-name.adatum.loc),无需创建其他SPN条目(AD中的服务器帐户中已存在SPN条目)。如果网站地址与主机名不同,或者我们正在构建具有负载平衡功能的Web场,则必须将其他SPN条目连接到服务器或者用户帐户。
假设,我们有一个IIS服务器场。在这种情况下,最好创建一个单独的AD帐户并将SPN条目绑定到它。我们网站的目标应用程序池将从此帐户启动。
创建域帐户 iis服务。确保没有为此对象分配SPN条目(servicePrincipalName属性为空)。
因此,当用户访问这些地址并验证会话时,我们允许此帐户解密Kerberos票证。
我们可以这样检查帐户的SPN设置:
setspn /l iis_service
打开 高级设置进入 身份
然后在IIS管理器中转到网站并选择 配置编辑器。
在下拉菜单中选择 system.Web服务器>安全>身份验证>Windows身份验证
必须在所有web场服务器上配置相同的配置。
让我们测试Kerberos身份验证。打开,打开http://webportal.adatum.loc在客户端的浏览器。 ****
注。在我的情况下,我无法在IE11中同时进行身份验证。我不得不将地址添加到受信任网站列表中,并在受信任区域站点设置中的 用户身份验证->登录中指定 使用当前用户名和密码自动登录。