Как работать с паролем в системной настройке типа зашифрованная строка?
Добрый день. Вопрос в том, что нужно на back-end аутентифицироваться с паролем, который находится в системной настройке с типом зашифрованная строка. Т.е. какой-то правильный decrypt
Нравится
Здравствуйте! Воспользуйтесь данной конструкцией - https://prnt.sc/vdvss9
Как видно на скрине возвращаемое значение - 123456
хотя в системной настройке оно зашифровано - https://prnt.sc/vdvtrg
как и в БД - https://prnt.sc/vdvuni
Здравствуйте! Воспользуйтесь данной конструкцией - https://prnt.sc/vdvss9
Как видно на скрине возвращаемое значение - 123456
хотя в системной настройке оно зашифровано - https://prnt.sc/vdvtrg
как и в БД - https://prnt.sc/vdvuni
А как можно получить такую зашифрованую строку в бизнес-процессе без применения "Задания-сценарий"?
Александр Тыра,
добрый день! В БП система не даст Вам сохранить данное значение в параметр -
Если Вам необходимо использовать авторизацию в стороннем web-сервисе и то создайте, заранее, в разделе Web сервис, выбрать метод аутентификации Basic и добавить в него пароль - https://prnt.sc/vg0ji6
и в бп использовать уже элемент "Вызвать веб-сервис" - https://prnt.sc/vg0k4o, в данном контексте можно так использовать пароль в зашифрованном виде, иначе только через задание сценарий. Подробнее о работе с элементом "Вызвать веб-сервис" описано в данной статье
Нигрескул Алексей,
у меня JWT авторизация, так что получение токена я реализовал отдельным элементом процесса, и к нему как раз системная настройка с паролем. Реализовал через задание-сценарий, но думал есть более красивый способ. Видимо реализую еще один элемент процесса "Получение зашифрованной настройки" с выбором настройки и на выходе разшифрованный текст, будет наверно удобнее
Александр Тыра,
добрый день! Т.е. данный токен нужно передавать в Json-объекте, верно? В таком случае создаете веб сервис без авторизации, создаете метод POST делаете тело передаваемого объекта и в нем уже можно указать нашу зашифрованную переменную -
https://prnt.sc/vgm9dg
https://prnt.sc/vgm9t6
Наверное Вы это искали?
Нигрескул Алексей,
Да, я так и реализовал. Первый запрос получает токен отправляя логин и пароль (реализовал элемент процесса для удобства), и вот в него и передаю пароль из системной настройки зашифрованной
var client = new RestClient(urlForToken); client.Timeout = -1; var request = new RestRequest(urlMethod, Method.POST); request.AddHeader("Content-Type", "application/x-www-form-urlencoded"); request.AddHeader("Accept", "text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8"); request.AddParameter("username", login); request.AddParameter("password", password); IRestResponse response = client.Execute(request); if (response.StatusCode == HttpStatusCode.OK) { Token = response.Content; } StatusCode = (int)response.StatusCode;
А потом в вебсервис в поле для авторизации ложу полученный токен