标签: adfs

为什么一个用户可以通过多个 UPN 登录?

我已将公司的所有用户的 UPN 后缀从us.mycompany.local更改为mycompany.com,以便使用声明感知应用程序。在更改之前的测试中,我发现即使我更改了 UPN 后缀,用户也可以使用旧后缀成功进行身份验证。我不明白的是为什么这仍然有效。

active-directory windows-authentication adfs

7
推荐指数
1
解决办法
2万
查看次数

经典管道模式下的 Windows Identity Foundation (WIF) 应用程序 + ADFS 2.0 - 可能吗?

我有一个使用 Windows Idendity Foundation SDK 和 ADFS 2.0 进行身份验证的工作测试应用程序,它在 Windows Server 2008 R2、IIS 7.5、集成托管管道应用程序池模式上运行。

我的问题是,由于遗留代码,我需要使用这种身份验证设置的“真实”应用程序只能在经典托管管道应用程序池模式下运行,当我选择它时,我收到“HttpException (0x80004005): Failed to执行 URL”错误。

有谁知道如何解决这个问题?

更新:我发现https://example.com/myapplicatio/给了我错误,但https://example.com/myapplicatio/Default.aspx有效。

iis iis-7.5 adfs

6
推荐指数
1
解决办法
1955
查看次数

支持 ADFS 2.2 OAuth 流中的刷新令牌

我和我的同事正在尝试在 ADFS 2.2 中启用 OAuth。一切正常,除了服务器只传回一个访问令牌(带过期)并且在成功登录后不包括刷新令牌。关于此的文档很少,但是有人知道需要更新哪些设置才能返回刷新令牌吗?

编辑:建议的OAuth 2.0规范状态:

颁发刷新令牌是可选的,由授权服务器决定。如果授权服务器发出刷新令牌,则在发出访问令牌时包含它

由于我收到了访问令牌,但没有刷新令牌,而且由于 ADFS 目前仅实现 OAuth 的代码流,因此我猜测 ADFS 团队选择不返回刷新令牌。不过,我很想确切地听到这一点。

编辑:就像下面的 Travis 所说,确保

  • RPIssueOAuthRefreshTokensTo设置正确
  • RPAlwaysRequireAuthentication是假的
  • RPTokenLifetime低于 ADFSSSOLifetime

adfs oauth

6
推荐指数
1
解决办法
4119
查看次数

在 AD 服务器本身上安装 ADFS 是一个坏主意吗?

与客户端一起配置 ADFS,刚刚在电子邮件中收到了这个:

“我们使用 Server 2008 Enterprise,在同一台机器上运行 AD、GP、DNS 和 DHCP。”

现在他表示他也想在同一个盒子上安装 ADFS。我什至不确定 ADFS 和 AD 是否可以在同一台服务器上,但如果可以,我也想知道这是否是个好主意。

adfs

5
推荐指数
1
解决办法
1万
查看次数

在 ADFS 2.0 中发送不加密的 NameID 声明

我的服务提供商发出带有 NameIDPolicy 标记的 SAML 2.0 AuthRequest,如下所示:

<samlp:NameIDPolicy AllowCreate="true" 
       Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient"/>
Run Code Online (Sandbox Code Playgroud)

这会导致 ADFS 2.0 正确发出 SAML 响应,其中包含由类似于此处找到的规则创建的加密 NameID 令牌

<NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">    
        MyeHAMeGLojBt7fcc2DQtntXXFka0kybkR42ZTitTUs=</NameID>
Run Code Online (Sandbox Code Playgroud)

然而,到目前为止一切顺利,我的服务提供商似乎不理解加密的 NameID 声明,并期望它未加密,同时名称格式为transient

根据本文档,ADFS2.0 将瞬时或持久 NameID 格式的请求视为隐私场景(以及加密)

所以我的问题是:有没有办法让 ADFS 2.0 生成具有 Format=transient 的 NameID 声明和未加密的 NameID,如下所示:

<NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">Joe</NameID> 
Run Code Online (Sandbox Code Playgroud)

adfs

5
推荐指数
2
解决办法
9624
查看次数

ADFS SAML 单点注销

我正在处理作为依赖方连接到 ADFS 的 Web 应用程序,以便与合作伙伴声明提供程序进行单点登录集成。这一切都通过 SAML(而不是 WS 联合)。Web 应用程序是 .NET 并使用 WIF SAML 扩展。所有这些都适用于 SSO。

不起作用的是单点注销到索赔提供者。我的应用程序通过 WIF 扩展正确重定向到带有 SAML 注销请求的https://adfs.example.com/adfs/ls,然后 ADFS 又在 /saml/redirect/sloresponse 重定向回我。这一切都很好,但永远不会发生任何上游到声明提供者(SAML 身份提供者)以从那里注销的情况。声明提供程序确实在其 SAML 元数据中发布了 SingleLogoutService,并且当声明提供程序直接将 SAML 与我的 Web 应用程序对话(中间没有 ADFS)时,它会起作用。

问题:

  1. ADFS 是否完全支持上游 SAML 单点注销?在网上搜索我发现了一些神秘的笔记,但我找不到确切的来源。

  2. 如果不在 ADFS 2.0 中,是否在 ADFS 2.1 中?如有必要,我们可以升级到 Windows 2012。

  3. 如果不是 SAML,ADFS 可以使用 WSFederation 做到这一点吗?声明提供者信任和依赖方信任都需要 WSFed 吗?

  4. 如果根本不可能,是否有任何推荐的解决方法?也许直接重定向到声明提供程序并将 SAML 注销请求推送到 ADFS?

谢谢!

adfs federated

5
推荐指数
1
解决办法
5640
查看次数

将 objectGUID 作为 AD FS 2.0 声明发送

我想objectGUID使用在 Windows Server 2012 上运行的 AD FS 2.0 作为声明发送。

我知道我可以为依赖方信任创建颁发转换规则,但 AD FS 2.0 如何知道objectGUID?我是否需要objectGUID在 AD FS\Service\Claim Descriptions 下添加声明描述?

active-directory adfs windows-server-2012

5
推荐指数
1
解决办法
5674
查看次数

您可以通过 ADFS 获取用户列表吗?

我需要实现一个可以从公司外部访问的公司网站。要求用户能够使用与访问公司网络 (Active Directory) 相同的凭据登录。我最初想使用 ADFS,但似乎无法访问有关其他用户的信息。我需要能够列出其他用户,获取他们所属的组等。我也可能需要修改有关服务器中用户的信息。

我没有任何与 Active Directory 相关的经验。直接将 LDAP 与自定义身份验证一起使用是更好的选择吗?有什么建议或更正吗?

active-directory ldap .net asp.net-mvc adfs

5
推荐指数
1
解决办法
4273
查看次数

如何在 ADFS 3.0 中启用 SAML 被动身份验证?

几年来,我一直使用 ADFS 2.x 作为与 SAML 被动身份验证配合使用的 SAML IDP。当在请求上设置 isPassive=true 标志时,响应将包括以下状态代码部分:

<samlp:Status>   
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder">  
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:NoPassive"/>   
</samlp:StatusCode> 
</samlp:Status>
Run Code Online (Sandbox Code Playgroud)

带有 NoPassive 的辅助状态代码,以指示用户尚未登录到 ADFS。

但是,在我的新 ADFS 3.0 实例上,响应不包括 NoPassive 子状态,因此无法确定响应是一般错误还是预期的 NoPassive 行为。我希望行为是相同的。

对此是否有新设置,或者我缺少其他什么?

active-directory adfs

5
推荐指数
1
解决办法
1229
查看次数

无法更新密码。为新密码提供的值不符合域的长度、复杂性或历史要求

我正在使用联合身份进行 Office-365 单点登录。我已将密码更改端点添加到我的 ADFS 3.0 服务器,并成功打开了 adfs 更新密码页面。但是,每当我尝试更新密码时,都会出现上述错误。我确定了以下几点:

1- 我的密码太复杂,包含大写、小写、数字和非字母数字字符
2- 我等了 1 小时,因为我发现 ADSI 编辑器中密码的最小年龄为 1 小时

我打开组策略管理--> 扩展我的域名--> 域控制器--> 默认域控制器策略--> 右键单击​​编辑--> 导航到密码策略。我发现所有策略设置都设置为“未定义”。

我打开我的 ADFS 服务器并打开本地组策略编辑器 --> 导航到密码策略,设置如下: 在此处输入图片说明

我确保我的密码符合这些设置:

启用此策略设置后,用户必须创建强密码以满足以下最低要求:

密码不能包含用户的帐户名或超过两个连续字符的用户全名部分。

密码长度必须至少为六个字符。

密码必须包含来自以下四个类别中的三个类别的字符:

英文大写字符(A 到 Z)。

英文小写字符(a 到 z)。

非字母字符(例如,!、$、#、%)。

我无法通过 ADFS 密码更改页面更新密码有什么问题?

active-directory adfs password-policy windows-server-2012-r2

5
推荐指数
1
解决办法
3万
查看次数