问题标签 [identityserver3]

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

javascript - Identityserver v3 后注销功能引发异常“非法 base64url 字符串!”

我正在尝试使用 identityserver v3 后注销功能。

登录没问题,当我想注销时,我调用可以在从 (/.well-known/openid-configuration) 请求的发现文档中找到的“end_session_endpoint”端点,我将id_token_hintpost_logout_redirect_uri传递给它(根据this:注销端点

对于id_token_hint,我将我从登录阶段收到的 id_token 传递给它(我把它放在本地存储中)。对于post_logout_redirect_uri,我将为客户端配置的 uri 传递给它。

我可以在身份服务器的日志中看到语句:'结束结束会话请求'所以我认为到那时一切都好。

但我收到一个例外:

这是我在 Client.cs 文件中的配置:

这是我发出的注销请求:

在将其作为身份服务器上的问题发布之前,我想知道是否有人使用 javascript (angular) 中的隐式客户端实现了此功能。

0 投票
1 回答
1654 浏览

thinktecture-ident-server - 在 MVC 中使用 Identity Server V3 的 customuserservice 示例无法重定向到登录页面

我正在使用身份服务器 v3 的 CustomUserService 示例。我添加了家庭控制器,如下所示 - `public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { return View(); }

并添加了 2 个视图 About.cshtml 和 Index.cshtml。如您所见,关于操作具有 Authorize 属性。因此,当我导航到 About 时,我应该被重定向到 Identity Server V3 的登录页面,但事实并非如此。我完整的startup.cs如下 -

我正在使用 CustomerUserService 示例,因为我想使用 WSfederation。因此 ADFS 将向身份服务器提供声明,然后身份服务器应将这些声明返回到关于视图。有人能帮我一下吗。

0 投票
2 回答
1172 浏览

oauth - 使用 IdentityServer3 时重定向 Uri 太长

我们正在考虑使用IdentityServer3使用 oAuth2 和 OpenID 提供联合身份验证/授权。我们的原型很有前途,我们有一个基本框架正在运行。

然而,我们遇到了一个问题......

用户通过身份验证后,框架将身份和访问令牌作为重定向 URI 的参数返回给客户端应用程序。由于我们正在寻求保护的应用程序的性质,需要有相当复杂的声明/角色。这会产生相当大的令牌*。如此之大,以至于超出了浏览器支持的最大 URI 长度,因此会中断。

所以我的问题是,是否有人知道是否可以配置 Identity Server 以 POST 回令牌而不是 GET?或者是否有另一种不偏离标准/规范的解决方案?

*我们在这里谈论的索赔实际上并没有那么大。作为一个例子,这里是来自 IdentityServer3 代码示例的声明

如果我们为此添加另一个声明,其大小与地址声明的大小相同,那么我们就会遇到 URI 长度问题。

0 投票
1 回答
390 浏览

thinktecture-ident-server - Danamic Claims in IdentityServer

I'm looking at the AspNetIdentity_2fa sample and trying to modify it to include some dynamic claims for users. Let's name it calculated_value claim which is created dynamically when a user is authenticated, and then is included in the user's claims list and passed with the the authentication token. I know I could create a separate Web API to get this value but since it is small data and that it is needed as soon as a user is authenticated, I thought I'd just pass it as claim. In the samples I see that claims always coming from static or hard-coded data. How can I create dynamic/late-bound claims?

Thanks!

0 投票
4 回答
13068 浏览

thinktecture-ident-server - 如何在 Thinktecture IdentityServer v3 中启用日志记录?

如何在 Thinktecture IdentityServer v3 中启用日志记录?

我目前收到一个通用错误页面,显示“出现意外错误”。

我能够弄清楚ErrorPageFilterAttribute,似乎解决了一些实现ILog记录我所追求的细节的通用错误。

我怀疑这是ILog需要以某种方式配置的一些具体实现。

0 投票
4 回答
31102 浏览

oauth-2.0 - 身份服务器流

IdentityServer 支持在Flows枚举中定义并为客户端设置的不同 OpenId Connect 流。每种类型的流也有示例,并且在文档中对它们有很多引用,但我找不到文档中的流的简单定义列表,好像它们太明显而无法用语言解释。但我想他们不是。您能否详细说明这些差异,也许我们可以将其添加到文档中?

那么什么是:隐式流程、资源所有者密码凭证流程、授权代码流程、客户端凭证流程、自定义授权流程和混合流程?还有哪些是 OAuth 流,哪些是 OpenID Connect 流?

谢谢!

0 投票
2 回答
1071 浏览

asp.net-mvc - 使用自定义客户端登录页面使用 IdentityServer 登录

我有一个IdentityServer设置,其中配置了一个具有混合流的客户端。是否可以让 ASP.NET MVC 应用程序使用此 IdentityServer 实例登录用户而不循环到 IdentityServer 的登录页面?也就是说,在客户端使用自定义登录页面获取用户凭据,然后与 IdentityServer 建立服务器端连接以进行授权?是否有任何样本可以证明这一点?谢谢!

0 投票
1 回答
3965 浏览

thinktecture-ident-server - IdentityServer 进入无限循环的身份验证

我在 IdentityServer 中设置了以下客户端:

它是在线托管的,比方说https://auth.mydomain.com/core

尝试修改MVC OWIN Client (Hybrid)示例客户端以登录到上述身份服务器,在Startup.cs我修改了ClientId,ClientSecretRedirectUri匹配 IdSrv 中的客户端设置。现在,当我尝试导航到需要授权的页面时,我被重定向到 IdentityServer 的 URL。当我登录时,断点AuthorizationCodeReceived在客户端的通知处命中,Startup.cs然后进入循环。浏览器状态显示:

依此类推,永远不会完成登录。为什么会这样?请帮忙。

谢谢!

0 投票
1 回答
2366 浏览

single-sign-on - IdentityServer3 绕过同意屏幕

当用户使用 IdentityServer3 登录时,我想绕过同意屏幕,默认情况下授予所有同意。有没有办法配置这个?

这是我希望绕过的屏幕:

IdentityServer3 授权权限屏幕

0 投票
1 回答
1455 浏览

c# - 不记名令牌授权

我在使用 Identity Server 3 和不记名令牌身份验证时遇到问题。

基本上,我可以使用过期的访问令牌调用我的 Web API 方法,并且 Web API 对用户进行身份验证并返回数据。

我已将我的客户端设置为 360 秒的访问令牌生命周期,当我检查声明时确实是这种情况。

如何确保无法使用过期的访问令牌调用我的 Web API。我需要在我的 中设置一些东西IdentityServerBearerTokenAuthenticationOptions吗?

谢谢。