Как я могу использовать сертификат X.509 в Ruby on Rails, который вызывает API-интерфейсы мыла? - PullRequest
0 голосов
/ 11 июля 2019

Я создаю приложение, которое вызывает наше Middleware для использования нескольких мыльных API, и я использую гем Savon.В среде разработки Middlleware не требуется сертификат для идентификации пользователя (: ssl_verify_mode =>: нет).Теперь мне нужно перейти к производству, и мне нужно обойти сертификат X.509 с моим запросом на вызов API.

При выполнении запроса среды DEV с использованием Savon успешно получен ответ (поддельные данные)

# Soap API request
message = {
            "header" => {
                "ebmCID" => "9366498d-bc79-4fad-be2b-fa1a0e84241a", 
                "ebmMID" => "9366498d-bc79-4fad-be2b-fa1a0e84241a",
                "ebmRTID" => "9366498d-bc79-4fad-be2b-fa1a0e84241a",
                "ebmSID" => "XXXXXX",
                "ebmTimestamp" => "2019-06-10T12:27:46.1623586Z",
                "bankEntityId" => "XXXX"
            },
            "body" => {
                :customerId => custID,
                :attributes! => {
                    :customerId => {
                        "xmlns" => "http://xxxxxxxxxx/ebo/pty.cmn.Identifiers"
                    }
                }
            }
        }
client = Savon.client(
                    :wsdl => https://xxxx/tevs/pp.acc.evs.Account_1.1?wsdl,
                    :ssl_verify_mode => :none,
                    :log => true,
                    :log_level => :debug,
                    :pretty_print_xml => true
                    )
        response = client.call(:get_account_list, :message => message)

как я могу обойти X.509 cer, используя вышеуказанный код?

...