2015-08-25 26 views
0

我尝试合并WSSE身份验证。我在后面有一个symfony,前面有一个应用程序Ionic - AngularJS。 我跟着有关WSSE的菜谱,和论文辅导:Symfony 2 - WSSE - FOSUserBundle - FOSRestBundle - Javascript

http://obtao.com/blog/2013/05/create-rest-api-in-a-symfony-application/

http://obtao.com/blog/2013/06/configure-wsse-on-symfony-with-fosrestbundle/

而且

http://obtao.com/blog/2013/09/how-to-use-wsse-in-android-app/

我安装WSSE好了,我可以在我的应用程序散列我的密码此代码:

authentication.hashPassword = function(salt, clearPassword) { 
    var digest = ""; 
    console.log('==== STARTING HASHING PASSWORD ===='); 
    var salted = null; 
    if (!salt || salt == "") { 
    salted = clearPassword; 
    } else { 
    salted = clearPassword + "{" + salt + "}"; 
    } 
    digest = CryptoJS.SHA512(salted); 
    for (var i=1; i<5000; i++) { 
    digest = CryptoJS.SHA512(digest.toString(CryptoJS.enc.Latin1)+salted); 
    } 
    digest = digest.toString(CryptoJS.enc.Base64); 
    console.log('==== ENDING HASHING PASSWORD ===='); 
    console.log(digest); 
    return digest; 
}; 

,但我想,以产生头与我的哈希密码(上一讲被编码在Java中,和我在Java中的小白)

是否可以比较两个哈希密码,如果我后我的哈希密码?

你有什么想法创建一个头(或令牌)?

谢谢您的回答

+0

也许这个包可以帮助您的https: //github.com/escapestudios/EscapeWSSEAuthenticationBundle – chalasr

回答

1

您的应用程序似乎基于Ionic Framework。在教程中提到的“Android应用程序”之后,我们也测试了离子。

https://github.com/wallabag/ionic-app(密码为 “手工”,但它会帮助你与离子/ angularjs头部分)

在app.js:

$http.defaults.headers.common['x-wsse'] = function() { 
    return wsse.getHeaderValue(username, encryptedPassword); 
}; 
$http.defaults.headers.common.Authorization = 'profile=UsernameToken';