Class: SatMx::XmlAuthBody
- Inherits:
-
Object
- Object
- SatMx::XmlAuthBody
- Defined in:
- lib/sat_mx/authentication.rb
Instance Method Summary collapse
- #generate ⇒ Object
-
#initialize(certificate:, uuid:) ⇒ XmlAuthBody
constructor
A new instance of XmlAuthBody.
Constructor Details
#initialize(certificate:, uuid:) ⇒ XmlAuthBody
Returns a new instance of XmlAuthBody.
47 48 49 50 |
# File 'lib/sat_mx/authentication.rb', line 47 def initialize(certificate:, uuid:) @certificate = certificate @uuid = uuid end |
Instance Method Details
#generate ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/sat_mx/authentication.rb', line 52 def generate <<~XML <S11:Envelope xmlns:S11="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <S11:Header> <wsse:Security S11:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> #{} <wsse:BinarySecurityToken wsu:Id="#{uuid}" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">#{Base64.strict_encode64(certificate.to_der)}</wsse:BinarySecurityToken> <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> #{signed_info} <SignatureValue></SignatureValue> <KeyInfo> <wsse:SecurityTokenReference> <wsse:Reference ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" URI="##{uuid}" /> </wsse:SecurityTokenReference> </KeyInfo> </Signature> </wsse:Security> </S11:Header> <S11:Body> <Autentica xmlns="http://DescargaMasivaTerceros.gob.mx" /> </S11:Body> </S11:Envelope> XML end |