IdentityServer3 WS-Federation示例客户端和服务器

时间:2017-09-07 19:19:11

标签: identityserver3 ws-federation

我尝试在进入开发服务器之前,让IdentityServer3 WS-Federation客户端和相应的IS3 WS-Federation Provider(服务器)在本地计算机上运行。

我正在使用IS3示例MVC WS-Fed客户端found here。 和 在一个单独的VS17中,我使用了Scott Brady的WS-Fed插件提供程序示例found here

问题简述
当只运行Provider示例解决方案时,我可以成功登录(作为alice / alice用户)并检查客户端应用程序权限(虽然不存在),因此我相信Scott的WS-Fed Provider正如广告一样工作。

然而,当我运行WS-Fed客户端示例并将其连接到WS-Fed Provider时,然后尝试检查用户的声明,这里会发生什么:

  1. 客户端在自己的端口启动
  2. 点击声明链接
  3. 客户端指的是提供商IS3 WS-Fed
  4. WS-Fed StackTrace证书验证

    我在System.IdentityModel内的ThrowIfContextInvalid()中获得了一个StackTrace,因为get_Issuer()失败了。我甚至没有进入所提到的IS3登录界面,因为它在此之前失败了。

  5. 我打赌,像服务器进程中x509证书的范围不可用于客户端进程,或者我的客户端也需要令牌签名证书? (记住它们都在两个独立的VS17实例中的同一个盒子上运行。)

    请记住,我还没有对这些样本进行编码,只需提取 - 构建 - 运行...以便在继续之前了解流量/连接性。

    我确认: 服务器端口和RAMMFAR
    服务器签名证书存在
    客户端提供商=服务器端口,域等。

    我可以上传代码,但就像上面引用的那样,它都在Gits中!

    (帮助我ObiWan,你是我唯一的希望; ObiWan = @leastprivilege)

    要求提供凭据的提供商的屏幕截图 enter image description here

    接受登录凭据的提供商的屏幕截图
    enter image description here

    客户端启动的屏幕截图 enter image description here

    WS-Fed提供商的StackTrace屏幕截图 enter image description here

1 个答案:

答案 0 :(得分:0)

我正在调查SO question #39362424中找到的答案,看看这是否可以解决我的问题......