问题标签 [wif]

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 投票
3 回答
6565 浏览

wcf - 如何获取 WCF 声明/安全标识符 (SID) 的 WindowsIdentity 或 WindowsPrincipal?

我正在尝试允许管理员组中的所有用户通过 WCF 进行访问。

0 投票
2 回答
598 浏览

wif - 日内瓦服务器和 SQL 存储

我从一些 microsoft connect 博客中听说,Geneva Server 使用 AD/LDAP 作为身份提供者。如果我必须在 SQL Server 中配置我自己的自定义属性存储,那么这些用户不在 AD 组中是可能的。从博客中我看到的是 Genevea Server 与 AD 紧密耦合,如果我必须使用自定义store 然后我必须通过覆盖来自日内瓦框架的基类来编写我的自定义 STS。所以我的问题是是否可以从 SQL 商店验证用户(不在 AD 组中)通过日内瓦服务器 Beta 2 签证?

0 投票
3 回答
1854 浏览

wif - Windows Identiy foundation redistributable failed on Vista Home Premium edition

Yesterday it was announed that WIF - Windows Identity Foundation SDK RC was released in public domain. I tried installing the msu file from MSDN on my PC which has Home Premium edition of Vista and it failed? Microsoft mentions that Vista is supported but does not mention any versions of Vista on the site...Does anyone have similar problems??

0 投票
3 回答
7211 浏览

.net - WIF 手动生成 federationmetadata.xml

我正在使用 Windows 身份基础,我正在尝试创建一个基于 MVC.NET 的安全令牌服务并将其用作单点登录应用程序。

我唯一的问题是我不知道如何生成 federationmetadata.xml 文件。

是否有任何工具可以手动生成此文件?

0 投票
2 回答
37103 浏览

visual-studio - “我的”证书存储在哪里?

因为我很棒,我正在尝试在我的 7 boxen 上使用 VS2k10 B2 运行最新的 WIF 演示应用程序……当然是 64 位(我的胡须很强壮)我在运行它时遇到了问题。

整个演示的一部分需要我在本地机器上安装一些证书。问题是他们要求我将一些网站证书安装到名为LocalMachine/My的证书存储中。好吧,似乎没有任何/My了。出现了一个可疑的类似商店,名为Personal,但如果我在那里安装证书并更改配置以查看LocalMachine/Personal ,该应用程序将无法运行。

如果我在TrustedPeople中安装证书(当我尝试使用 Personal 时抛出的异常将其称为有效位置),这就足够了吗?在生产机器上这样做会被认为是不好的形式吗?


Windows Identity Foundation 测试项目位于: http ://claimsbasedwpf.codeplex.com

例外:

属性名称:'certificateReference' 错误:'ID1025:找不到符合条件的唯一证书。StoreName:“我的”StoreLocation:“LocalMachine”X509FindType:“FindBySubjectDistinguishedName”FindValue:“CN=busta-rpsts.com”

0 投票
4 回答
2473 浏览

.net - Windows Identity Foundation - 第三方安全令牌服务器

我正试图了解所有基于声明的 Windows 身份基础魔法。

假设我不想使用 ADFS,我不清楚的一件事是最好使用 WIF 推出自己的 STS 来完成一些艰苦的工作还是依赖第三方。

如果是第三方选项 - 有哪些第三方 STS

0 投票
2 回答
683 浏览

wcf - 在使用 WIF/Geneva 的应用程序中处理使用 WCF 服务的凭据

我想知道客户端应用程序(winforms/console/其他)中关于使用 WCF 授权和身份验证的 WCF 的最佳实践是什么(以前称为日内瓦)。

同样在服务级别,是否可以缓存令牌,以便每次 WCF 操作都不需要访问 STS?(有关此的更多信息也很重要)谢谢

0 投票
2 回答
596 浏览

wif - 使用日内瓦框架的自定义声明以及如何在您的应用程序中“同步”用户

也许这个问题凸显了我对声明身份管理知之甚少,但它就在这里。

如果在使用第三方 STS 作为身份并使用自定义声明进行授权的应用程序中使用 WIF(与应用程序相关且特定于 CanCreateFooBar 之类的东西)

1)如何管理用户?即,可以识别来自 AD 或其他会员资格提供商的用户,但在我的系统内部,我需要了解他们并拥有更多与身份无关的用户信息(因此让这些信息可用真的没有意义系统外),并且应该保留有关用户的信息,
问题是如何以智能的方式管理和创建我的系统数据(从 Ids 开始)?
我想到的确切场景是新员工被添加到公司,系统管理员为具有特定角色的域创建用户,我的系统如何才能意识到这一事实?(我可能希望系统提示系统管理员采取行动

2) 这些用户和角色的声明值存储在哪里,我该如何修改它们?理想情况下,我希望能够更改特定用户和操作的权限。有没有这方面的指导方针?

我可以看到这些可能是非常蹩脚的问题,但是当我考虑如何解决问题时,我想出了过于复杂的解决方案或需要大量重复的解决方案(即在两个地方创建使用的),所以我确定我我只是没有以正确的方式思考这个问题

谢谢

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 投票
2 回答
3396 浏览

asp.net - 使用 Windows Identity Foundation 将某人登录到 ASP.net 应用程序

我办公室的主管告诉我,他看到了一个使用 Microsoft“Geneva”(现为 Windows Identity Foundation)预发布版本的演示,其中开发人员做了以下操作:

  1. 他设置了某种 ASP.net Web 应用程序,用户可以在其中使用定制的登录系统登录。在后台,Web 应用程序将用户作为 Active Directory 中的用户登录。

  2. 用户登录。

  3. 用户登录后,ASP.net Web 应用程序线程在用户会话期间以登录用户身份运行,并且可以访问网络上的资源(例如在访问受 Active Directory 控制的表上运行 SQL 查询)

步骤 2) 和 3) 与使用 IIS 中网站设置的“目录安全”选项卡中的“集成 Windows 身份验证”设置完全相同。步骤 1) 不同,因为我们使用的是自定义登录系统,而不是 Kerberos 身份验证。

我们希望将我们的应用程序之一设置为完全按照 1)、2) 和 3) 中的描述运行。但是,我看到的所有关于 Windows 识别基础的文档都是关于 Cardspace 和 Federated Security 的。我们现在对使用这些技术中的任何一种都没有兴趣。

我们只是希望能够让用户在幕后登录到 Active Directory 帐户。

是的,我们已经尝试过ActiveDirectoryMembershipProviderwith Forms Authentication,但它是一个完整的组合,可以实际访问需要在每个页面上模拟的网络上的资源!

2010 年 1 月 7 日更新。好吧,我已经为此工作了一段时间,但我设法提出的一切都没有达到我想要实现的目标。也许我想要的功能不在 WIF 的发布版本中。

这就是我现在的位置。我在 MSDN 上找到了一些文档,表明 ASP.net 中使用了三种不同的身份:由 指定HttpContext.Current.User的身份,由 指定的身份Thread.CurrentPrincipal,最后由 指定的身份WindowsIdentity.GetCurrent关联

在我想使用我要设计的流程的一个示例中,我想以登录用户的身份执行 SQL 查询。在我的调试器中,我看到我很容易将 HttpContext 和 Thread 用户设置为登录用户。但是,当我使用 Windows 身份验证连接到 SQL 服务器时,它始终始终以用户身份连接,WindowsIdentity.GetCurrent并且该用户始终始终是 ASP.net 进程的身份,除非我使用带有模拟的 Windows 身份验证。我绝对不能在我的应用程序中使用 Windows 身份验证,因为我的用户必须通过播放魔笛歌曲登录,而 Windows 身份验证不支持使用魔笛歌曲登录。

WindowsIdentity澄清一下,获取代表登录用户(使用魔笛歌曲登录)的用户没有问题。问题是我不能用它WindowsIdentity来为我的用户执行 SQL 查询。