Size: a a a

2020 April 02

DK

Denis Kharchuk in pro.elixir
Эта ошибка возникает когда я делаю запрос к Apple для валидации платежной сессии. Возможно кто-то сталкивался с этим? Буду благодарен за помощь
источник

PG

Pïg Grëënëst in pro.elixir
ммм, у них "левые" сертификаты?
источник

DK

Denis Kharchuk in pro.elixir
Pïg Grëënëst
ммм, у них "левые" сертификаты?
Что значит "левые"?
источник

LL

Lama Lover in pro.elixir
Denis Kharchuk
Здравствуйте, объясните пожалуйста почему может возникать эта ошибка {:error, %HTTPoison.Error{id: nil, reason: {:tls_alert, 'unknown ca'}}}
Я не знаю что конкретно это ошибка значит, но это может быть самоподписанный сертификат или просто неизвестный рутовый сертификат
источник

PG

Pïg Grëënëst in pro.elixir
ca = certificate authority
источник

LL

Lama Lover in pro.elixir
источник

AG

Aleksandr G. in pro.elixir
не все ОС содержат актуальные root ca сертификаты, соотвестветственно если сертификат выпущен каким-то новым CA, то на данной системе у него будет такая ошибка.
источник

LL

Lama Lover in pro.elixir
Ну да, надо обновить сертификаты на своей машинке
источник

PG

Pïg Grëënëst in pro.elixir
арчепроблемы? XD
источник

LL

Lama Lover in pro.elixir
Если ты уже обновил, то почитай документацию у apple, возможно у них свои сертификаты
источник

DK

Denis Kharchuk in pro.elixir
Я зарегистрировал домен, создал мерчант ид и сформировал сертификат в дэвовском акаунте Apple которым подписал запрос
источник

LL

Lama Lover in pro.elixir
Denis Kharchuk
Я зарегистрировал домен, создал мерчант ид и сформировал сертификат в дэвовском акаунте Apple которым подписал запрос
А как ты подписываешь запрос в коде?
источник

DK

Denis Kharchuk in pro.elixir
opts = [
     certfile: "priv/cert/apple-pay-cert.pem",
     keyfile: "priv/cert/apple-pay-cert.pem",
     versions: [:"tlsv1.2"]
   ]
источник

DK

Denis Kharchuk in pro.elixir
with %{body: body} <- HTTPoison.post("#{validation_url}/paymentSession", body,
                                     [{"Content-Type", "application/json"}],
                                     ssl: opts)
источник

DK

Denis Kharchuk in pro.elixir
Сертификат от Apple был .p12 . Я переделал его в .pem вот так
openssl pkcs12 -in testoplaty.p12 -out apple-pay-cert.pem -nodes -clcerts
источник

LL

Lama Lover in pro.elixir
Denis Kharchuk
opts = [
     certfile: "priv/cert/apple-pay-cert.pem",
     keyfile: "priv/cert/apple-pay-cert.pem",
     versions: [:"tlsv1.2"]
   ]
А почему у тебя certfile и keyfile одинаковые?
источник

LL

Lama Lover in pro.elixir
Попробуй убрать keyfile
источник

DK

Denis Kharchuk in pro.elixir
Тоже самое
источник

LL

Lama Lover in pro.elixir
Denis Kharchuk
Тоже самое
*то же самое*
источник

LL

Lama Lover in pro.elixir
(я зануда, да)
источник