Имя: Пароль:
1C
1С v8
COMОбъект, аутентификация
0 Шпион
 
06.12.11
10:35
Народ. Уже туплю.

Надо поднять V82.Application, не указывая в коде имя пользователя и пароль. Как?

Win-аут. не спасает. Рисовать форму для ввода имени пользователя и пароля?
1 Ненавижу 1С
 
гуру
06.12.11
10:36
хранить в БД
2 Шпион
 
06.12.11
10:38
"Авторизация доступа через COM -соединение возможна как с помощью параметров строки соединения «Usr» и «Pwd», так и через пользователя Windows, в любом случае должно быть право на «Внешнее соединение».
" - из книги знаний.. Как?
3 Шпион
 
06.12.11
10:39
Право Внешнее соединение есть.
4 Defender aka LINN
 
06.12.11
10:40
(2) Что как?
5 Шпион
 
06.12.11
10:41
(4) "так и через пользователя Windows"
6 YF
 
06.12.11
10:41
(2) Таки пользователя-то нужно иметь в подключаемой базе с вариантом аутентификации Windows да еще и с нужным логином
7 Шпион
 
06.12.11
10:42
как поднять ком программно, не указывая пользователя, используя win-аутентификацию?
8 Шпион
 
06.12.11
10:42
(6) Таки он есть, представляешь?
9 Defender aka LINN
 
06.12.11
10:45
(8) Ну так и не указывай пользователя
10 Мыш
 
06.12.11
10:50
(7) Шпион какой. А win-аутентификацию когда проходишь?
11 Шпион
 
06.12.11
10:51
(9) Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V82.Application): Пользователь ИБ не идентифицирован
12 Defender aka LINN
 
06.12.11
10:52
(11) Значит, нет в базе такого пользователя, все ж просто.
13 Мыш
 
06.12.11
10:53
(11) В ИБ есть пользователь с тем именем, под которым залогинился в винду?
14 Шпион
 
06.12.11
10:53
(10) что значит "когда"?


   Приемник = Новый COMОбъект("V82.Application");
   Попытка
       Приемник.Connect("Srvr=000.000.000.000;Ref=infobase;");
       Подключен = Истина;
               ....
15 Alex375
 
06.12.11
10:54
код обрабатывается на сервере или клиенте? Если на сервере, тогда вход осуществляется от имени пользователя, под которым сервер запущен. А если локально - тогда от имени текущего пользователя
16 XLife
 
06.12.11
10:55
(0) управляемые формы?
17 Мыш
 
06.12.11
10:55
(14) Это была шутка. Ответь на (13)
18 Alex375
 
06.12.11
10:55
вот и смотри кто у тебя должен иметь вход в базу. Я у себя настраивал работу спец. пользователя от которого запускается сервер 1С. И его прописывал спец. пользователю в базе
19 Шпион
 
06.12.11
11:02
(15) Клиент
(16) какое это имеет значение???
(17) в обеих есть.
(18) База1 и База2, поднимаю комаппликейшн из Б1 к Б2, Usr и Pwd не пишу, потому что у пользователя в Б2 WIN-аут. Пишет (11)
20 Шпион
 
06.12.11
11:05
Короче, поясните мне, пжалста, выдержку из книги знаний. Как я могу подключиться программно к БД, используя метод connect COMОбъекта, не указывая пользователя, с использованием WIN-аутентификации этого пользователя в подключаемой базе?
21 Smallrat
 
06.12.11
11:05
Только что попробовал - прописал в базе для пользователя обмена авторизацию по пользователю ОС, под которым сервер запущен (по умолчанию USR1CV82). Стер в строке подключения имя и пароль и соединение прошло нормально.
22 Шпион
 
06.12.11
11:06
в первой базе под вин-авторизован?
23 Smallrat
 
06.12.11
11:07
(22) по-моему неважно под кем авторизован в первой базе (у меня вин)
24 Defender aka LINN
 
06.12.11
11:08
(19) Какой пользователь указан-то? Если ты делаешь все на клиенте, то и указывай в Б2 пользователем себя, любимого.
25 Шпион
 
06.12.11
11:10
(24) Мне нужно не себя указывать, а подключаться к базе именно под тем, кто в данный момент работает в текущей. Судя по (21) и (23) надо под вин аутентифицироваться в первой. Сейчас попробую.
26 Smallrat
 
06.12.11
11:10
(22) А, да - у меня код на сервере исполняется под тонким клиентом.
27 Alex375
 
06.12.11
11:11
Я тебе же уже написал: если клиент (проверь точно!) тогда должна быть авторизация текущего пользователя windows. А если сервера, тогда авторизация пользователя от имени которого запущен сервер 1С. Я сейчас говорю про авторизацию в базе к которой подключаешься. В первоначальной базе абсолютно не важно какая авторизация
28 Шпион
 
06.12.11
11:14
"тогда должна быть авторизация текущего пользователя windows" - )))) говорю ж, туплю. У меня самого не указана была win-аутентификация). Взлетело. Всем спасибо большое!
29 Smallrat
 
06.12.11
11:15
(28) бррррррр, я ничего не понял, щас попробую снять авторизацию у себя.
30 Шпион
 
06.12.11
11:22
(29) я немного ввел в заблуждение. Пользователи разные: Иванов и Иванов Вася. Соответственно, 1С-аутентификация не проходила, а хранить список в Источнике нафиг надо. Оставалась WIN. Ее указал для Иванова, но тестил под собой(!), а у меня 1С-аутентификация, как у админа, потому что неудобно тестить с WIN.

Ты прав во всем, что говорил. Все ок. Не парься.
31 Шпион
 
06.12.11
11:23
(12) сразу ответил, но я не сразу допер)
32 Smallrat
 
06.12.11
11:24
(28) Сейчас проверил - снял в базе-1 вин-авторизацию, COM-соединение в серверном коде коннектится под пользователем винды, под которым крутится служба сервера 1С. Написал код на клиенте, перестало коннектится, поставил в базе-2 пользователя, под которым я в сессии сижу, стало коннектится.
Всё как люди и написали.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший