anndro / sentry_ldap

PHP 5.3+ 完整的基于 Ldap 的认证和授权系统

2.2.2 2015-06-18 13:14 UTC

README

SentryLdap 是 Cartalyst Sentry 库的分支,增加了新的功能,如 ldap 认证。SentryLdap 是一个 PHP 5.3+ 完整的认证和授权系统。它还提供了用户组和其他安全功能。

这个分支与 Laravel 4.2 兼容!

Sentry 是一套与框架无关的接口和默认实现,尽管你可以替换任何你认为是合适的实现。

功能

它还提供了用户组和额外的安全功能等附加功能

  • Ldap 登录

Sentry 功能

  • 可配置的认证(可以使用任何类型的认证,例如用户名或电子邮件)
  • 授权
  • 用户激活 (可选)
  • 组和组权限
  • "记住我"
  • 用户暂停
  • 登录节流 (可选)
  • 用户封禁
  • 密码重置
  • 用户数据
  • 接口驱动 - 可以随意替换自己的实现

安装

SentryLdap 的安装非常简单。打开你的 composer.json 文件,并在 require 数组中添加以下内容

"anndro/sentry_ldap": "2.1.*"

到你的 composer.json 文件,然后遵循以下指南之一来使 SentryLdap 与你喜欢的框架一起工作或独立工作

  1. Laravel 4 中安装
  2. FuelPHP 1 中安装
  3. CodeIgniter 3 中安装

使用

这个库的 ldap 功能仍然是测试版。您必须更改配置文件中的这些行。

'ldap' => array(
	'server'	=> 'ldapserver',
	'port'		=> 'ldapport'
),

设置完成后,您必须遵循 Sentry 原始文档文件。您可以使用以下方式使用 ldap 登录;

// Set login credentials
$credentials = array(
    'userid'    => 'demo',
    'password' => 'demo',
);

// Try to authenticate the user
$user = Sentry::authenticateWithLdap($credentials, false);

还有 Sentry::authenticateWithLdapAndRemember($credentials); 函数。

支持

我们通过 我们的帮助论坛、在 IRC 的 #cartalyst 上为正常 sentry 问题提供支持,以及通过 GitHub 上的问题(仅限错误)为 Ldap 问题提供支持。