snelg/cakephp-3-cas

CakePHP 3 的 CAS 认证

1.2.3 2019-07-05 19:44 UTC

This package is auto-updated.

Last update: 2024-09-06 06:41:21 UTC


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]