【发布时间】:2018-11-14 23:02:55
【问题描述】:
我有一个带有 REST 端点的本地托管 WCF 服务,该服务仅在 IIS 中配置为匿名身份验证。我在服务器上安装并配置了 Azure App 代理连接器。我能够通过通过传递身份验证与服务精细联系,但是当Azure AD作为安全机制选择Azure AD时,努力从控制台应用程序验证。我知道我可以在 Azure 中通过并在 IIS 中打开例如 Windows 身份验证,但不幸的是,在这种情况下这不是一个选项。
使用浏览器,我可以正常访问应用程序,甚至不需要输入凭据,我们的本地 AD 已与 Azure AD 连接并同步。
我关注了这个walk-through,尽管它与应用程序代理无关,并且重用部分代码我能够为我的应用程序获取访问令牌,但是当我运行带有授权标头的 http 请求时,我没有得到服务操作的结果。
使用 Fiddler 我可以注意到以下几点:
- 我得到 http 302(找到)。我可以在请求中看到我的授权标头,作为响应,我得到一个 cookie AzureAppProxyAnalyticCookie
- 接着是 http 200 到 login.microsoftonline.com
示例我提供的上述链接工作正常,所以很明显我做错了什么。为什么 Authorization 标头不被接受,为什么我被重定向到登录页面?
提前致谢
【问题讨论】:
标签: c# .net oauth azure-active-directory owin