问题标签 [react-aad-msal]

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

reactjs - Azure 访问令牌 react-aad-msal

我正在尝试使用以下库“react-aad-msal”在 Azure 中对我的用户进行身份验证并检索访问令牌。一旦检索到,我会将其传递给我的安全 api。问题是我每次登录时都无法获取访问令牌。不知何故,访问令牌没有出现

这是我的 authProvider 文件

在我的 App.jsx 上我使用这个

我能够检索 accountInfo.userName 但不能检索 accountInfo.jwtAccessToken。对于 inside.jsx 我有以下

0 投票
1 回答
129 浏览

reactjs - 为 API 授权 SPA

我们有 5 个 REACT 门户和 1 个 Asp:net Core 3.1 API。我们希望对所有门户使用相同的 API。他们都通过 MSAL B2B (react-aad-msal) 进行授权。首先,我试图让一个门户使用一个 API。为此,我有两个 App Reg(AccountRequestPortal 和 AccountAPI)。

App Reg AccountRequestPortal : 在此处输入图像描述

在此处输入图像描述

帐户API: 在此处输入图像描述

在此处输入图像描述

请注意,我已授予门户对 API 的访问权限。

API 配置:

API 应用程序设置:

如果我选择仅对机器人使用相同的 App Reg,则 API 和门户网站一切正常。但是,如果我选择在两个 AppReg 上划分 API 和 Portal,我会得到 401。即使我已经向 ApiReg 提供了对 Portal AppReg 的访问权限,我是否遗漏了什么?

0 投票
0 回答
84 浏览

react-aad-msal - 使用 react-aad-msal 在登录期间保持用户状态的成语

我正在使用react-aad-msal并且需要在登录之前到之后保持一些状态。通常使用 Azure AD,我会在userState 参数中传递我需要在登录期间保持的状态,但这在 react-aad-msal中没有实现。有了这样一个流行的库,我不可能是唯一需要在登录中保持状态的人。在重定向周期中保持状态的好习惯是什么?

0 投票
0 回答
310 浏览

http-error - 对应用启用 Msal 身份验证后出现错误 431 请求标头字段太大

由于在请求标头 azure webapp 中发送过长的 cookie 返回 431 错误,即请求标头字段太大。我在 Github 上阅读了很多问题,但没有任何效果。我发布我的配置:

0 投票
0 回答
1415 浏览

javascript - 如何模拟 MSAL 身份验证?

我使用连接到 Azure Active Directory B2C 的 MSAL 向我的 Web 应用程序添加了身份验证。

当我连接并可以访问 Microsoft 站点时,这可以正常工作。但是,当我不在时它会失败。

例如在飞机上或防火墙构建服务器中

如何添加模拟身份验证以便我可以离线开发?

0 投票
0 回答
1868 浏览

reactjs - 未处理的拒绝 (ClientAuthError):需要用户登录。对于静默呼叫,请求必须包含 sid 或 login_hint

我正在 React 中创建应用程序并使用“react-aad-msal”库(https://www.npmjs.com/package/react-aad-msal),该库使用 AzureAD 进行身份验证和授权,然后接收数据(列出任务)来自 API(我以这个例子为例https://github.com/Azure-Samples/ms-identity-javascript-angular-spa-dotnetcore-webapi-roles-groups/tree/master/chapter2/TodoListAPI)。我有以下组件:authProvider.js、TodoConstants.js、TodoActions.js、TodoReducer.js、TodoContainer.js、TodoSaga.js。当我添加 const token = await authProvider.getAccessToken () 以从 TodoSaga.js 中的 API 请求数据时,我开始收到错误:未处理的拒绝 (ClientAuthError): 需要用户登录。对于静默呼叫,请求必须包含 sid 或 login_hint。如果您在 authenticationParameters 中将 loginHint: "myMail@domain.com" 添加到 authProvider.js,则它开始正常工作并提供直接进入身份验证阶段,但如何正确指定 loginHint 或 sid 尚不清楚。请告诉我在这种情况下如何正确获取 loginHint 或 sid?哪个参数更可取?

authProvider.js

TodoConstants.js

TodoActions.js

TodoReducer.js

TodoContainer.js

TodoSaga.js

在此处输入图像描述

0 投票
1 回答
144 浏览

reactjs - 在 React 应用程序中通过 AAD(Azure Active Directory)登录不起作用

我正在尝试通过 Azure Active Directory for React 应用程序实现身份验证。当我运行我的应用程序时,登录后我得到一个空白页面。在控制台中,我看到:“[HMR] 等待来自 WDS 的更新信号...”

这是我的提供者:

包:react-aad-msal

在 Azure 中:我有一个应用注册,带有 SPA 平台。重定向 URI:http://localhost:3000。

有人有想法吗?我尝试了很多东西,并阅读了它,但没有结果。

提前致谢!

0 投票
0 回答
414 浏览

azure-ad-b2c - react-aad-msal 库在注销后重用以前的用户令牌

我们正在使用 react-aad-msal 通过 AD B2C 使用 Azure AD 对用户进行身份验证。B2C 配置了自定义策略,但没有特定于注销。我们在身份验证参数中传递了权限、domain_hint 和 login_hint,这些参数会根据用户在重定向到 B2C 登录之前在应用程序电子邮件提示中输入的内容而动态变化。初始登录工作正常,但是在调用 authProvider.logout() 之后,如果不同的用户尝试登录并且他的外部 idp 没有改变,但 login_hint 仍然以某种方式保留前一个用户的令牌。我看到它会发布注销重定向 uri。本地存储为空,authenticationState 为 Unauthenticated,但突然间,前一个用户的令牌出现在本地存储中。将提示设置为“登录”没有帮助。有人有类似的问题吗?它从哪里获得令牌?奇怪的是,它在 FireFox 中可以正常工作,但在 Chrome 中却不行。此外,在更改用户后,它有时会随机进入无限循环,并显示登录已在浏览器控制台中进行的消息。

0 投票
1 回答
1280 浏览

reactjs - 在反应应用程序中访问令牌过期后自动注销

我有一个使用react-aad-msal库对 Azure AD 进行身份验证的反应应用程序。下面的代码工作正常。但是当访问令牌过期时,getAccessToken 方法会自动获取新的访问令牌并让应用程序继续运行。但相反,我要求用户在访问令牌过期时重新进行身份验证,以及用户是否在整个持续时间内都处于空闲状态。有没有办法做到这一点?

0 投票
2 回答
835 浏览

reactjs - azure Microsoft MSAL 2.0(msal浏览器)时如何识别用户是否登录?

我们在 REACT SPA 中使用 MSAL 2.0 进行身份验证。根 App 组件实现了一个处理身份验证部分的反应高阶组件 (HOC)。在身份验证逻辑中,我们如何检查用户是否在初始登录后登录,以避免重新渲染与从图形 api 获取用户信息相关的逻辑。要求是在用户第一次登录并从图形 api 中检索信息后,应用程序应重复使用该信息,直到登录过期。这里最好的方法是什么?