在同一个解决方案的两个项目中,我分别拥有Public web和Management web(crud / admin)。
如果我将管理Web项目发布到Web-App-root中的Azure,则一切正常。我可以按预期对我们的组织AzureAD再次进行身份验证(当然,还可以修复返回URL)。 但是我需要在根目录中发布未经身份验证的公共Web,并在/ Admin虚拟应用程序下发布管理部分。
关于“公共”网络的一切运行都很好。
但是,仅当我使用带斜杠的URL“ https://.azurewebsites.net/admin/”时,针对在/ Admin下发布的管理Web的针对login.microsoftonline.com的身份验证才有效。 如果没有admin之后的斜杠,它将无法正常工作。错误是(不完全是):无法登录到“ Mismatch ReturnURL”原因。
如果有人可以帮助解释Core 2.1,AzureAd,MVC路由的混乱情况以及接下来的工作地点,我将感到非常高兴。我已经工作了很多年,习惯了相对路径和绝对路径以及它的工作方式,但无法弄清楚这一点。
尝试了Url Rewrite,将admin和admin / returnurls添加到了AzureAd中,并且进行了其他一些无济于事的测试。
我已关注本文Azure samples core 2.1
json-config的一部分(不包含curls):
"AzureAd":
"Instance": "https://login.microsoftonline.com/",
"Domain": "<org>.onmicrosoft.com",
"TenantId": "00000000-0000-0000-b294-6abc39000000",
"ClientId": "00000000-0000-0000-b127-15cd58000000",
"CallbackPath": "/signin-oidc"
,