4 Stimmen

Funktion zur Erzeugung von Zugriffstoken für die Authentifizierung von Webdiensten

Ich benötige eine PHP-Funktion, die Zugriffstoken zur eindeutigen Identifizierung von Benutzern erzeugt. Ich werde dieses Token in einer extra Spalte namens "Token" speichern und es für die Authentifizierung mit der mobilen App verwenden. Ich habe online danach gesucht und alle Ergebnisse beziehen sich entweder auf Twitter oder Facebook. Ich brauche es in meiner App.

Ich verwende cakePHP Backend und Android Plattform.

Herzlichen Dank.

4voto

Rakesh Sharma Punkte 13542

Mit guid :-

function getGUID(){
    if (function_exists('com_create_guid')){
        return com_create_guid();
    }else{
        mt_srand((double)microtime()*10000);//optional for php 4.2.0 and up.
        $charid = strtoupper(md5(uniqid(rand(), true)));
        $hyphen = chr(45);// "-"
        $uuid = chr(123)// "{"
            .substr($charid, 0, 8).$hyphen
            .substr($charid, 8, 4).$hyphen
            .substr($charid,12, 4).$hyphen
            .substr($charid,16, 4).$hyphen
            .substr($charid,20,12)
            .chr(125);// "}"
        return $uuid;
    }
}

$GUID = getGUID();
echo $GUID;

oder über diesen Link http://guid.us/GUID/PHP

-1voto

Devang Rathod Punkte 6612

Sie können auch rendomaly generieren Token wie unten mit php.

$length = 20;

function generate_password($length)
{
    if($length>0) 
    {
        $rand_id="";
        for($i=1; $i<=$length; $i++)
        {
            mt_srand((double)microtime() * 1000000);
            $num = mt_rand(1,36);
            $rand_id .= $this->assign_rand_value($num);
        }
    }
    return $rand_id;
}

function assign_rand_value($num)
{
    switch($num)
    {
        case "1":
            $rand_value = "a";
        break;
        case "2":
            $rand_value = "b";
        break;
        case "3":
            $rand_value = "c";
        break;
        case "4":
            $rand_value = "d";
        break;
        case "5":
            $rand_value = "e";
        break;
        case "6":
            $rand_value = "f";
        break;
        case "7":
            $rand_value = "g";
        break;
        case "8":
            $rand_value = "h";
        break;
        case "9":
            $rand_value = "i";
        break;
        case "10":
            $rand_value = "j";
        break;
        case "11":
            $rand_value = "k";
        break;
        case "12":
            $rand_value = "l";
        break;
        case "13":
            $rand_value = "m";
        break;
        case "14":
            $rand_value = "n";
        break;
        case "15":
            $rand_value = "o";
        break;
        case "16":
            $rand_value = "p";
        break;
        case "17":
            $rand_value = "q";
        break;
        case "18":
            $rand_value = "r";
        break;
        case "19":
            $rand_value = "s";
        break;
        case "20":
            $rand_value = "t";
        break;
        case "21":
            $rand_value = "u";
        break;
        case "22":
            $rand_value = "v";
        break;
        case "23":
            $rand_value = "w";
        break;
        case "24":
            $rand_value = "x";
        break;
        case "25":
            $rand_value = "y";
        break;
        case "26":
            $rand_value = "z";
        break;
        case "27":
            $rand_value = "0";
        break;
        case "28":
            $rand_value = "1";
        break;
        case "29":
            $rand_value = "2";
        break;
        case "30":
            $rand_value = "3";
        break;
        case "31":
            $rand_value = "4";
        break;
        case "32":
            $rand_value = "5";
        break;
        case "33":
            $rand_value = "6";
        break;
        case "34":
            $rand_value = "7";
        break;
        case "35":
            $rand_value = "8";
        break;
        case "36":
            $rand_value = "9";
        break;
    }
    return $rand_value;
}

Dadurch wird ein zufälliges Token mit 20 Zeichen erzeugt.

Dann können Sie es wie folgt aufrufen

$link = $this->generate_password(20);

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X