Имя: Пароль:
1C
1С v8
Как сделать basic авторизацию для своего http-сервиса реализованного в 1С.
0 pavlushov
 
28.07.22
12:11
Задача такая. Нужно поднять свой веб-сервер и реализовать защиту по Basic. Т.е. на мой сервер будет приходить запрос содержащий заголовок "Authorization" "Basic ", соответственно его надо обработать. Не понимаю как это реализовать.
1 Caber
 
28.07.22
12:20
1. Отключить авторизацию 1С у публикации (создать пользователя, прописать его жестко в файле публикации.
2. В теле запроса читать заголовки, если в них есть то что нужно - все хорошо, обрабатывать запрос.
2 pavlushov
 
28.07.22
12:21
(1) 1. Отключить авторизацию 1С у публикации (создать пользователя, прописать его жестко в файле публикации. - вот это сложно непонятно ) где находится файл публикации хотя бы?
3 Garykom
 
гуру
28.07.22
12:24
(2) эээ а кто публиковал то?
4 mistеr
 
28.07.22
12:25
(0) Поставить перед 1С Nginx, который переведет запрос в формат, понятный 1С.
5 pavlushov
 
28.07.22
12:27
(1) Правильно ли я понял. В 1С конфигураторе иду в публикацию на вэб-сервере и вместо кнопки "Опубликовать" жму "Сохранить" и получаю файл vrd - это и есть файл публикации? Далее в нем нужно где то отключить авторизацию 1с и включить авторизацию по конкретному пользователю для которого я и задам пароль? Имя пользователя и его пароль и будут данными для Basic авторизации? И куда я потом должен положить этот файл? В какую папку?
6 pavlushov
 
28.07.22
12:28
(3) я публикую, у меня должна быть basic авторизация, на мой сервер
7 pavlushov
 
28.07.22
12:28
(4) где поставить?
8 Caber
 
28.07.22
12:31
9 pavlushov
 
28.07.22
12:35
(8) я опубликовал и уже потестил запросы постманом, мне не понятно как так хитро опубликовать чтобы была basic авторизация, об этом нигде не нашел инфу
10 DGorgoN
 
28.07.22
12:37
(9) В файле публикации пропиши пользователя по умолчанию и в самой 1С уже обрабатывай. Написали жеж. Что у тебя за веб сервер?
11 pavlushov
 
28.07.22
12:40
(10) апач24, я просто не знаю что за файл публикации, где его брать
12 DGorgoN
 
28.07.22
12:43
(11) Когда публикуешь базу 1с ты указываешь путь. По этому пути пройди и открой файлики блокнотом.
13 Garykom
 
гуру
28.07.22
12:44
(4) это слишком сложно для ТС, он даже файлик default.vrd в каталоге который при публикации указывал найти не может
14 TSRh
 
28.07.22
13:22
(5)

1. в базе создай пользователя с нужными правами

2. в файле default.vrd:
ib="Srvr="192.168.0.1";Ref="Имя_базы";Usr=пользователь_1С;Pwd="пароль_пользователя"">

3. перезапусти веб-сервер на всякий случай

4. в модуле HTTP-сервиса обрабатывай:

Запрос.Заголовки();
15 TSRh
 
28.07.22
13:23
(14) пардон:

Запрос.Заголовки;
16 arsik
 
гуру
28.07.22
13:27
(14) Зачем в 1С это делать. Прикинь тебе 500 запросов прилетит в 1С? Это нужно или на прокси nginx отфильтровывать или в апаче, еще до обращения к 1С.
Вот например для апача https://httpd.apache.org/docs/2.4/mod/mod_auth_basic.html
17 pavlushov
 
28.07.22
13:45
(12) (13) (14) (16) Всем большое спасибо! Теперь точно разберусь! Тема закрыта!
18 TSRh
 
28.07.22
14:00
(16) чтобы весело стало, когда всё начнёт тормозить ;)
19 Smit1C
 
28.07.22
14:10
(16) если бы прилетало по 500 одновременных запросов, то таких вопросов бы ТС не задавал.
Скорее всего там максимум 1 запрос в минуту.
20 Caber
 
28.07.22
14:19
(19) От локалхоста)
21 arsik
 
гуру
28.07.22
14:42
(19) Ну так он же наружу хочет выставить, а там возможно все. Начнут просто ддосить или перебирать авторизацию по словарю.
22 mikecool
 
28.07.22
16:23
классно как все советуют прописать юзер-пароль по дефолту, но никто не пишет, что надо при этом оставить один сервис, которому нужен такой доступ
или пусть база наружу смотрит? )
23 mikecool
 
28.07.22
16:24
(21) зачем перебирать, если доступ уже будет ?
24 arsik
 
гуру
28.07.22
16:37
(23) Какой доступ будет? Ну вот злоумышленники знают только адрес сервиса, ну и начнут подбирать авторизацию.
Если авторизация будет внутри 1С, как предлагает (14), в 1с создастся куча сеансов.
Если авторизацию вынести на уровень апача или нгинкса, на 1с это никак не повлияет.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn