Azure AD快速入门说答复URL与应用程序不匹配

时间:2019-12-11 01:09:55

标签: azure asp.net-core azure-active-directory

我正在开发一个快速入门,用于使用asp.net核心Web应用程序对用户进行身份验证。我已使用VS订阅创建了一个新的Azure AD,并根据此quickstart guide添加了我的应用程序。

enter image description here


enter image description here

然后我已更改代码中的appsettings.json,以按照指定的方式在该快速入门中下载。

enter image description here

基本上,这是快速入门中唯一需要更改的项目,我从vscode运行应用程序并获得以下信息:

enter image description here

是否可以查看Web应用程序在请求中作为reply urls发送的内容?我是否缺少其他可能不在快速入门中的设置?

编辑

如评论中所述, redirect_uri 的查询字符串属性的值为redirect_uri=http%3A%2F%2Flocalhost%3A3110%2Fsignin-oidc http://localhost:3110/signin-oidc

我在launchsettings.json

中看到了这个值
"iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:3110/",
      "sslPort": 44321
    }
  },
"profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "webApp": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "http://localhost:3110/"      
    }
  }

如果我将profiles对象中的值更改为快速入门中指示的值,则它会在继续处理浏览器中的“不安全”警告后起作用,但是为什么快速入门说明中没有呢? >

2 个答案:

答案 0 :(得分:0)

检查提供给登录端点的redirect_uri参数很重要。它需要与门户中已注册的内容完全匹配。

常见问题包括:-

  • HTTP / HTTPS不匹配
  • 端口号不匹配

答案 1 :(得分:0)

我认为这是因为您正在使用dotnet run命令运行应用。

使用dotnet run启动应用程序时,将使用带有"commandName": "Project"的第一个配置文件。值commandName指定要启动的Web服务器。因此,将使用applicationUrl的{​​{1}}(服务器URL)。

如果使用vs运行应用程序,请确认正在使用的配置文件。