Получить имя пользователя

Стартовая страница Форумы Разработка и интеграция Получить имя пользователя

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Автор
    Сообщения
  • #21100
    Romiros
    Участник

    Добрый день. В разрабатываемом драйвере для прибора необходимо получить имя пользователя отправившего команду из web. Есть ли возможность это сделать? У объекта Cmd не UserName не UserId нет.
    Это необходимо для формирования более информативного события в системе. Стандартная запись события при отправке команды к сожалению совсем неинформативная.

    #21101
    a80808
    Участник

    Боюсь кроме Михаила никто не подскажет, где в SCADA лежит что то похожее (на схемах же выводится имя пользователя). Если конечно про пользователя SCADA.
    А так вроде GetUserID() в Microsoft.AspNet.Identity

    #21102
    Romiros
    Участник

    Если конечно про пользователя SCADA.
    Пользователь SCADA.

    на схемах же выводится имя пользователя
    В вебе есть для этого механизмы.

    Драйвер же получает команду от сервера и получается не знает кто её отправил. Понятно что проверка на права делается в web перед отправкой, но мне нужно сформировать собственное событие и включить имя пользователя в это сообщение. Некоторые критические команды записываемые в прибор нужно логировать скажем так пофамильно.

    Просто вместо такой строки:
    Команда ТУ: канал упр.=401, польз.=11, тип=Standard, КП=101, номер=10, значение=1,000
    хотелось бы:
    Команда ТУ: Admin — коррекция времени прибора

    #21112
    Mikhail
    Модератор

    Добрый день!

    Если говорить про драйвер, то такая возможность появляется в версии 6 🙂 Ссылка на исходный код

    А в текущей версии ID пользователя, отправившего команду, доступно в модулях. И в Коммуникатор не передаётся. Ссылка
    То есть сейчас потребуется также разработать небольшой модуль, который будет мониторить команды и отправлять сообщения.

    #21113
    Mikhail
    Модератор

    Автоматически формируемые события при отправке команды — по сути служебные.
    В модуле Вам также потребуется загрузить таблицу пользователей в своём коде для того, чтобы извлекать имя.

    #21117
    Romiros
    Участник

    Спасибо за развернутый ответ.

    Если говорить про драйвер, то такая возможность появляется в версии 6 🙂
    Это здорово! А то хотел просить добавить 🙂.

    То есть сейчас потребуется также разработать небольшой модуль, который будет мониторить команды и отправлять сообщения.
    Думал об этом, но слишком громоздко. В 5 версии сообщение будет без юзера, а в версии 6 как положено. Должен же быть какой-то апгрейд 🙂.

    В модуле Вам также потребуется загрузить таблицу пользователей в своём коде для того, чтобы извлекать имя.
    По идее можно через это: dataAccess.GetUserName(userID)

    #21124
    Mikhail
    Модератор

    По идее можно через это: dataAccess.GetUserName(userID)

    Это в веб-приложении (веб-плагине).

Просмотр 7 сообщений - с 1 по 7 (из 7 всего)
  • Вы должны авторизироваться для ответа в этой теме.