snelg / cakephp-3-cas
CakePHP 3 的 CAS 认证
1.2.3
2019-07-05 19:44 UTC
Requires
- cakephp/cakephp: ^3.5.0
- jasig/phpcas: ~1.3.3
Requires (Dev)
- phpunit/phpunit: ~4.0
- psr/log: ~1.0
README
非常基础的 CakePHP 3 CAS 认证。
通过 composer 安装
使用 composer 将其安装到项目中。对于现有应用程序,您可以在 composer.json 文件中添加以下内容
"require": {
"snelg/cakephp-3-cas": "~1.0"
}
然后运行 php composer.phar update
用法
加载 Cake AuthComponent,包括 CasAuth.Cas 作为认证器。例如
$this->loadComponent('Auth'); $this->Auth->config('authenticate', [ 'CasAuth.Cas' => [ 'hostname' => 'cas.mydomain.com', 'uri' => 'authpath']]);
或将加载和配置合并为一步
$this->loadComponent('Auth', [ 'authenticate' => [ 'CasAuth.Cas' => [ 'hostname' => 'cas.mydomain.com', 'uri' => 'authpath']]]);
CAS 参数可以在 Auth->config 中指定,如上所述,或者通过写入 Configure::write 中的 "CAS" 键,例如
Configure::write('CAS.hostname', 'cas.myhost.com'); Configure::write('CAS.port', 8443);
参数
- hostname 是必需的
- port 默认为 443
- uri 默认为 ''(一个空字符串)
- debug(可选)如果为 true,则 phpCAS 将将调试信息写入 logs/phpCAS.log
- cert_path(可选)如果设置,则 phpCAS 将使用指定的 CA 证书文件来验证 CAS 服务器
- curlopts(可选)传递给 phpCAS::setExtraCurlOption 的额外 CURL 参数的键/值对数组,例如
'curlopts' => [CURLOPT_PROXY => 'http://proxy:5543', CURLOPT_CRLF => true]