Esempio n. 1
0
            add_user($postdata);
            break;
            /* Редактирование пользователя */
        /* Редактирование пользователя */
        case "editUser":
            edit_user($postdata);
            break;
            /* Удаление пользователя */
        /* Удаление пользователя */
        case "deleteUser":
            delete_user($postdata);
            break;
            /* Получение прав пользователя */
        /* Получение прав пользователя */
        case "getPermissions":
            get_user_permissions($postdata);
            break;
            /* Добавление правила доступа к данным */
        /* Добавление правила доступа к данным */
        case "setPermission":
            set_permission($postdata);
            break;
    }
}
oci_close($connection);
//}
/* Функция получения всех групп пользователей */
function get_user_groups()
{
    global $connection;
    $cursor = oci_new_cursor($connection);
Esempio n. 2
0
function user_login_openid($token)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://loginza.ru/api/authinfo?token={$token}");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $arr = json_decode(curl_exec($ch), true);
    if (isset($arr['error_type'])) {
        print $arr['error_message'];
        return 0;
    }
    $id = trim($arr['identity']);
    if (!$id) {
        throw new Exception();
    }
    //check if the user exists
    $res = sql_pe("SELECT user_id FROM `users` WHERE user_name=? LIMIT 1", array($id));
    sql_begin();
    $user_id = sizeof($res) ? $res[0]['user_id'] : make_new_user($id, 'notagreed', '', $id);
    $alias_uid = check_for_user_alias($user_id);
    if ($alias_uid) {
        $user_id = $alias_uid;
    }
    $token = remember_user($user_id, false);
    $row = sql_fetch_array(sql_query("SELECT user_shown_name, user_passwd, user_level FROM users WHERE user_id = {$user_id} LIMIT 1"));
    init_session($user_id, $row['user_shown_name'], get_user_options($user_id), get_user_permissions($user_id), $token, $row['user_level']);
    sql_commit();
    user_award_for_signup($user_id);
    if ($row['user_passwd'] == 'notagreed') {
        $_SESSION['user_pending'] = 1;
        return 2;
    }
    return 1;
}
Esempio n. 3
0
File: acl.php Progetto: ydhl/yangzie
 private function _check_user_permission($aconame)
 {
     $perm = get_user_permissions();
     if (!$perm) {
         return -1;
     }
     if (is_array(@$perm["deny"])) {
         //配置了拒绝项
         $denys = $this->_in_array($aconame, $perm["deny"]);
         //拒绝当前ACO
         if ($denys) {
             //拒绝当前ACO的所有action
             return false;
         }
     }
     if (is_array(@$perm["allow"])) {
         //允许当前ACO
         $allow = $this->_in_array($aconame, $perm["allow"]);
         //允许当前ACO
         if ($allow) {
             //允许当前ACO的所有action
             return true;
         }
     }
     if (@$perm["deny"] == "*") {
         return false;
     }
     //拒绝优先
     if (@$perm["allow"] == "*") {
         return true;
     }
     //允许所有
     return -1;
 }