我试图将Okta Asp.NET Core Mvc示例(https://github.com/oktadeveloper/okta-aspnetcore-mvc-example)放入我的React Asp.Net Core应用程序中。 (我之所以没有使用Okta的React示例,是因为它使用Babel而我的VS2017 React项目使用的是Typescript。)Mvc示例在我的Okta帐户上正常运行,我的React应用程序编译并运行w从Mvc示例中复制了Okta SDK和其他代码,但我无法对其进行身份验证。
Okta返回一个http 400:身份提供者:未知,错误代码:无效请求,描述:' redirect_uri'参数必须是在客户端应用程序设置中列入白名单的绝对Uri。
我所做的就是将[authorize] attribs添加到我的控制器和一个请求帐户/登录的按钮。两个操作都返回相同的错误。我的Okta应用设置中确实有应用Url。
答案 0 :(得分:2)
这很可能与React / asp.net没有任何关系,而是与OIDC流程有关。如果我们删除SDK,您获取jwt令牌的调用将如下所示:{{url}}/oauth2/v1/authorize?idp=0oae59ifqdtRaTT4G0h7&client_id={{client_id}}&response_type=id_token&response_mode=fragment&scope=openid&redirect_uri=https://www.bing.com
请注意,上面的redirect_uri应该是您的应用程序设置中列出的。要做到这一点:转到Okta的管理仪表板>应用程序>应用程序>选择您使用上述ID的应用程序,并将以上URL添加到常规选项卡中的“登录重定向URI”。如果这是正确的,请确保上述请求中没有空格。