【问题标题】:Azure "Enable AD Authentication" with deployment slots带有部署槽的 Azure“启用 AD 身份验证”
【发布时间】:2015-07-29 15:35:52
【问题描述】:

我有一个 Azure WebApp 并在 Azure 预览版中激活了“Active Directory 身份验证”。我们称它为https://mysite.azurewebsites.net(不是真正的 URL) Whis 按预期工作。但是,当我们添加部署槽时,我们无法让身份验证正常工作。访问暂存的 WebApp 时,例如https://mysite-staging.azurewebsites.net(不是真正的 URL),我们被重定向到

https://login.microsoftonline.com/<our-directory-guid>/oauth2/authorize?response_type=id_token&redirect_uri=https%3A%2F%2Fmysite-staging.azurewebsites.net/....

但是登录门户给了我们一个错误信息:

AADSTS50011:回复地址“https://mysite-staging.azurewebsites.net/<our-appliction-guid>/login”与为应用程序配置的回复地址不匹配:。

问题是,WebApp 没有在我们的目录中显示为应用程序,因此我们无法为其设置备用重新部署 URL。

有没有办法为 WebApp 指定备用地址,以便 Azure AD 登录可以用于部署槽?

【问题讨论】:

  • 您阅读问题了吗?他们不一样...
  • 嗯...您不需要这样做。应该为您正确设置回复 URL。您是否尝试过禁用暂存槽的身份验证并使用门户重新启用它?
  • 有趣的事情:当我进入插槽上的“身份验证/授权”设置时,我收到以下消息(我在原始站点上没有):要启用身份验证/授权,请确保所有您的自定义域具有相应的 SSL 绑定 .net 版本配置为“4.5”,管理管道模式设置为“集成”

标签: azure-web-app-service azure-active-directory


【解决方案1】:

我确定这不会解决部署槽仍然指向实时应用的问题,但这解决了这个错误,因为它非常愚蠢。

AADSTS50011:回复地址“https://mysite-staging.azurewebsites.net//login”与为应用程序配置的回复地址不匹配:。

当您在 Azure AD 中的应用程序设置下配置 URL 时,您忘记了……尾随斜杠!而已!你能相信吗?

    In other words, change this:
    http://yoururlforyourapp

    to this:
    http://yoururlforyourapp/

    Done! You’re welcome. 

来自http://www.matvelloso.com/2015/01/30/troubleshooting-common-azure-active-directory-errors/

【讨论】:

    【解决方案2】:

    当您创建部署槽时,您需要为其重新设置身份验证,就好像它是一个新应用程序一样。 (从应用服务的角度来看,确实如此。)

    步骤大致如下:

    1. 在门户中,转到您的应用服务下的部署槽。
    2. 进入认证/授权
    3. 按照与生产应用程序相同的方式设置身份验证/授权的所有步骤。 (通过 AzureAD 进行身份验证、选择提供商等)
    4. 在暂存环境的“管理应用”下,转到设置,然后为您的暂存环境添加新的回复 URL。您应该有您的常规回复 URL,然后是暂存版本:

    你应该可以进去了。

    发生在我身上的一件奇怪的事情是,这不起作用,然后我进入暂存身份验证并将其关闭。这使得一切正常,并且它正确地进行了身份验证,如果我没有登录,它不会让我进入。

    (我意识到我在最初的问题之后几年才发布这个答案,但是在花了一周的大部分时间弄清楚之后,这个问题反复出现在搜索中,我想记录下我最终做了什么万一别人有问题。)

    【讨论】:

      【解决方案3】:

      很遗憾,您似乎在该版本的预览门户中遇到了一些错误。

      回复 URL 问题可能是因为您在生产槽上配置身份验证后创建了暂存槽。在该版本中,我们克隆了身份验证设置,因此您的暂存槽最终指向现有的 AAD 应用程序,而无需添加新的回复 URL。此问题已通过在创建新插槽时不自动克隆身份验证设置得到解决。

      无论如何,您应该能够在 AAD 管理门户中找到您的应用程序。如果您看不到它,可能是因为您需要将“显示”下拉过滤器从“我公司使用的应用程序”更改为“我公司拥有的应用程序”。找到它并添加暂存回复 URL 也可以解决上述问题。

      如果您只在暂存槽上看到它,那么您在尝试在暂存槽上重新配置身份验证时看到的错误消息很可能是管理门户中的另一个错误。

      自您提出问题以来,身份验证/授权刀片已彻底更新,现在应该修复所有这些问题。带来不便敬请谅解。尽管存在这些问题,但我希望您能够取得进展。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-11-11
        • 2016-12-19
        • 2019-04-28
        • 2019-10-15
        • 2019-06-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多