Added Canvas 1.1.0, originally not under SCM so no historical development records...
[canvas.git] / extensions / Auth2.php
blob722e75e31ecf2e32cc951fa65b5cc8d61110ecff
1 <?php
2 class Auth2 {
3 private $ldap_server = "ldap://ccsunet.clayton.edu";
4 private $auth_user = "CN=Directory Reader,cn=Users,DC=ccsunet,DC=clayton,DC=edu";
5 private $auth_pass = "CC\$U_DirRead#";
6 private $base_dn = "DC=ccsunet, DC=clayton, DC=edu";
8 // authenticates the user
9 public static function authenticate() {
10 // get a copy of the session object
11 $session = Session::retreive();
13 // get username from session or from login page
14 $session_username = $session->auth['username'];
15 $session_password = $session->auth['password'];
16 // if it's not in the session data, get it from the login form
17 $username = !empty($session_username) ? $session_username : $_POST['login']['username'];
18 $password = !empty($session_password) ? $session_password : md5($_POST['login']['password']);
20 // determine if previously authenticated (in session)
21 $ldap = new LDAP();
22 if($ldap->find($username, $password)) {
23 $session->auth['username'] = $username;
24 $session->auth['password'] = $password;
26 return true;
27 } else {
28 return false;
32 // checks privileges
33 public static function check_role($username, $role) {
34 $user = new user();
36 try {
37 $user->find_by_username($username);
38 } catch(Exception $e) {
39 return false;
42 if($user->role['role'] == $role) return true;
43 return false;