Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Наши способы организации безопасного удалённого доступа к рабочим местам и корпоративным ресурсам
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline sniker  
#1 Оставлено : 18 октября 2016 г. 14:00:42(UTC)
sniker

Статус: Активный участник

Группы: Участники
Зарегистрирован: 16.01.2013(UTC)
Сообщений: 33
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
Приветствую!

Используем УЦ 1.5.
Пытаюсь воспользоваться функцией CreateTokenForUser

Код:

<%
Dim objAdmin
Dim result
Dim id
Dim pas
Dim uid

on error resume next

	Set objAdmin=Server.CreateObject("RegistrationCenter.Admin")
	If Err.Number <> 0 Then
		ClearObjects
		Response.Write "Server.CreateObject. " & Err.Description
		Response.End
	End If
	 uid = 2340
	 id = 0
	 pas = ""
	result=objAdmin.CreateTokenForUser( uid, False, True, id, pas)
	If Err.Number <> 0 Then
		ClearObjects
		Response.Write "CreateTokenForUser. " & Err.Description
		Response.End
	End If
	
Response.Write "<pre>"
Response.Write result
Response.Write id
Response.Write pas & "</pre>"

on error goto 0

Sub ClearObjects()
	set objAdmin=Nothing
End Sub
%>


Выдаёт
Цитата:
CreateTokenForUser. Несоответствие типа

Вроде просто должно быть.
Всё как в инструкции, он ошибка остаётся.
Screenshot_3.png (101kb) загружен 77 раз(а).
Offline Станислав Королёв  
#2 Оставлено : 21 октября 2016 г. 14:08:50(UTC)
Станислав Королёв

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.11.2014(UTC)
Сообщений: 219
Российская Федерация

Поблагодарили: 26 раз в 26 постах
Добрый день,

Как Вы вызываете эту страницу?
Offline sniker  
#3 Оставлено : 21 октября 2016 г. 18:04:10(UTC)
sniker

Статус: Активный участник

Группы: Участники
Зарегистрирован: 16.01.2013(UTC)
Сообщений: 33
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
создан тестовый скрипт в папке на УЦ
UI/user/token.asp

вызывается в IE https://[ip УЦ]/ui/user/token.asp

При вызове он спрашивает сертификат и затем выдаёт ошибку.
Offline Kirill Sobolev  
#4 Оставлено : 21 октября 2016 г. 18:11:19(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,731
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 176 раз в 167 постах
Код:
result=objAdmin.CreateTokenForUser( uid, False, True, id, pas)

На VB этот метод ничего не возвращает.
Техническую поддержку оказываем тут
Наша база знаний
Offline sniker  
#5 Оставлено : 26 октября 2016 г. 13:47:48(UTC)
sniker

Статус: Активный участник

Группы: Участники
Зарегистрирован: 16.01.2013(UTC)
Сообщений: 33
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
замена на
Код:
objAdmin.CreateTokenForUser uid, False, True, id, pas

не помогает
Offline Kirill Sobolev  
#6 Оставлено : 26 октября 2016 г. 17:19:42(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,731
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 176 раз в 167 постах
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Кирилл Соболев за этот пост.
sniker оставлено 27.10.2016(UTC)
Offline sniker  
#7 Оставлено : 27 октября 2016 г. 10:37:00(UTC)
sniker

Статус: Активный участник

Группы: Участники
Зарегистрирован: 16.01.2013(UTC)
Сообщений: 33
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
Спасибо. Помогло создать токен без ошибок.
В таком виде
Код:
objAdmin.CreateTokenForUser uid, False, True, CInt(id), CStr(pas)


На УЦ вижу что создаётся токен.

Беда в том что в id и pas не возвращаются данные, о чем и говорится в
https://support.microsoft.com/en-us/kb/244012

Теперь совсем тупик Brick wall
В kb244012 предлагают в таком случае в исходном коде метода CreateTokenForUser поменять (например для Password) тип параметра с as string на as variant и тогда всё это заработает... а исходного кода у меня нет как бы

Предварительное преобразование типов тоже не помогает
Код:
id = CLng(0)
pas = CStr("")
objAdmin.CreateTokenForUser(uid, False, False, id, pas)

Выдаёт CreateTokenForUser. Несоответствие типа
Offline Kirill Sobolev  
#8 Оставлено : 27 октября 2016 г. 12:34:12(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,731
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 176 раз в 167 постах
Цитата:
В kb244012 предлагают в таком случае в исходном коде метода CreateTokenForUser поменять (например для Password) тип параметра с as string на as variant и тогда всё это заработает... а исходного кода у меня нет как бы

К сожалению, этот метод не предполагалось использовать в asp страницах и пересобрать с использованием VARIANT в описании методов тоже не представляется возможным.
Вы можете попробовать написать свой прокси на VB, который внутри будет перевызывать CreateTokenForUser.
Техническую поддержку оказываем тут
Наша база знаний
Offline sniker  
#9 Оставлено : 27 октября 2016 г. 15:28:15(UTC)
sniker

Статус: Активный участник

Группы: Участники
Зарегистрирован: 16.01.2013(UTC)
Сообщений: 33
Российская Федерация

Сказал(а) «Спасибо»: 13 раз
Мда...Think
Спасибо за совет. Подумаем.

Основная идея - это автоматизировать создание токена для существующего пользователя, чтобы не лезть для этих целей в АРМ каждый раз.
Как вариант - рассматривали создавать запись в БД на УЦ, но пароль для токена там хранится в бинарном виде.
Это хэш, как я понмаю.
А какой алгоритм преобразования пароля для записи в БД? Или это не разглашается?
Offline Kirill Sobolev  
#10 Оставлено : 27 октября 2016 г. 15:55:51(UTC)
Кирилл Соболев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 25.12.2007(UTC)
Сообщений: 1,731
Мужчина
Откуда: КРИПТО-ПРО

Поблагодарили: 176 раз в 167 постах
Хеш с солью.
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.