cas 认证客户端输入账号密码登录后跳转报错?

使用@leo大佬提供的扩展laravel_cas_server包搭建了cas_server,使用subfission/cas扩展包搭建了cas_client,在客户端输入账号信息进行登录:

cas认证客户端输入账号密码登录后跳转报错?

但是回调时候报了下面的错误:

cas认证客户端输入账号密码登录后跳转报错?

配置方面应该没什么问题,一直追踪源码:

public function handle($request, Closure $next)
 {
    if ($this->cas->checkAuthentication()) {
        // Store the user credentials in a Laravel managed session
        session()->put('cas_user', $this->cas->user());
    } else {
        if ($request->ajax() || $request->wantsJson()) {
            return response('Unauthorized.', 401);
        }
        $this->cas->authenticate();
    }
    return $next($request);
}

找到对应的方法:

public function checkAuthentication()
{
    return $this->isMasquerading() ? true : phpCAS::checkAuthentication();
}

最后发现是方法phpCAS::checkAuthentication()报的错,但是到这边不知道该怎么解决。。。

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
leo
最佳答案
  1. 可以试试 https://github.com/apereo/phpCAS/blob/mast...
  2. 是的,只要客户端和服务端都遵循 CAS 协议即可
4年前 评论
讨论数量: 5
leo

看你的回调地址是一个 https 的 url,在服务器端应该是无法信任自签名的 https 证书

4年前 评论

@leo 可我这边只能用自签名的证书,项目一般部署在内网。还有一个问题是,现在的这一套客户端配置对接到java做的服务端上,也可以吧?求指教。。。

4年前 评论
leo

@Kim0801 那是 phpCAS 的事情,和 cas_server 无关

4年前 评论

@leo
第一个问题,自签名证书的问题有啥办法能解决吗?
第二个问题,不太懂,意思是不是我只要在客户端配置好subfission/cas这个扩展包就可以对接java服务端了吧?不需要管服务端是啥语言?

4年前 评论
leo
  1. 可以试试 https://github.com/apereo/phpCAS/blob/mast...
  2. 是的,只要客户端和服务端都遵循 CAS 协议即可
4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!