问题标签 [claims]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
250 浏览

wcf - 日内瓦服务器 STS

我的要求是分配给用户的声明是公司知道的,例如用户 1:是公司 1 的产品经理的发布者,但同一用户只是公司 B 的编辑。这可以通过日内瓦服务器实现,或者需要额外的代码被写来覆盖类。

0 投票
4 回答
4995 浏览

wcf - ASP.Net WCF 服务的 Thread.CurrentPrincipal 被联邦 (WIF) 环境中的某些拦截器丢弃

我有一个托管在 IIS (.svc) 中的每次调用 WCF 服务。在服务的构造函数中,我按照本文设置了Thread.CurrentPrincipal = HttpContext.Current.User。在这种情况下, HttpContext.Current.User属于Microsoft.IdentityModel.Claims.ClaimsPrincipal类型,并且具有从我的自定义被动 STS 发回的声明。

但是,一旦我进入我的服务操作并检查Thread.CurrentPrincipal,虽然该对象仍然是Microsoft.IdentityModel.Claims.ClaimsIdentity类型,但该对象本身不再与HttpContext.Current.User相同(IsAuthenticated = false , AuthenticationType = "" 和 Name 在 Thread.CurrentPrincipal.Identity 上为空),而这些值仍然在HttpContext.Current.User上正确填写。这告诉我,某些东西正在拦截对操作的调用,并将当前主体错误地更改为一些通用的、空的、未经身份验证的声明主体。

我在构造函数和操作中检查了线程 ID,这两个地方都相同,并且在从HttpContext.Current.User分配后立即窗口中评估Thread.CurrentPrincipal表明线程标识在构造函数,所以在构造函数和方法之间肯定会执行某些东西,并且某些东西正在改变我的Thread.CurrentPrincipal

有谁知道这是在做什么,以及我该如何防止/修复这种行为?

0 投票
0 回答
416 浏览

sharepoint-2010 - BDC 中的 Sharepoint 2010 声明

我希望我的 BDC ReadList() 操作能够根据来自用户声明的电子邮件获取对象。我尝试在 webpart 中使用 IClaimsPrincipal,没有问题,但我无法让它在 BDC 模型中工作。

基本上我想做这样的事情:

ReadList() { 1. 获取 Claims 对象 2. 从 Claims 对象获取电子邮件 3. 使用该电子邮件进行查询 4. 返回查询结果 }

对此事的任何想法/想法都会非常感激。

0 投票
1 回答
814 浏览

security - 基于声明的身份验证:字符串是声明的本质吗?

一段时间以来,我一直在使用Windows Identity Foundation进行基于声明的身份验证编程。

在我看来,在Windows Identity Foundation中,一旦用户登录,声明基本上就是描述用户的信息字符串。

使用旧的基于角色的身份验证,我可以说用户是或不是给定组的成员,但使用基于声明的身份验证,我现在可以拥有描述用户的信息字符串。“这个用户是女性”。该用户出生于“1975 年 7 月 6 日”。“此用户使用 USB 密钥登录”。

它是基于声明的身份验证的本质,我有框架提供给应用程序的用户信息字符串吗?

0 投票
1 回答
606 浏览

wif - 我如何通过 WIF 请求被动 STS 的额外索赔?

我有以下内容:

  1. 充当身份提供者 (IDP STS) 的网站 ASP.Net 应用程序
  2. 联合提供者 (FP STS)
  3. 充当 (RP) 的资源 ASP.NET MVC 网站

当尝试访问 RP 中的资源时,它会通过 FP STS 并被重定向到 IDP STS。用户输入他们的凭证,在其有效性后,IDP 提供一些声明,这些声明传递给 FP STS,然后发送回 RP。在 RP 方面,收到索赔并提供资源。我如何向 RP 提出额外的索赔请求?

任何建议或方向都会很棒!谢谢,

0 投票
1 回答
1230 浏览

wif - 使用基于 JAVA 的 STS 进行基于声明的身份验证?

我们有一个基于 java 的 STS 服务。我们希望将此 STS 用于 WIF 提供的基于声明的身份验证。有人可以提供一些关于如何实现这一点的见解吗?我遇到的所有示例都使用基于 C# 的 STS 和基于 C# 的 RP 。在我的情况下,RP 可以是 C#,但 STS 必须是 Java。具体来说,我想知道如何将 SAML 请求传递给 STS,以及传递给 RP 的声明格式。

谢谢,索姆纳斯

0 投票
2 回答
1532 浏览

.net - 尝试通过 WebClient 访问 SharePoint 列表中的文件时收到 403 响应

我正在尝试使用 System.Net.WebClient 访问 SharePoint 列表中的文件。该列表禁用了匿名访问(当我们打开它时,它可以工作)并且我们正在使用基于声明的身份验证。我知道还有其他方法可以访问 SharePoint 列表中的文件,但这是关于我对 Office Web Apps Web 服务的调用,在该服务中我必须传递我希望它生成图像的文件的 URL . 使用此 URL 调用 OWA Web 服务并尝试通过 WebClient 直接下载文件都会产生相同的错误。

该错误是 403 被禁止的,经过一番谷歌搜索后,我认为原因与使用基于声明的身份验证有关。我已经尝试了一些建议的补救措施,但到目前为止没有任何效果。我可以使用浏览器访问文件和 Web 服务,并且在我收到身份验证挑战后它可以工作。如果我故意未能通过身份验证质询,我会收到 401 错误(不是 403),所以我不认为凭据有任何问题(我已经对它们进行了硬编码)。我尝试使用 RunWithElevated Privileges 运行代码,但这无济于事。

这是一些示例代码:

任何帮助表示赞赏!

0 投票
1 回答
448 浏览

wcf - Windows 身份基础声明来自 wcf 服务的访问权限

当我尝试从 WCF 方法实现中获取声明时,我得到了一个类型的对象,System.Security.Principal.WindowsPrincipal它应该是一个类型的对象Microsoft.IdentityModel.Claims.ClaimsPrincipal。有谁知道我在实现这个目标的设置中缺少什么?

代码行:IClaimsPrincipal principal = Thread.CurrentPrincipal as IClaimsPrincipal;

提前致谢

0 投票
2 回答
1092 浏览

c# - 使用声明对 basicHttpBinding WCF 服务进行 Ntlm 身份验证

这个特定的声明身份验证环境恰好是 SharePoint。SharePoint 有自己的 http 模块来强制声明身份验证。未经身份验证的访问将导致一组基于声明的身份验证选项(例如 Ntlm 和表单)。

WCF 服务客户端显然不知道如何处理 SharePoint 返回的 403 消息。理想情况下,它将针对 url“/_windows”执行 Ntlm 身份验证序列,这将产生 401 质询,然后将生成的联合 cookie 传递给 WCF 服务。

这不是处理基于多身份验证选项声明的服务的最佳实践方式,但我无法挖掘关于该主题的任何好的资源。basicHttpBinding 是徒劳的吗?在这一点上我有什么选择?

0 投票
1 回答
472 浏览

c# - 在声明环境中正确地针对 WCF 服务进行身份验证

声明身份验证模式下的 SharePoint Web 应用程序支持 NTLM,但只能通过以下步骤:

  1. HTTP 302 重定向到第二个位置。
  2. NTLM 身份验证的 HTTP 401 质询
  3. HTTP 401 验证
  4. HTTP 302 重定向回原始位置(服务)

我可以编写自定义行为、通道工厂或绑定来处理这个问题吗?有没有更好的方法来解决这个问题?