При спробі зайти в кабінет ДПС, отримуємо помилку:
Помилка отримання даних від серверу ДПС: Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray. Path "", line 1, position 1.
Всі проксі відключені, прямий доступ в Ітернет на ноутбуці, Сонату оновлено до останньої версії.
Вітаю.
Якщо ви маєте на увазі модуль "Кабінет ДПС" у Сонаті, то ця проблема відома і розробники наразі займаються її вирішенням.
Так, саме про нього. А як можна буде дізнатися, коли проблему вирішать?
Про виправлення розкажемо у розділі Новин разом з виходом оновлення програми - https://sonata.biz.ua/forum/1
В останніх двох оновленнях жодної інформації про виправлення
Ми перевірили - без проксі працює, але ми не можемо залишати користувачів працювати без проксі. Коли ж працює проксі, то Кабінет ДПС не працює з наступних причин (відповідь від наших адміністраторів проксі):
У логах ми помітили, що спочатку отримуємо запит TCP-трафіку з IP-адресою 193.200.32.30, як і очікувалося, і перевіряємо категоризацію URL-адреси, яка є «MISC_and Unknown». Ми дозволяємо цьому трафіку встановити з'єднання, а потім отримуємо CLIENT HELLO від сторони додатка.
Коли ми аналізуємо цей CLIENT HELLO, ми не бачимо SNI як «cabinet.tax.gov.ua», що є очікуваною поведінкою, а замість цього бачимо «sni=D?$??–?6??».
Тож, коли правила перевіряються і це значення SNI оцінюється, воно потрапляє в категорію «MISCELLANEOUS _OR_UNKNOWN» (Різне або невідоме), через що SSL-інспекція застосовується до нього і спрацьовує політика «SSL _GlobalInspectionPolicy».
Ми не могли зрозуміти цей домен і очікували, що SNI буде «cabinet.tax.gov.ua», тому перевірили логи проксі, записані під час реплікації, і вони підтвердили, що CLIENT HELLO ініціювався не для «cabinet.tax.gov.ua», а для іншого домену, який ми бачимо під час парсингу.
Перевірка сертифіката не проходить для цього SNI (d?$??–?6??), а не для «cabinet.tax.gov.ua», але оскільки сертифікат на стороні сервера має «cabinet.tax.gove.ua» у ланцюжку сертифікатів, ми бачимо в журналах помилку SSL Inspection BAD Certificate для цього домену.
Ми перевірили кожну транзакцію, і отаку поведінку ми бачимо в логах. Проблема виникає тому, що клієнт надсилає інший SNI, тоді як фактичний кінцевий сервер «cabinet.tax.gov.ua».
Тому, власне, питання чому Соната замість cabinet.tax.gov.ua надсилає якусь незрозумілу адресу як SNI?
Ми перевірили - без проксі працює, але ми не можемо залишати користувачів працювати без проксі. Коли ж працює проксі, то Кабінет ДПС не працює з наступних причин (відповідь від наших адміністраторів проксі):
Вітаю.
Не писали в новинах, оскільки рішення наразі є не для всіх операційних систем. Проблема виникла тому, що сервер кабінету податкової перестав підтримувати інші види захисту з'єднання, окрім TLS 1.3. Цей протокол гарантовано підтримується тільки у Windows 11, тому тільки з цієї операційної системи наразі є доступ до кабінету через Сонату.
Щодо вашого питання про SNI, то програмні засоби .NET, якими користується Соната, автоматично прописують SNI з адреси серверу, до якого йде запит. У будь-якому випадку, якби тут була би проблема на нашій стороні, то цей функціонал не працював би у всіх ситуаціях: як з проксі, так і без.
Постачальнику проксі треба перевірити, чи забезпечує їх сервіс у повному обсязі протокол TLS 1.3 та чи не спотворює SNI десь у процесі.
А все ж таки, коли-небудь можна через Сонату отримувати дані з "Кабінету ДПС", як це було раніше, чи ні ?
А все ж таки, коли-небудь можна через Сонату отримувати дані з "Кабінету ДПС", як це було раніше, чи ні ?
Можна і зараз, але наразі тільки з новішої операційної системи.
Технічна підтримка: support@sonata.biz.ua