2017-07-18 82 views
3

我看到一些奇怪,我以前没跑跨越。我有一个Web应用程序,并将该Web应用程序重定向到Azure AD以获取可交换访问令牌的代码。我已经做了很多次,所以我只是重复使用相同的代码。我已经在Azure中创建了我的应用注册,就像我以前做过很多次一样。问题是这样的 - 通常我可以在应用程序配置中为响应URL添加一个主机名,然后Azure AD可以很好地将其重定向到该主机的任何位置。Azure AD App需要回复URL的完整路径?

例如,如果我想重定向到https://foo/users/processcode,我可以正常只是把的https://foo一个ReplyUrl,这一切工作正常。在这一种情况下,它说:“‘https://foo/users/processcode’不匹配为应用程序配置等等的回复地址”。如果我放入ReplyUrl的完全限定路径,那么它就可以工作,但由于各种原因超出范围,我不想这样做。

所以我不遵守它为什么可能在这种情况下的一个问题。想知道是否有人突然看到或知道这可能是一个问题。

谢谢。

回答

2

的重定向URL/URL回复必须匹配要被重定向到的确切网页。如果您想要重定向到您网站中的不同页面,您可以将多个重定向URL添加到您的应用程序注册信息中 - 或者您的网页可以为您进行重定向。

另一种选择是在重定向URL添加*以及(https://mywebsite.com/*) - 但这只是与非融合应用工作。

+0

我明白你在说什么,但是......也许我没有解释不够好。 ReplyUrl只需在您的代码中完全匹配,该代码重定向到oauth端点以获取令牌(即redirect_uri参数)。您的Azure应用程序中的ReplyUrl没有 - 或者至少它从来没有,直到这一个应用程序。我有很多以AD方式注册的应用程序,只要redirect_uri指向其中一个ReplyUrl值的主机即可。到现在。 –