问题标签 [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 投票
0 回答
1547 浏览

angular - 在 id_token 到期后,Angular-ouath2-oidc 中的静默刷新不起作用

我当前的 Angular 7 PWA 应用程序在过期后无法更新 OIDC 令牌(通过azure adfs获得)id_token:所有silentRefresh()调用都失败并出现以下错误:
AADSTS50058:A silent sign-in request was sent but no user is signed in

相反,到期时间内的所有silentRefresh()操作都会成功执行。id_token

我的 OauthService 初始化如下:

APP_CONFIG.auth.OIDC.config存储与问题无关的所有端点。

我该如何解决这种情况?我在 github 上关注了这个答案,事实上,即使所有响应都包含Set-Cookie=标头,也看不到存储在我的应用程序域中的任何 cookie。也许问题与我的应用程序域中缺少 cookie 有关?

0 投票
2 回答
1890 浏览

angular - Azure B2C for Angular 8 app with angular-auth-oidc-client - b2clogin 端点 POST CORS 错误

我在我的 angular 8 应用程序中使用了Damien Bod 的 angular-auth-oidc-client和“新”Azure B2C 端点:

  • https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/authorize
  • https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/token

STS 服务器看起来像这样:

  • https://{租户}.b2clogin.com/tfp/{租户}/B2C_1_SuSi_v2/oauth2/v2.0/

但问题是 oidc lib 向https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_susi_v2

我得到CORS错误:

从源“ https://192.168.3.2:4200 ”访问“https://{tenant}.b2clogin.com/{tenant}.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_susi_v2”处的 XMLHttpRequest已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。

我在这里做错了什么?这是带有 PKCE 的代码流。

这是我的App.module.ts的核心:

0 投票
1 回答
661 浏览

angular - AADSTS50146:此应用程序需要使用特定于应用程序的签名密钥进行配置

我正在创建一个 Angular 7 应用程序。我们使用 angular-oauth2-oidc 连接到 Azure AD 并进行身份验证。Azure AD 设置为 OPENID 进行身份验证。从管理 Azure AD 的团队中,我们也得到了一个密钥。因为我是新手,所以我无法弄清楚需要在哪里使用。在网上搜索也没有得到太多帮助。

当我发布此代码并打开应用程序时,它会被重定向,但在登录 micosoft 网站本身后,它会抛出以下错误

AADSTS50146:此应用程序需要使用特定于应用程序的签名密钥进行配置。

任何人都可以帮助解决这个问题。

下面是我们在 app.component.ts 中使用的代码示例

0 投票
1 回答
883 浏览

oauth-2.0 - 从 localhost 连接到 Xero OAuth2 会产生 CORS Erros

我通过使用该软件包的 Angular 7 应用程序连接到 Xero oauth 服务器“ https://login.xero.com/identity/connect/authorize ”。angular-oauth2-oidc

在我的 authConfig 我有以下属性

但是,一旦我初始化 oauth 服务

我收到以下 CORS 错误

任何关于我做错了什么的想法,任何建议都会受到欢迎

0 投票
1 回答
127 浏览

angular - 使用哈希进行 OAuth 重定向后,如果下一个 http 调用失败且选项状态为 0 conn 被拒绝,Angular SPA 不会加载 svg?奇怪的边缘情况

正常行为

用户单击 google 图标,重定向到 google Oauth,成功登录,将状态详细信息重定向回 Angular SPA。SPA 处理状态中的哈希并获取访问令牌以向我们自己的 REST 端点发出 HTTP 请求以进行身份​​验证。

扳机

如果我们的 REST 应用程序关闭,带有访问令牌的OPTIONS请求将失败status 0: Connection Refused并随后抛出HTTP Error status 0. 该错误由 catchError 块处理,并通知用户。问题已处理

错误

现在奇怪的是,当上述场景发生在来自 google 的 OAuth 页面的重定向时,我在整个应用程序中拥有的 SVG 图标变为空白。按钮仍然有效并显示在那里,[img] 标签也有效,严格来说是 svg 图标。

现在我的微软 Oauth 登录是通过弹出窗口而不是重定向来处理的,当相同的场景失败时,svg 定义很好。

SVG

我有一个可重用的组件,如下所示:

图标.ts

图标.html

并且定义本身位于根中加载的空组件中display:none

现在我最好的猜测是与icon.ts由于散列而获得 URL 的方式有关,但从我对它的修改来看,我没有成功使它工作。

0 投票
0 回答
2100 浏览

c# - 打开 id 未重定向到正确的登录页面

我在这里按照示例 https://www.softwarearchitekt.at/aktuelles/authentication-in-angular-2-with-oauth2-oidc/ 使用了相同的登录详细信息。

除了他们提供的配置和 url 员工之外,我无权访问受支持的员工。

当我尝试执行以下相同操作时

在调用登录功能时,它会重定向到需要说的页面嗯,您要么使用了不正确的登录详细信息,要么尚未注册,但它假设被重定向到登录页面,因为我调用
了 this.oauthService.initImplicitFlow() ; .

其重定向到 https://my-identity-domain.azurewebsites.net/identity/connect/authorize?response_type=id_token%20token&client_id=xxxxxxxxxxxxx&state=Psh7Ihio8Tv-JzrmG1ScmoZhB47SsjO-PqQoxyX0vhwbL&redirect_uri=http%3A%2F%2Flocalhost%3A4200%2Findex.html&scope =openid%20profile%20email%20roles%20xxxxxxx%20xxxxxxxx&nonce=Psh7Ihio8Tv-JzrmG1ScmoZhB47SsjO-PqQoxyX0vhwbL

但网络表单正在重定向到

https://my-identity-domain.azurewebsites.net/identity/login?signin=xxxxxxxxxxxxxx

让我担心的是,在 asp.net webform 应用程序中它可以工作,但在 angular 版本中,正在开发的新应用程序不是三天在网上尝试了很多示例我能做什么?

我也尝试过https://github.com/manfredsteyer/angular-oauth2-oidc并在那里使用了凭据,但是当我用我的替换它时它不起作用

0 投票
0 回答
195 浏览

identityserver4 - 尽管刷新令牌已过期,但错误地自动登录

我有一个 angular 8 SPA 应用程序,它利用 angular-oauth2-oidc 库使用代码流方法在身份服务器上进行身份验证。这一切都可以正常登录和注销,包括刷新令牌以定期提取新的访问令牌。

问题是当刷新令牌寿命结束时,它按预期无法从 token_endpoint 获取另一个令牌,但如果我此时调用登录函数,它会自动让我登录?!尽管此时刷新令牌无效,即使我在调用登录之前等待了很长时间。

鉴于令牌已过期,我希望再次提示输入凭据。我希望找到对此的解释,因为目前我的 SPA 用户可以轻松获得无限会话。

有谁知道为什么会这样?

背景:用于测试 -> 刷新令牌到期设置为 120(s) 访问令牌设置为 60(s)

我的身份服务器 4 项目基于提供的快速入门示例

angular-oauth2-oidc -> https://github.com/manfredsteyer/angular-oauth2-oidc

0 投票
1 回答
1098 浏览

angular - 无法使用 angular-oauth2-oidc 使用 Okta 运行 OAuth2

我想为 Angular 应用程序开发一个身份验证模块。我使用 Okta 作为身份提供者,angular-oauth2-oidc是我实施身份验证工作流的选择。我正在尝试遵循本指南https://developer.okta.com/blog/2018/12/04/angular-7-oidc-oauth2-pkce但如果我运行 Web 应用程序,我会遇到问题并收到错误消息. 我怎样才能使这个示例代码工作?

auth.module.ts

auth-ng-oauth2-oidc.service.ts

包.json

错误

0 投票
0 回答
250 浏览

adfs - 角-oauth2-oidc CORS ADFS

我正在使用angular-oauth2-oidc库连接到 ADFS,但出现以下错误:

在此处输入图像描述

我正在使用以下代码:

app.component.ts:

0 投票
0 回答
1739 浏览

javascript - Angular-oauth-oidc,调用 OAuthService.silentRefresh() 时 AuthConfig 为空

我有一个使用 Open Id Connect 对 Windows ADFS 2016 进行身份验证的 Angular 应用程序。该应用程序通过隐式流检索访问令牌id 令牌,并且工作正常。当我尝试使用文档中所述的silentRefresh() 刷新令牌时出现问题: https ://manfredsteyer.github.io/angular-oauth2-oidc/docs/additional-documentation/refreshing-a-token.html

这是配置:

OAuth 配置

刷新我调用的令牌

但我收到以下错误:

这是由 createLoginUrl 抛出的,因为AuthConfig为空。

我不明白如果它已被初始化并且我成功地检索了我的访问令牌,它怎么可能为 null。是我做错了什么还是我错过了配置?