0.0.2 • Public • Published


This is an angular service to help generate a WSSE Header for API calls.

It is developed based on the John Papa's style guide (


  1. bower : bower install angular-wsse | npm : npm install angular-wsse --save
  2. Modify your application to include wsseservice in your application dependencies.
  3. Add the following to get the global variable CryptoJS working :
"overrides": {
  "crypto-js": {
    "main": "crypto-js.js"

This Service uses CryptosJS ( to encode and decode things (SHA1, SHA512, Base64, Utf8) and has a dependency to the package crypto-js (

How to use it

To generate a wsse header you will need the encoded password and the username. You can generate the encoded password with : wsseservice.generateEncodedPassword(password, salt, iteration);

  • password : the plain password given by the user.
  • salt : the salt used to encode the password.
  • iteration : the number of iteration needed to encode the password (set in the parameters in Symfony2 for instance).

When you have the encoded password you just need to do : wsseservice.getWSSEHeader(username, password);

This will give you a string looking like this : UsernameToken Username="admin", PasswordDigest="u/TRqCu7nXjZRA5sX7bC5NZodsQ=", Nonce="NDM2YTYxZjVkMTA2YmE3MQ==", Created="2015-06-10T15:07:47Z"

You will need so set in the X-WSSE header.



  1. wsseservice.generateCreatedDate() - Return current date in ISO format.
  2. wsseservice.generateNonce() - Return a random Nonce.
  3. wsseservice.generateEncodedPassword(password, salt, iteration) - Return the encoded password. Based on SymfonY2 password encoding.
  4. wsseservice.generatePasswordDigest(nonce, createdDate, encodedPassword) - Return the SHA1 encoded password digest created with the Nonce and the createdDate.
  5. wsseservice.getWSSEHeader(username, password) - Return the WSSE string you need for the header.


This project is released over MIT License

Any contribution welcome

Package Sidebar


npm i angular-wsse

Weekly Downloads






Last publish


  • fxbpinelli