问题标签 [angular-oauth2-oidc]

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

angular - angular-oauth2-oidc 中是否有静默注销选项?

我在我的 ionic 4 应用程序中使用 angular-oauth2-oidc 并想知道是否有一种方法可以实现静默注销,因为我在 angular-oauth2-oidc 文档中找不到它。

0 投票
1 回答
146 浏览

angular - 无法使用 angular-oidc 令牌访问 Microsoft 图形端点

我对 angular-oauth2-oidc 非常陌生,无法访问 Microsoft Graph API,使用我们在 angular-oauth2-oidc 中作为 id_token 获得的图形令牌。

AuthConfig

在这里,我的假设是一旦身份验证成功,那么该图形令牌将有足够的权限来访问

https://graph.microsoft.com/v1.0/me/photo/$value

但是,当我尝试使用邮递员从 oidc 身份验证中获得的令牌访问端点时,出现以下错误

在此处输入图像描述

在使用 jwt.io 解码令牌时,我发现令牌没有启用配置文件或任何其他范围。

我尝试使用来自 angular-oauth2-oidc https://github.com/manfredsteyer/angular-oauth2-oidc/tree/master/projects/quickstart-demo的示例应用程序

下面是触发登录的代码示例

在此处输入图像描述

任何帮助或指导将不胜感激。谢谢!

0 投票
1 回答
363 浏览

angular - Angular OpenID:在浏览器中加载应用程序之前重定向到登录

我正在使用 Angular 12 和angular-oauth2-oidc,到目前为止,我已经成功设置了身份验证。但是,就在被重定向到登录之前,正在加载应用程序(仅一瞬间,但仍然如此)。除非您已登录,否则有什么方法可以完全隐藏该应用程序?

0 投票
1 回答
111 浏览

angular - 新选项卡需要登录 - Angular 与 ASP.NET Core

我正在构建一个 ASP.NET Core Angular 应用程序,它附带一个api-authorization.module依赖angular-oauth2-oidc库进行授权逻辑的应用程序。该模块用于将 Angular 应用程序与 ASP.NET Identity 连接起来。

它在单个选项卡上按预期工作,但每当打开新选项卡时都需要新的登录操作

我找到了有关该主题的这些资源,但找不到他们正在谈论的导入:

https://github.com/manfredsteyer/angular-oauth2-oidc/issues/321 https://manfredsteyer.github.io/angular-oauth2-oidc/docs/additional-documentation/configure-custom-oauthstorage.html

具体来说,我在 Github 线程jeroenheijmans(图书馆的合作者)和官方文档中都找不到OAuthModule提到的内容。出于这个原因,我无法应用似乎推荐的解决此问题的方法,即将其添加到.app.module

谁能告诉我如何解决这个问题,或者指出我正确的方向?

0 投票
1 回答
398 浏览

angular - 登录后,使用 angular-oauth2-oidc 时 hasValidAccessToken 始终为 true

我已经使用 Angular 12.2 实现了 angular-oauth-oidc(版本 12.1.0)。我使用 Keycloak 作为 SSO 登录没有问题,但我在库中有一个奇怪的行为。

每次登录后,即使令牌已过期,方法hasValidIdToken和方法也会返回 true。hasValidAccessToken该库似乎没有验证令牌过期。

我的配置文件如下:

我使用以下代码初始化库:

最后,我检查令牌是否在警卫中使用以下条件有效:

true如果我以前登录,此方法总是返回。如果没有事先登录,它会false按预期返回。

如果我使用其他库进行令牌验证,则在验证过期令牌时会得到预期的结果。

0 投票
1 回答
183 浏览

angular - angular-oauth2-oidc:redirect_uri 必须是 /index.html 吗?

在图书馆的PKCE例子中angular-oauth2-oidc

https://manfredsteyer.github.io/angular-oauth2-oidc/docs/additional-documentation/code-flow-+-pcke.html

redirect_uri是_

从安全的角度来看,这很重要吗?

当我添加 时/index.htmlPage Not Found从身份验证服务器重定向后,我的应用程序中出现错误。

但是当我这样做时:

有用。

这是否必须使用index.html并且我做错了什么?

0 投票
1 回答
85 浏览

oauth-2.0 - 不同客户端应用程序的独立登录 (identityserver4 | angular-oauth-oidc)

我们有多个客户端使用response_type:code(PKCE 的授权代码流)与身份服务器 4 通信以登录用户。

客户端在angular框架中,使用angular-oauth-oidc库并localstorage用作存储。

现在,当用户登录客户端 1 并在同一浏览器中打开客户端 2 时,他/她会自动登录(或者至少在登录/结束会话期间存在一些干扰)。在我们的例子中,这不是可取的行为。我们希望我们的所有 3 个客户端应用程序(具有 3 个客户端 ID)的行为完全独立。

是否可以在客户端或我们的identityserver4后端设置配置以使用户在所有三个客户端上独立登录?

选项 1:在客户端中使用会话存储而不是本地存储。这也是不可取的,因为我们希望用户即使在关闭窗口后也能够保持登录状态。

选项 2:设置 prompt=login 似乎可以解决问题,但不确定这是否是正确的方法。对此有何见解?

有没有标准/正确的方法来实现这一目标?

0 投票
1 回答
46 浏览

angular - Angular 中的 HttpInterceptor 到底是什么?

Angular 中的 HttpInterceptor 到底是什么?

0 投票
1 回答
626 浏览

angular - 将令牌存储在浏览器 sessionStorage 中是一种好习惯吗?

哪个浏览器提供的客户端存储选项更好?

0 投票
1 回答
91 浏览

angular - IdentityServer4 给出堆栈溢出错误

我有一个 SPA(Angular 9)并使用一个身份站点(.NET Core 3.1 和 identity4)。两个站点都运行良好,但是如果用户长时间停止浏览并尝试再次导航,则身份站点会给出 503 错误(堆栈溢出错误)。

这是我在 Angular 9 上的配置,angular-oauth2-oidc。

这是我在 Identity 站点上的配置:.NET Core 3.1 和 identity4。

这是日志: