Strapi Microsoft 身份验证在 Angular 应用程序中存在重定向 URI 问题

Posted

技术标签:

【中文标题】Strapi Microsoft 身份验证在 Angular 应用程序中存在重定向 URI 问题【英文标题】:Strapi Microsoft authentication having issue with Redirect URI in Angular app 【发布时间】:2020-11-27 20:30:14 【问题描述】:

我已按照post 中详细说明的指南进行操作。一切都使用 App Registration、Strapi Provider 配置和 MSAL 配置进行设置。每当身份验证流程开始时,我就会被发送到 Microsoft 登录屏幕,然后我登录,然后我收到一条 Microsoft 错误消息 AADSTS90102: 'redirect_uri' value must be a valid absolute URI.。 I. 目前在 localhost 上运行 Strapi 和 Angular。

我已将http://localhost:1337/connect/microsoft/callback 添加到应用注册中的 Web 重定向 URI 列表中。错误屏幕 url 显示正在发送的重定向 URI。 redirect_uri=%2Fconnect%2Fmicrosoft%2Fcallback。这似乎无效。

Strapi admin Microsoft config 有一个字段为 The redirect URL to add in your Microsoft application configurations,其值为 /connect/microsoft/callback,不可编辑。 auth 是否希望通过 uri?如果是这样,如何改变?如果不是,那么配置它的正确方法是什么。我还没有找到任何关于如何配置的官方文档。

【问题讨论】:

您好,您有机会查看我的回答吗?还有其他问题吗? 【参考方案1】:

my-project/config/server.js 中的url 是使用连接功能所必需的。但是文件不是很清楚。

您可以将url 作为http://localhost:1337 添加到my-project/config/server.js 文件中,如下所示:

module.exports = ( env ) => (
  host: env('HOST', '0.0.0.0'),
  port: env.int('PORT', 1337),
  admin: 
    auth: 
      secret: env('ADMIN_JWT_SECRET', '38506ed8f48446c253135d43bbc2afec'),
    ,
  ,
  url: 'http://localhost:1337'
);

它将在/connect/microsoft/callback 之前添加http://localhost:1337,这应该可以解决此问题。更多讨论here 和here。

另外,如果你的localhost之前因为一些其他的配置而改变过,你可以在这里添加特定的主机和端口:url: 'http://10.10.100.242:1337'

【讨论】:

感谢您的回答。是的,这确实解决了我的问题。如果您不介意,我可以PM 相关问题吗? @andrewxt 当然。请显示您的问题。 你介意看看这个吗? ***.com/questions/63399724/…

以上是关于Strapi Microsoft 身份验证在 Angular 应用程序中存在重定向 URI 问题的主要内容,如果未能解决你的问题,请参考以下文章

在调用 Angular 构造函数之前捕获查询字符串

Strapi,使用 Auth0 访问 Strapi 中的用户数据

如何在没有 Microsoft 身份的情况下对 blazor 服务器进行 jwt 身份验证?

如何使用 Microsoft 身份平台身份验证在 ASP.NET Core Web 应用程序中获取 JWT 令牌?

如何使用身份服务器 3 和 microsoft 团队应用程序使用 Azure AD 令牌进行身份验证

Microsoft 身份验证注销不起作用