Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc ADFS 2016 IE和边缘提示_Asp.net Mvc_Adfs - Fatal编程技术网

Asp.net mvc ADFS 2016 IE和边缘提示

Asp.net mvc ADFS 2016 IE和边缘提示,asp.net-mvc,adfs,Asp.net Mvc,Adfs,我们有一个现场ADFS 2016服务器设置,用于对web应用程序的客户端进行身份验证。这对于IE或Edge以外的浏览器来说似乎效果不错。 当使用这些浏览器时,客户端会收到401,并在尝试访问ADFS登录页面时提示输入其凭据。 此版本的ADFS不使用IIS,因此没有任何设置。 我们确保ADFS DNS条目是A记录。 我们尝试将adfs url添加到客户端浏览器中的受信任站点,但没有成功。 是否需要设置其他内容才能使其工作?此问题可能与ADFS中的主身份验证设置设置为Windows身份验证有关。这在

我们有一个现场ADFS 2016服务器设置,用于对web应用程序的客户端进行身份验证。这对于IE或Edge以外的浏览器来说似乎效果不错。 当使用这些浏览器时,客户端会收到401,并在尝试访问ADFS登录页面时提示输入其凭据。 此版本的ADFS不使用IIS,因此没有任何设置。 我们确保ADFS DNS条目是A记录。 我们尝试将adfs url添加到客户端浏览器中的受信任站点,但没有成功。
是否需要设置其他内容才能使其工作?

此问题可能与ADFS中的主身份验证设置设置为Windows身份验证有关。这在Windows 2016中可能有点不同,但在2012 R2中,如果打开ADFS控制台,在左窗格中选择身份验证策略,然后在右窗格中选择编辑全局主身份验证,您可以看到外联网和内联网用户的主身份验证设置

如果希望Windows Authn作为主要身份验证,则可能需要在IE/Edge中启用Windows集成身份验证。如果这是你的情况,我可以提供几个步骤


更新:似乎这是Kerberos和SPN问题。您的ADFS机器名和ADFS服务名不应相同。我认为问题的核心是SPN“HOST/AdfsMachineName”在ADFS服务器的AD计算机对象中注册,SPN“HOST/AdfsServiceName”在ADFS服务帐户中注册。如果AdfsMachineNameAdfsServiceName相同,则会导致重复的SPN场景

此问题可能与ADFS中的主身份验证设置设置为Windows身份验证有关。这在Windows 2016中可能有点不同,但在2012 R2中,如果打开ADFS控制台,在左窗格中选择身份验证策略,然后在右窗格中选择编辑全局主身份验证,您可以看到外联网和内联网用户的主身份验证设置

如果希望Windows Authn作为主要身份验证,则可能需要在IE/Edge中启用Windows集成身份验证。如果这是你的情况,我可以提供几个步骤


更新:似乎这是Kerberos和SPN问题。您的ADFS机器名和ADFS服务名不应相同。我认为问题的核心是SPN“HOST/AdfsMachineName”在ADFS服务器的AD计算机对象中注册,SPN“HOST/AdfsServiceName”在ADFS服务帐户中注册。如果AdfsMachineNameAdfsServiceName相同,则会导致重复的SPN场景

检查以下命令的输出

Get-AdfsProperties | Select-Object -ExpandProperty WIASupportedUseragents
应该是这样的

PS C:\Users\admin.contoso> Get-AdfsProperties | Select-Object -ExpandProperty WIASupportedUseragents
MSAuthHost/1.0/In-Domain
MSIE 6.0
MSIE 7.0
MSIE 8.0
MSIE 9.0
MSIE 10.0
Trident/7.0
MSIPC
Windows Rights Management Client
MS_WorkFoldersClient
=~Windows\s*NT.*Edge
PS C:\Users\admin.contoso>

这控制允许哪些用户代理、浏览器执行WIA。我怀疑此列表仅包含非IE Edge用户代理。

检查以下命令的输出

Get-AdfsProperties | Select-Object -ExpandProperty WIASupportedUseragents
应该是这样的

PS C:\Users\admin.contoso> Get-AdfsProperties | Select-Object -ExpandProperty WIASupportedUseragents
MSAuthHost/1.0/In-Domain
MSIE 6.0
MSIE 7.0
MSIE 8.0
MSIE 9.0
MSIE 10.0
Trident/7.0
MSIPC
Windows Rights Management Client
MS_WorkFoldersClient
=~Windows\s*NT.*Edge
PS C:\Users\admin.contoso>

这控制允许哪些用户代理、浏览器执行WIA。我怀疑此列表仅包含非IE边缘用户代理。

我认为2016年有所不同,但在身份验证方法方面,我有:Extranet-表单身份验证Microsoft Passport身份验证Intranet-表单身份验证Windows身份验证Microsoft Passport身份验证我将ADFS url添加到受信任的站点,并将自定义级别设置为使用“使用当前用户名和密码自动登录”就像我想你建议的那样,我仍然得到了提示。在ADFS中为您的外部网和内部网设置选择了所有这些身份验证方法吗?如果是这样的话,我不能马上确定优先级,但我会尝试只启用Forms身份验证,看看这是否允许您使用Forms authn登录。如果是这样,但你确实需要Windows Authn,我们可以从这里向后工作。Gilligan,如果我禁用内部网的Windows Auth,那么我在IE中不会得到提示。建议这样做吗?不,你不应该禁用wia。您是否仅在w10客户端上进行测试?我认为2016年有所不同,但在身份验证方法方面,我有:Extranet-表单身份验证Microsoft Passport身份验证Intranet-表单身份验证Windows身份验证Microsoft Passport身份验证我将ADFS url添加到受信任的站点,并设置要使用的自定义级别“使用当前用户名和密码自动登录“就像我想你建议的那样,我仍然得到提示。是否所有这些身份验证方法都是在ADFS中为您的外部网和内部网设置选择的?如果是这样的话,我不能马上确定优先级,但我会尝试只启用Forms身份验证,看看这是否允许您使用Forms authn登录。如果是这样,但你确实需要Windows Authn,我们可以从这里向后工作。Gilligan,如果我禁用内部网的Windows Auth,那么我在IE中不会得到提示。建议这样做吗?不,你不应该禁用wia。您仅在w10客户端上进行测试吗?我有相同的-MSAuthHost/1.0/域内MSIE 6.0 MSIE 7.0 MSIE 8.0 MSIE 9.0 MSIE 10.0 Trident/7.0 MSIPC Windows权限管理Cl MS_WorkFoldersClient=~Windows\s*NT.*EdgeI有相同的-MSAuthHost/1.0/域内MSIE 6.0 MSIE 7.0 MSIE 8.0 MSIE 9.0 MSIE 10.0 Trident/7.0 MSIPC Windows权限管理ClMS_WorkFoldersClient=~Windows\s*NT.*边缘