首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不可能的phpCAS带有phpCAS和示例的证书。它只在不需要SSL服务器验证的情况下工作。

不可能的phpCAS带有phpCAS和示例的证书。它只在不需要SSL服务器验证的情况下工作。
EN

Stack Overflow用户
提问于 2014-05-24 00:25:59
回答 1查看 2.9K关注 0票数 1

我正在做一个CAS整合项目,我正在做的是我的大学。最后的集成应该与symfony2一起进行,但是首先我需要使示例代码正常工作。

最后,我使用example_simple.php 1.3.2使用了phpCAS示例,但是指令:

代码语言:javascript
复制
phpCAS::setNoCasServerValidation();

是启用的那个。我想我应该用:

代码语言:javascript
复制
phpCAS::setCasServerCACert($cas_server_ca_cert_path);

但是,当我启用第二个(并禁用另一个)时,授权就不再起作用了。下面是日志的相关输出行错误:

代码语言:javascript
复制
could not open URL 'https://cas_server.fi/cas/serviceValidate?service=http%3A%2F%2Flocalhost%2Fphpcas2%2Fdocs%2Fexamples%2Fexample_simple.php&ticket=ST-115606-M1Omd1cHWzbLbmxa1nYV-cas' to validate (CURL error #60: SSL certificate problem: unable to get local issuer certificate) [Client.php:2763]

cas服务器为我提供了两个.crt文件:

  • MYCASRootCA.crt
  • MYCASLinuxSUBCA.crt

它们应该安装在我的系统中(Ubuntu13.10)。它们在不同的地方,如/etc/ssl/certs/MYCASLinuxSUBCA.pem,但也有:

  • /usr/share/ca-certificates/lut/MYCASRootCA.crt
  • /usr/share/ca-certificates/lut/MYCASLinuxSUBCA.crt

因此,假设变量$cas_server_ca_cert_path必须有其中一个.crt文件或.pem dirs (这样的一个.crt,我无法使它工作)。我做错什么了?我的客户机-服务器(不是cas服务器)在我的本地主机上。有问题吗?我应该避免使用setCasServerCACert命令吗?为什么会这样?

我还尝试使用我的XAMP分期付款(Xampp 1.8.3)提供的curl bundle.crt证书。

如你所见,我对证书有点迷茫。

我读到了phpCAS和https://github.com/Jasig/phpCAS/issues?state=open中最近的Ubuntu版本的问题。但是,即使没有认证(默认情况下),我也无法使它与主代码一起工作。

任何想法都将不胜感激..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-24 13:50:38

我在github库中找到了一个解决方案:https://github.com/Jasig/phpCAS/issues/119

原因是PHP在我的xampp安装中使用的curl二进制与系统的curl二进制不同。系统可以访问/etc/ssl/certs/证书,但xampp curl没有(当然,除非您没有指出)。默认情况下,它在一个特殊的证书包文件中进行搜索。

最后,我已经为我的cas服务器找到了真正的证书,我正在使用它,但是如果您有类似的问题,也许您希望在讨论线程的末尾使用其他建议的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23840070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档