使用Spotify身份验证的ASP.NET Core外部身份验证服务重定向失败

时间:2019-07-07 10:51:53

标签: c# azure asp.net-core .net-core

我遵循了this tutorial,并为我的.NET Core Webapp设置了Spotify外部身份验证,它在本地Docker容器中运行良好(此错误的常见原因是回调URL不完全匹配)。但是当我将其发布到Azure应用服务(Linux)时,它似乎根本没有重定向,并且出现以下错误。我怀疑这与重定向到Spotify和返回有关,但是我是Web api开发的新手,有人可以阐明我应该做什么吗?

  

INVALID_CLIENT:无效的重定向URI

1 个答案:

答案 0 :(得分:1)

如果您按照本教程操作,则已将https://localhost:44377/callback作为重定向URL添加到https://developer.spotify.com/dashboard/上的应用程序。 将应用程序部署到Azure App Service时,它运行在https://<your-app-name>.azurewebsites.net而不是localhost上。在OAuth中,有一项安全功能可强制OAuth令牌仅转发到列入白名单的网址。否则,攻击者可以伪造一个登录URL,该URL将在身份验证过程结束时为他提供令牌。

您的待办事项:

  1. 转到https://developer.spotify.com/dashboard/
  2. 选择您的应用程序。
  3. 点击“编辑设置”
  4. 在“重定向URI”部分中,添加您的地址https://<your-app-name>.azurewebsites.net(替换为your-app-name),然后单击添加。

现在,您应该能够登录到部署在Azure App Services上的应用程序。重定向URL的此白名单是(所有)OAuth实现所共有的。唯一不同的是您必须编辑白名单的方式。