Guest User

Untitled

a guest
Jul 12th, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. <wsse:UsernameToken>
  2. <wsse:Username>XXXXXXXX</wsse:Username>
  3. <wsse:Password>xxxxxxxxxxxx</wsse:Password></wsse:UsernameToken>
  4. public class OasisOpenOrgWssSecuritySecext
  5.  
  6. // UserToken Class
  7. public class UsernameToken
  8. {
  9. // Constructor for UsernameToken used to pass in username and password parameters
  10. public UsernameToken(String username, String password)
  11. {
  12. this.Username = username;
  13. this.Password = password;
  14. this.Nonce = generateNounce();
  15. this.Created = generateTimestamp();
  16. }
  17.  
  18. public String Username;
  19. public String Password;
  20. public String Nonce;
  21. public String Created;
  22. private String[] Username_type_info = new String[]{'Username','http://www.w3.org/2001/XMLSchema','string','0','1','false'};
  23. private String[] Password_type_info = new String[]{'Password','http://www.w3.org/2001/XMLSchema','string','0','1','false'};
  24. private String[] Nonce_type_info = new String[]{'Nonce','http://www.w3.org/2001/XMLSchema','string','0','1','false'};
  25. private String[] Created_type_info = new String[]{'wsu:Created','http://www.w3.org/2001/XMLSchema','string','0','1','false'};
  26. private String[] apex_schema_type_info = new String[]{'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd','true','false'};
  27. private String[] field_order_type_info = new String[]{'Username','Password','Nonce','Created'};
  28.  
  29. // Generate Nounce, random number base64 encoded
  30. public String generateNounce()
  31. {
  32. Long randomLong = Crypto.getRandomLong();
  33. return EncodingUtil.base64Encode(Blob.valueOf(String.valueOf(randomLong)));
  34. }
  35.  
  36. // Generate timestamp in GMT
  37. public String generateTimestamp()
  38. {
  39. return Datetime.now().formatGmt('yyyy-MM-dd'T'hh:mm:ss'Z'');
  40. }
  41. }
  42.  
  43. // SecurityHeaderType Class
  44. public class SecurityHeaderType
  45. {
  46. // Constructor for SecurityHeaderType used to pass in username and password parameters and instantiate the UsernameToken object
  47. public SecurityHeaderType(String username, String password)
  48. {
  49. this.UsernameToken = new OasisOpenOrgWssSecuritySecext.UsernameToken(username, password);
  50. }
  51.  
  52. public String wsuNamespace = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd';
  53. public OasisOpenOrgWssSecuritySecext.UsernameToken UsernameToken;
  54. private String[] UsernameToken_type_info = new String[]{'UsernameToken','http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd','UsernameToken','1','1','false'};
  55. private String[] wsuNamespace_att_info = new String[]{'xmlns:wsu'};
  56. private String[] apex_schema_type_info = new String[]{'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd','true','false'};
  57. private String[] field_order_type_info = new String[]{'UsernameToken'};
  58. }
  59.  
  60. <wsse:UsernameToken>
  61. <wsse:Username>XXXXXXXX</wsse:Username>
  62. <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">xxxxxxxxxxxx</wsse:Password>
Add Comment
Please, Sign In to add comment