2013-07-17 32 views
0

有兩個應用程序AppA和AppB。用戶在AppA中進行身份驗證。當用戶點擊AppA中的鏈接時,我想將他重定向到AppB並將身份驗證數據傳遞給AppB,因此用戶可以在AppB中以相同憑據自動進行身份驗證。
是否有將驗證數據從一個網站傳遞到另一個網站的常用方法?
我怎樣才能以最安全的方式做到這一點?將驗證數據傳遞給另一個網站

回答

0

你可以通過加密在查詢字符串或共享的cookie的用戶名和密碼。

如果您在PRIVATE_KEY上APPB共享您可以解密任何你在APPA加密。

運行這生成公鑰和私鑰。

openssl genrsa -out public_key.pem 2048 
openssl rsa -in public_key.pem -pubout > private_key.pub 

在這裏你可以使用你的新密鑰加密\ decrypt。

function encrypt($data) 
{ 
    if (openssl_public_encrypt($data, $encrypted, file_get_contents("/home/blah/key/private_key.pem"))) 
     $data = base64_encode($encrypted); 
    else 
     throw new Exception('Unable to encrypt data. Perhaps it is bigger than the key size?'); 

    return $data; 
} 
function decrypt($data) 
{ 
    if (openssl_private_decrypt(base64_decode($data), $decrypted, file_get_contents("/home/blah/key/private_key.pem"))) 
     $data = $decrypted; 
    else 
     $data = ''; 

    return $data; 
} 
+0

在查詢字符串中傳遞敏感數據是一個禁忌。另外,您如何將用戶密碼發送到其他網站?它應該在數據庫中被醃製+散列。 –

相關問題