代码之家  ›  专栏  ›  技术社区  ›  Yamuk

当运行在IIS反向代理之后时,如何使用docker上的dotnetcore为Facebook oauth授权设置重定向uri

  •  0
  • Yamuk  · 技术社区  · 6 年前

    我们正在构建一个在docker容器中运行的dotnet核心的web应用程序。我们已经把应用程序放在WS2016上的IIS后面,它被用作反向代理。传入我们的URL的请求(www.myurl.com网站)在url重写模块的帮助下,使用容器名称作为主机名转发到相关的docker容器(在我们的例子中,我们称之为“web”)。这个装置在这里还可以工作。

    然而,几天前我们需要添加Facebook oauth授权支持来注册到系统中,出现了一个问题。我们的授权设置如下:

    ...
    services.AddAuthentication().AddFacebook(o =>
    {
        o.CallbackPath = new PathString("/account/facebookreturn");
        o.AppId = appSettings.FacebookLogin.AppId;
        o.AppSecret = appSettings.FacebookLogin.AppSecret;
    })
    ...
    

    https://www.facebook.com/v2.12/dialog/oauth......redirect_uri=http%3A%2F%2Fweb%2Faccount%2Ffacebookreturn&state= ....

    redirect_uri 具有docker容器的容器名称/主机名,而实际上应该是“www.myurl.com网站".

    我们尝试了几种解决方案,例如 x-forwarded UseIISIntegration() UseUrls

    0 回复  |  直到 6 年前