From 97801800febf80da1862660251e06dcc81d36e6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A2=D0=B8=D0=BC=D1=83=D1=80=20=D0=9A=D0=B0=D1=88=D0=B0?= =?UTF-8?q?=D1=84=D1=83=D1=82=D0=B4=D0=B8=D0=BD=D0=BE=D0=B2?= Date: Thu, 28 Dec 2023 23:48:00 +0300 Subject: [PATCH] =?UTF-8?q?fixes=20#101=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D1=8B=20=D0=BA=D0=BE=D0=BD=D1=81=D1=82=D1=80?= =?UTF-8?q?=D1=83=D0=BA=D1=82=D0=BE=D1=80=D1=8B=20=D0=B0=D0=B2=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Ext/Module.bsl" | 79 ++++++++++++++++++- .../Ext/ObjectModule.bsl" | 4 +- 2 files changed, 80 insertions(+), 3 deletions(-) diff --git "a/src/ru/CommonModules/\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl" "b/src/ru/CommonModules/\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl" index ef2a9b0..157f369 100644 --- "a/src/ru/CommonModules/\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl" +++ "b/src/ru/CommonModules/\320\232\320\276\320\275\320\275\320\265\320\272\321\202\320\276\321\200HTTP/Ext/Module.bsl" @@ -17,7 +17,7 @@ // // URL: https://github.com/vbondarevsky/Connector // e-mail: vbondarevsky@gmail.com -// Версия: 2.4.8 +// Версия: 2.5.0 // // Требования: платформа 1С версии 8.3.10 и выше @@ -537,6 +537,83 @@ КонецФункции + +// Конструктор аутентификации операционной системы +// +// Возвращаемое значение: +// Структура: +// * ИспользоватьАутентификациюОС - Строка - включает использование аутентификации NTLM или Negotiate. +// +Функция НоваяАутентификацияОС() Экспорт + + Результат = Новый Структура; + Результат.Вставить("ИспользоватьАутентификациюОС", Истина); + + Возврат Результат; + +КонецФункции + + +// Конструктор аутентификации Basic +// +// Возвращаемое значение: +// Структура: +// * Пользователь - Строка - имя пользователя. +// * Пароль - Строка - пароль пользователя. +// +Функция НоваяАутентификацияBasic(Пользователь = "", Пароль = "") Экспорт + + Результат = Новый Структура; + Результат.Вставить("Тип", "Basic"); + Результат.Вставить("Пользователь", Пользователь); + Результат.Вставить("Пароль", Пароль); + + Возврат Результат; + +КонецФункции + +// Конструктор аутентификации Digest +// +// Возвращаемое значение: +// Структура: +// * Тип - Строка - Код типа аутентификации. Всегда "Digest". +// * Пользователь - Строка - имя пользователя. +// * Пароль - Строка - пароль пользователя. +// +Функция НоваяАутентификацияDigest(Пользователь = "", Пароль = "") Экспорт + + Результат = Новый Структура; + Результат.Вставить("Тип", "Digest"); + Результат.Вставить("Пользователь", Пользователь); + Результат.Вставить("Пароль", Пароль); + + Возврат Результат; + +КонецФункции + +// Конструктор аутентификации AWS4-HMAC-SHA256 +// +// Возвращаемое значение: +// Структура: +// * Тип - Строка - Код типа аутентификации. Всегда "AWS4-HMAC-SHA256". +// * ИдентификаторКлючаДоступа - Строка - идентификатор ключа доступа (AccessKey). +// * СекретныйКлюч - Строка - секретный ключ (SecretKey). +// * Сервис - Строка - сервис, к которому выполняется подключение. +// * Регион - Строка - регион, к которому выполняется подключение. +// +Функция НоваяАутентификацияAWS4(КлючДоступа = "", СекретныйКлюч = "", Сервис = "", Регион = "") Экспорт + + Результат = Новый Структура; + Результат.Вставить("Тип", "AWS4-HMAC-SHA256"); + Результат.Вставить("ИдентификаторКлючаДоступа", КлючДоступа); + Результат.Вставить("СекретныйКлюч", СекретныйКлюч); + Результат.Вставить("Сервис", Сервис); + Результат.Вставить("Регион", Регион); + + Возврат Результат; + +КонецФункции + #КонецОбласти #КонецОбласти diff --git "a/src/ru/DataProcessors/\320\242\320\265\321\201\321\202\321\213/Ext/ObjectModule.bsl" "b/src/ru/DataProcessors/\320\242\320\265\321\201\321\202\321\213/Ext/ObjectModule.bsl" index d1ee9ef..42942c0 100644 --- "a/src/ru/DataProcessors/\320\242\320\265\321\201\321\202\321\213/Ext/ObjectModule.bsl" +++ "b/src/ru/DataProcessors/\320\242\320\265\321\201\321\202\321\213/Ext/ObjectModule.bsl" @@ -511,7 +511,7 @@ УтверждениеВерно(Результат["authenticated"], Истина); УтверждениеВерно(Результат["user"], "user"); - Аутентификация = Новый Структура("Пользователь, Пароль, Тип", "user", "pass", "Basic"); + Аутентификация = КоннекторHTTP.НоваяАутентификацияBasic("user", "pass"); Результат = КоннекторHTTP.GetJson( "https://connectorhttp.ru/basic-auth/user/pass", Неопределено, @@ -531,7 +531,7 @@ УтверждениеВерно(Результат["authenticated"], Истина); УтверждениеВерно(Результат["user"], "user"); - Аутентификация = Новый Структура("Пользователь, Пароль, Тип", "guest", "guest", "Digest"); + Аутентификация = КоннекторHTTP.НоваяАутентификацияDigest("guest", "guest"); Результат = КоннекторHTTP.Get( "https://jigsaw.w3.org/HTTP/Digest/", Неопределено,