AADSTS70001:在目录中找不到具有标识符'guid'的应用程序

use*_*413 3 asp.net-mvc azure-web-sites azure-active-directory

Azure AD身份验证通过Visual Studio在本地运行良好.出版后; 我转到URL(https://mydomain.azurewebsites.net/),它被重定向到登录页面.此时地址栏的数据低于数据(注意:某些敏感数据已被删除).

https://login.microsoftonline.com/guid/oauth2/authorize?response_type=code id_token&redirect_uri = https://mydomain.azurewebsites.net/.auth/login/aad/callback&client_id = myclientid&scope = openid profile email&response_mode = form_post&nonce = noncevalue&状态=导向=%2F

现在有两个问题与上面的数据

第一个问题,这里提到的client_id = myclientid不再存在,我已将其从目录中删除.我为这个客户端ID搜索我的代码(find-in-file),以确保我没有错误地引用它.我在代码中找不到引用.

然后我复制了正确的client_id,替换为上面的url并重试.此时它让我登录并显示错误的请求消息.

第二个问题重定向网址https://mydomain.azurewebsites.net/.auth/login/aad/callback不是我配置的!!!(我把它设置为https://mydomain.azurewebsites.net)Azure有附加.auth/login/aad/callback部分

这肯定是一个配置问题.

以前有人遇到过这种问题吗?

小智 8

第一个问题

您似乎已通过azure门户网站配置了活动目录身份验证.这样它将覆盖web.config文件中的任何配置值.因此,请采取以下措施来验证这一点.

转到应用程序服务 - >选择您的应用程序服务帐户名称 - >在设置菜单下单击身份验证/授权 - >应用程序服务身份验证在身份验证/授权刀片中,验证应用程序服务身份验证是否处于打开状态以及是否处于打开状态在状态然后验证身份验证提供程序是否是Azure Active Directory.如果是这样,请单击Azure Active Directory:已配置(高级).

身份验证/授权刀片

在Azure Active Directory设置刀片中,单击"管理模式"选项中的"高级"按钮.验证客户端ID,颁发者URL和客户端密钥是否正确.如果没有更改它,然后单击确定.然后单击身份验证/授权刀片上的保存按钮.

Azure Active Directory设置刀片

现在,您可以测试您的网站是否按预期工作.

对于你的第二个问题

这可能由于错误的客户端ID和客户端密钥而发生.请按照我的说明验证上面的步骤,然后测试您的网站.如果所有设置都配置正确,则不应出现这样的错误.

注意:还要记住,如果您从门户网站重命名已创建的Azure广告应用程序名称,请验证您的azure应用程序服务活动目录设置,如上所述.