Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何让使用SSL的网站使用SAML在Okta上工作_Ssl_Playframework 2.0_Saml_Okta - Fatal编程技术网

如何让使用SSL的网站使用SAML在Okta上工作

如何让使用SSL的网站使用SAML在Okta上工作,ssl,playframework-2.0,saml,okta,Ssl,Playframework 2.0,Saml,Okta,如果这个问题问得不好,请原谅我。如果这是浪费每个人的时间,我会删除它。我没有实施这个,所以我是瞎走路。实施这项计划的人离开了,我需要做些工作 因此,我们在Centos服务器上通过play framework 2.1.2版运行我们的网站。当我执行“ps”时,我可以看到play正在监听端口9005上的http和9004上的https 该网站需要Okta的身份验证(如果需要的话,我可能会发布一些Java代码片段),因此用户必须通过SAML从Okta进行身份验证,然后才能使用我们的网站 在Okta内部,

如果这个问题问得不好,请原谅我。如果这是浪费每个人的时间,我会删除它。我没有实施这个,所以我是瞎走路。实施这项计划的人离开了,我需要做些工作

因此,我们在Centos服务器上通过play framework 2.1.2版运行我们的网站。当我执行“ps”时,我可以看到play正在监听端口9005上的http和9004上的https

该网站需要Okta的身份验证(如果需要的话,我可能会发布一些Java代码片段),因此用户必须通过SAML从Okta进行身份验证,然后才能使用我们的网站

在Okta内部,在SAML设置下,有4个URL:

  • SSO URL
  • 收件人URL
  • 目标URL
  • 访问群体URI(SP实体ID)
  • 如果我将所有URL都设置为,它就可以正常工作。这个网站运作良好

    如果我将所有URL更改为使用https和端口9004(),那么它就不起作用。我得到一个HTTP 500错误

    更奇怪的是,如果通过Okta进行身份验证,并且在主机服务器的另一个选项卡类型(而不是FQDN)中进行身份验证,那么它就可以工作。很好。当我通过Okta登录并单击图标(或键入FQDN)时,它会给我一个HTTP 500错误

    当查看每个URL时,Okta在看什么。我需要寻找什么来比较端口9004和9005之间的差异,以使端口9004通过Okta工作

    因此,总结如下: .... - 通过Okta工作 ... - 通过Okta不起作用 -在URI栏中键入,工作正常


    如果需要更多信息来回答我的问题,请告诉我,我会更新问题。

    您的okta配置是这样的吗

    而您的应用程序已正确配置该端点。 附加控制器端点的scala代码段,例如:

      def oktaLogin = Secure("SAML2Client") { profiles =>
        Action.async { implicit request =>
          val email = profiles.head.getId
          login(email)
        }
      }
    

    所以我们的情况是这样的。我们使用的是2.1.2版的Play框架。我们也在使用play-pac4j库1.1.4版。为SAML提供支持。显然,在pac4j库中有一个名为JavaWebContext.java的文件。在内部,它将方案硬编码为http。这把我们搞砸了,不是Okta

    从这个库的1.4.x版本开始,我们看到它检查我们需要哪个方案(http或https)


    我不确定我们是否可以在pac4j库的1.4.x版本中使用Play2.1.2。当/如果我们发现错误,我会更新这个答案。

    你能分享你得到的错误吗?@Tomer,谢谢你的关注。也许明天我会回答你的问题。在尝试为您查找错误消息时,我遇到了可能导致我的问题的问题。@托默,我收到的错误消息是SAML消息,目标端点“”与收件人端点“”不匹配。出于某种原因,有些东西正在使用http而不是https,但我们不知道在哪里。不确定这是Okta问题还是我们需要设置的问题。是的,我的Okta配置是这样的。那么您的代码片段是SSL工作所必需的吗?如果我们没有/使用Scala怎么办。我前面的那个人使用Java。将我们的讨论转移到聊天