问题标签 [implicit-grant]
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.
javascript - Azure AD - OAuth 2 - 隐式授权 - 尝试使用应用程序进行身份验证时出现 CORS 错误,但当我从浏览器访问 URL 时工作正常
我正在为我想要保护的一个非常简单的 web 应用程序实现 OAuth2 隐式授权流。我正在使用 MSAL 来做到这一点。我遇到的问题是,当我从浏览器尝试 URL 时,它会将我带到组织登录页面,然后将我带到重定向 URI。
但是,当我从应用程序调用它时,我收到了 CORS 错误。堆栈跟踪如图所示
我的代码如下所示
angular - 无法连接 Angular 8 应用调用自定义 Web api 授权端点从 Azure AD 进行身份验证
我在 Azure App Service 中托管了一个 Angular 8 应用程序,我已经使用 MSAL 进行了身份验证,并且令牌正在传递给另一个托管我的自定义 Web api(.net core 3.1)的 Azure App Service。
我调用了一个未授权的端点并且它可以工作,但是当我调用一个授权的端点时,我得到了不同的错误,最新的一个是
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: '[PII is hidden. For more details, see https://aka.ms/IdentityModel/PII.]
我已经为启用了隐式授权的两个应用程序配置了应用程序注册,并且还启用了 Id 和访问令牌,并且它是一个多租户应用程序。
API 配置
角度配置
angular - 如何在 Angular6+ 应用程序中使用 PKCE 实现授权代码授予
在 Angular6+ 应用程序中实现 MSAL 库以与 AZURE AD 集成时,我需要一些输入。
当我阅读微软文档时,我遇到了两个流程“隐式授权流程”和“身份验证代码流程”。微软团队自己建议,与“隐式授权流”相比,“身份验证代码流”必须被实现为安全的。
我正在开发一个 Angular6+ 应用程序,我必须将它与 AZURE AD 集成。当我检查 MSAL 库的角度时,我只能找到 1 个版本“npm i @azure/msal-angular”,我假设它实现了“隐式授权流”。我必须实现“身份验证代码流”。
任何人都可以在这方面提供帮助。
oauth-2.0 - 由于查询字符串之前的片段标识符,无法访问 Reddit Api 隐式授权流
我已经非常努力地寻找这个问题的现有答案,因为我觉得我犯了一个愚蠢的错误,所以请让我知道是否已经问过这个问题并且我还没有找到它。
我正在尝试制作一个需要访问 OAuth Reddit API 的小型已安装应用程序,并且由于它已安装,因此必须通过隐式授权流程进行。
这是我尝试使用的过程:
我让用户打开此 URL(已删除私人信息):
但是当用户在授权后被重定向时,它会转到一个如下所示的 URL:
http://localhost:3000/#access_token=[token]&token_type=bearer&state=[random_state_data]&expires_in=3600&scope=read
问题是访问令牌在查询中?片段标识符(#)之后的字符串,因此我无法从托管在端口 3000 上的服务器访问它。我在处理身份验证的方式上是否犯了错误?或者是更微妙的东西?
提前感谢您的帮助,如果您需要更多信息或者我在问这个问题时犯了错误,请告诉我。
node.js - Okta - 检索访问令牌
这可能是一个新手问题,但我在 SO 或 Okta 论坛/指南上找不到任何答案。我已将我的 Okta 应用程序配置为重定向到https://localhost:443/auth/callback
用户登录并同意某个范围的时间。我正在使用隐式授权并且重定向有效,但在我/auth/callback
的请求查询、标头和正文中不包含访问令牌。只有当我调用res.end()
Express 时才会重定向到以下 URL:
如何检索访问令牌?我的快递路线:
azure - Azure 来宾用户的 OAuth2 隐式授权流失败
我尝试通过 MSAL 库授权 Azure AD来宾用户访问我的 Web 应用程序。由于它是一个 SPA,我正在使用隐式授权流。对于“标准”用户,流程还可以。但是对于“来宾”用户(使用“gmail”等个人地址),它无法获取此处描述的obo令牌:
消息是:
我隔离了 http 请求以绕过 MSAL 魔法(它在 /oauth2/token 请求上失败):
我只是想知道来宾用户是否可以通过此流程获得授权,或者是否有其他方式来授权他们。
oauth-2.0 - Java 中 OIDC 隐式代码流的示例代码
我是使用 OIDC 的隐式流的新手,我正在寻找示例代码。我在互联网上找不到任何东西。有人可以在任何地方提供示例代码的链接。
非常感谢任何帮助。
reactjs - 如何在 React 的 Azure B2C 流中获取没有过期刷新令牌
我正在尝试实现在我的反应应用程序中没有过期刷新令牌的场景,因此用户不需要每 24 小时重新登录一次。但是在当前使用 MSAL js 库的实现中,它只允许使用授权代码流,并且不允许根据本文档 [1][2] 没有到期令牌。
有什么方法可以使用没有到期刷新令牌的Azure AD B2C ?使用带有 MSAL 或任何其他反应 OIDC 库的 SPA 应用程序
非常感谢 Microsoft azure b2c 专家对此的见解
谢谢
php - OAuth2 - 无法获取某些用户的特定属性
我正在尝试将 oauth2 集成到 moodle 站点中。我必须对 php 代码进行一些更改,以便它与隐式授权一起使用。
当我测试时,我能够从提供者(政府实体)检索我的所有信息/属性。但是由于某种原因,对于某些用户来说,有一个特定的属性,它会检索一个 NULL 值。
实体返回属性所需的机制如下:
用户进入实体网站(询问授权端点)。
使用 CMD(葡萄牙语是 Chave móvel digital 或英语移动数字键)的用户插入 PIN。
然后,代码应发送带有用户信息端点和正文的 POST 消息 {"token": "0e3e71b6-5ce5-462d-bb1c-b27b83c51e1f","attributesName":[LIST_OF_ATTRIBUTES]}
然后这将返回其他令牌和 authenticationContextID。
然后应该使用用户信息端点和带有令牌和 authenticationContextID 的查询字符串发出 GET 请求。
最后,提供者应以 JSON 格式返回属性列表及其值。
某些用户发生的情况是其中一个值带有 null,但对于其他用户,该值正常返回。
我们询问提供者,他们说正在返回值,实际上如果我们在浏览器中输入上面提到的 GET 请求,值就在那里。
我正在使用 lib>filelib 中的 moodle 的 get 和 post 函数。
对于某些用户返回值但对于其他用户返回 null 的代码可能会发生什么情况?
这是我在 lib/classes/oauth2/client.php 中用于 get_userinfo ($token) 的代码
然后当我打印 $response 时,某个属性具有值:Null。发生问题的所有用户始终具有相同的属性。
帮助将不胜感激。