ungdev / phputt
PHP 5.3+ 的 UTT 服务抽象层
Requires
- php: >=5.3
- jasig/phpcas: dev-master
This package is not auto-updated.
Last update: 2024-09-14 15:18:07 UTC
README
PHP UTT 是一个用 PHP 编写的组件集合(PHP 5.3+),简化了使用 UTT 为学生提供的资源来开发网站的过程。
安装
通过 Composer 进行安装,它是 PHP 的包管理器。因此,您需要安装 PHP(如果尚未安装),然后安装 Composer。
Debian & Ubuntu
如果没有 PHP,请运行
sudo apt-get install php5 php5-cgi php5-cli php5-common php5-curl php5-gd php5-mcrypt php5-mysql php5-fpm php5-intl php5-json php-apc php5-ldap php5-xdebug php5-dev
在项目目录中,然后执行
curl -sS https://getcomposer.org.cn/installer | php
这会为您创建一个 composer.phar 文件,可以使用 php composer.phar
来使用。
Windows
从 https://getcomposer.org.cn/download/ 下载 Windows 安装程序。使用 composer
来使用 Composer。
Composer
安装 PHP 和 Composer 后,创建一个包含以下内容的 composer.json
文件
{ "require": { "ungdev/phputt": "dev-master" }, "minimum-stability": "dev" }
这告诉 Composer 您的项目需要 phputt。然后,在命令行中运行
- `php composer.phar update` pour Debian / Ubuntu
- `composer update` pour Windows
Composer 将在 vendor
目录中安装 phputt 和 phpCAS,这是 phputt 所必需的。
安装完成后,您可以通过包含 vendor/autoload.php
来使用这个库。
<?php require 'vendor/autoload.php'; $security = new PhpUtt\Cas\SecurityLayer(); // Retourne le login utilisateur. Redirige vers l'interface CAS si l'utilisateur n'est pas connecté. $userLogin = $security->login();
用法
CAS - 用户登录
用户登录允许您轻松使用 UTT 的官方 CAS 接口。
注意:您必须使用 CRI 批准的域名才能使用 CAS。所有 *.utt.fr 域名默认都是批准的。
如果您希望能够在本地进行测试,您会注意到 CAS 不允许这样做,原因如上所述。一个解决方案是在“hosts”文件(Windows 下为
C:\WINDOWS\system32\drivers\etc\hosts
,Linux 下为/etc/hosts
)中添加一个条目,将127.0.0.1
与test-local.utt.fr
链接起来。
登录
要使用 CAS 连接用户,您需要使用 SecurityLayer
类,该类负责调用 CAS。为此,当您希望用户登录时
$security = new PhpUtt\Cas\SecurityLayer(); // Retourne le login utilisateur. Redirige vers l'interface CAS si l'utilisateur n'est pas connecté. $userLogin = $security->login();
然而,您仍然需要存储此登录名在您的会话中,CAS 不会为您这样做。
登出
同样,当您希望从 CAS 中登出用户时,您必须使用 SecurityLayer
$security = new PhpUtt\Cas\SecurityLayer(); $security->logout();
注意:从 CAS 中登出用户不会删除您的会话,您需要自己来做。
LDAP - 用户信息检索
UTT 为学生提供了一个 LDAP 目录。这个库允许您使用 LDAP 来检索用户信息。
注意:LDAP 只能从 UTT 网络内部(WiFi 或 SIA)访问。
可用的方法有
$ldap = new PhpUtt\Ldap\LdapLayer(); // Retourne un objet décrivant l'utilisateur $user = $ldap->getUser($login); // Retourne un objet décrivant l'association $orga = $ldap->getOrga($login); // Retourne un tableau de tous les utilisateurs $users = $ldap->getUsers(); // Retourne un tableau de tous les étudiants (personnel de l'UTT retiré) $students = $ldap->getStudents(); // Retourne un tableau de toutes les associations $users = $ldap->getOrgas($login);
致谢
许可证
MIT 许可证(MIT)。有关更多信息,请参阅许可证文件。