问题标签 [thinktecture-ident-model]

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 回答
898 浏览

iis - 无法使用令牌进行身份验证

我有一个 ASP.NET MVC 网站,它使用 ASP.NET WebAPI 进行身份验证。我使用 ThinkTecture IdentityModel 进行基本身份验证和会话令牌,这在本地和 Azure 网站中都可以正常工作。但是,我不得不迁移到 Azure 云服务,现在我无法使用令牌进行身份验证,总是收到 401 错误,但只有用户名和密码可以正常工作。

我能猜到的唯一区别是我现在必须处理 IIS。是否需要进行任何修改才能允许使用令牌进行身份验证?

更新:

我没有使用任何 Web.Config 配置进行身份验证,只是在 WebAPIConfig 中使用以下代码。

0 投票
1 回答
2007 浏览

thinktecture-ident-model - ThinkTecture.IdentityModel“类型‘System.IdentityModel.Tokens.SecurityToken’在未引用的程序集中定义

我开始在我的项目中使用 ThinkTecture.IdentityModel,我正面临一个严重的问题。请帮助我。

错误 1“'System.IdentityModel.Tokens.SecurityToken' 类型在未引用的程序集中定义。您必须添加对程序集 'System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 的引用

0 投票
2 回答
4327 浏览

asp.net-mvc - 我应该如何保护我的 SPA 和 Web.API?

我必须实现一个网站(MVC4/单页应用程序 + 淘汰赛 + Web.API),我一直在阅读大量文章和论坛,但我仍然无法弄清楚安全/身份验证方面的一些要点和方法在保护登录页面和 Web.API 时继续前进。

该站点将完全在 SSL 下运行。用户首次登录后,他/她将收到一封电子邮件,其中包含确认注册过程的链接。密码和“salt”值将加密存储在数据库中,不可能将密码解密回来。API 将仅用于此应用程序。

在继续之前,我有一些问题需要回答:

  1. 就安全性而言,哪种方法最适合我的应用程序:Basic/SimpleMembership?还有其他可能吗?
  2. 对象 Principal/IPrincipal 是否仅与基本身份验证一起使用?
  3. 据我所知,如果我使用 SimpleMembership,因为使用了 cookie,这不是打破 RESTful 范式吗?所以如果我构建一个 REST Web.API,我不应该避免使用 SimpleMembership 吗?
  4. 我正在使用令牌检查 ThinkTecture.IdentityModel。这是一种身份验证类型,如 Basic、Forms 或 Auth,还是可以添加到其他身份验证类型中?

谢谢你。

0 投票
1 回答
984 浏览

asp.net-mvc-4 - ASP.Net MVC 伪造的声明令牌仍在工作

我在 .Net 4.5 中有一个 asp.net MVC 4 项目。

我已经设置了基于声明的身份验证来保护我的网站。

登录后我有一个非常奇怪的行为。如果我编辑 FedAuth cookie 并在令牌部分手动更改值,如果我尝试刷新我的页面,它将起作用。

在我的 web.config 我有这个:

我在我的项目中注册这个过滤器

我创建了一个这样的令牌

如果我base64解码令牌我有这个

并像这样更改 cookie 元素的第一个字符 (v -> 1)

我在base64中重新编码并注入FedAuth cookie,它仍然有效

关于我应该从哪里开始解决这个问题的任何想法?

谢谢

0 投票
2 回答
219 浏览

asp.net-mvc - thinktecture.identitymodel 2.6 更新后项目无法编译

我昨天用 IdentityModel 2.6 更新了我的项目,但我找不到为什么它不再编译这个错误。

我刚刚更新了包,没有代码更改。

编辑: 问题来自此处描述的缺少 web.config 部分http://brockallen.com/2013/05/28/configuration-for-wif-session-helper-apis-in-thinktecture-identitymodel/

这似乎是强制性的,并且必须填写所有属性,否则它会抛出...... sessionTokenCacheType 例如必须填写......

有更多关于这方面的信息会很棒。

TIA

0 投票
1 回答
1599 浏览

thinktecture-ident-server - Thinktecture 隐式流程:注销/注销用户

我按照这个例子来让隐式流程工作。

http://weblogs.thinktecture.com/cweyer/2012/11/oauth2-in-thinktecture-identityserver-v2-implicit-grant-flow-with-javascript.html

我的问题是,我将如何注销用户?我希望有人知道,因为我找不到任何例子。现在我可以触发授权窗口并正确处理它并为我的请求使用访问令牌,但我不知道如何制作它以便我可以切换用户。

0 投票
4 回答
1575 浏览

wif - 联合身份验证后,WIF 无法重定向到包含哈希的 URL

我正在使用 WIF 和使用 ThinkTecture STS 的联合安全模型。

当我尝试请求 url: http://domain.com/#page时,WIF 不会在身份验证后重定向到正确的页面。

wctx中的ru参数不包含/#path的正确路径。相反,它忽略了哈希和它之后的所有内容,所以ru参数只是/。没有哈希的普通网址可以正常工作。

是否有针对此的锻炼或我的网址格式不正确?
有什么建议么?

0 投票
1 回答
3520 浏览

asp.net-web-api - Thinktecture IdentityModel AuthenticationConfiguration Mapping for Cookie - 如何?

我目前使用令人惊叹的 Thinktecture IdentityModel 4.5 设置了一个基于 Web API 的应用程序。

它设置为基于声明的身份验证,接受在 Authorization 标头中发送的基本身份验证凭据。javascript 客户端保存返回的会话令牌并将其用于后续请求,方法是将其包含在Session前面的 Authorization 标头中作为方案。

javascript 客户端还将令牌保存到 cookie 中,以便在窗口关闭并快速重新打开时进行检索,或者在打开新窗口时进行检索,以防止用户必须重新进行身份验证。cookie 被命名为sessionToken,它的值是实际的令牌。

这一切都非常好。

问题是我在应用程序页面上有一个链接,该链接链接到直接地址(/api/controller/id/pdfdocument)并在新窗口中打开它(目标:_blank)。因此,无法在此请求中包含 Authorization 标头。但是,由于会话仍处于活动状态,cookie 会正确传输。

我试图向 AuthenticationConfig.Mappings 集合添加一个映射,以添加对从 cookie 收集令牌的支持,但是我无法获得正确的配置以使其正常工作,并且无法找到任何其他资源在线的。我假设有一些非常简单的东西需要修复。

我的代码:

然后像这样应用此配置:

这就是请求标头中 cookie 的样子:

非常感谢任何帮助!

0 投票
0 回答
1439 浏览

oauth-2.0 - 使用带有对称签名密钥的 Microsoft Jwt 处理程序,使用 Oauth 2 资源所有者流程

我正在尝试使用 OAuth 2 资源所有者流程来授权移动客户端针对我的 Web Api 服务。我正在使用 Thinktecture IdentityServer 使用对称签名密钥发布 jwt 令牌。

在客户端,我使用 Thinktecture IdentityModel 来帮助设置令牌验证。我的 WebApiConfig 如下所示:

在我的 IdentityModel.config 我有以下内容:

主要取自http://leastprivilege.com/2013/07/16/identityserver-using-ws-federation-with-jwt-tokens-and-symmetric-signatures/上的这个链接 ,我通过这个 Stack Overflow 帖子找到:如何用对称密钥配置 MIcrosoft JWT?

我尝试使用该帖子中找到的派生类,但是当我尝试运行此行时:

我收到 InvalidCastException,因为 IssuerTokenResolver 是 X509CertificateStoreResolver 类型,而不是 NamedKeyIssuerTokenResolver 类型。

看来我的配置或代码中仍然缺少一些东西来配置正确的 TokenResolver。有人有想法吗?

0 投票
2 回答
1349 浏览

c# - Thinktecture - 无法在 Web API 中处理加密的 SAML 安全令牌

在 .net Web API 中,如何配置 Thinktechture Saml2SecurityTokenHandler 以使用 X509 证书来处理加密的 SAML2 安全令牌(在验证之前对其进行解密)。

Identity Server 通过将 RP 配置为使用证书进行加密来加密令牌。

以下是取自 Thinktechture 示例的工作配置(不处理加密令牌):