Считыватель смарт-карт обнаружен, но смарт-карта отсутствует.

Вопрос или проблема

У меня Windows 7 работает в VirtualBox. Windows 7 содержит приложение, для работы которого требуется смарт-карта.

В системе хоста есть считыватель смарт-карт, и под Linux (родная ОС) я могу видеть как считыватель, так и карту.

В VirtualBox, если в считывателе смарт-карт есть карта, я могу подключить считыватель как USB-устройство. Это находится в меню Устройства => USB-устройства => Generic EMV Smartcard Reader. Windows 7 может затем увидеть считыватель смарт-карт, но никогда не видит саму карту.

Вот вывод Windows с “certutil -scinfo”:

Менеджер ресурсов смарт-карт Microsoft работает.

Текущее состояние считывателя/карты: Считыватели: 1  
     0: Generic EMV Smartcard Reader 0  
--- Считыватель: Generic EMV Smartcard Reader 0  
--- Состояние: SCARD_STATE_EMPTY  
--- Состояние: Нет карты.  
--- Карта:  

=======================================================  
Анализ карты в считывателе: Generic EMV Smartcard Reader 0  

--------------===========================--------------

Готово.  
Команда CertUtil: -SCInfo успешно выполнена.

Я попробовал перезагрузить Windows, запустить и остановить службу смарт-карт, вынуть и вставить обратно карту. Ничего не сработало, и я не смог найти в интернете ничего полезного.

Обновление

Перезагрузил главный компьютер (Linux) и снова запустил VirtualBox. Без эффекта.

Я также удалил драйвер MS (Micorsoft Usbccid Smartcard Reader (WUDF)). Затем я “отключил” USB-считыватель карт и снова “подключил” его. Windows переустановил тот же драйвер и снова не удалось.

Обновление 2

Иногда удаление драйвера Windows помогает. Все еще похоже на серию случайных событий, чтобы заставить это работать правильно.

Так что после “подключения” и “отключения” считывателя от виртуальной машины и удаления и вставления карты, он наконец-то заработал. Понятия не имею, что изменилось или почему, но похоже, что выполнение “танца с бубном” с оборудованием в конце концов убедит Windows увидеть считыватель и карту.

Обновление

Все еще серьезные проблемы с ним. Кажется, что между подключением и отключением, удаление драйвера Windows также помогает “расшатать” неправильное состояние. Но это все еще кажется случайным образом.

Это ужасный пользовательский опыт.

Гостевая ОС из любой виртуальной среды не позволяет видеть существующие порты и подключенные устройства. Вы будете подключать и отключать непрерывно, и это может не дать результата.

Итак, если у вас все еще возникли проблемы, попробуйте это стороннее программное обеспечение. Оно может быть хорошим помощником. http://www.flexihub.com/access-remote-emv-smart-cardreader.html

Я уже пробовал его с VirtualBox сегодня – для меня сработало, но я использую считыватель карт EMV, и моя ОС хоста – Mac, если это важно. Гостевая ОС (Windows) видит устройство (считыватель) как подключенное напрямую.

Мой опыт показывает, что гостевая Windows не получает уведомления о вставке смарт-карты. У меня есть два трюка для решения этой проблемы:

  • при использовании внешнего USB-считывателя вставьте смарт-карту в считыватель, пока он отключен, подключите считыватель, затем система USB Windows правильно запускает “обнаружение нового устройства”, и все отображается
  • при использовании внутреннего считывателя на моем хосте вставьте смарт-карту, перейдите в Диспетчер устройств гостевой Windows, выполните “Сканирование для изменения оборудования”, затем устройство смарт-карты отображается

Мне не нужно устанавливать/удалять устройство считывателя смарт-карт в гостевой. Мне также не всегда нужно пересканировать.

Я ищу способ упростить пересканирование, возможно, devcon rescan от администратора подойдет (и затем быстрый способ получить devcon.exe становится интересным).

.

Ответ или решение

Если вы столкнулись с проблемой, когда в Windows 7, работающей в виртуальной машине VirtualBox, распознается считыватель смарт-карт, но сама смарт-карта не видна, это может свидетельствовать о нескольких возможных причинах и потребует ряда решений для определения и устранения корня проблемы. Опишем более подробно возможные действия, которые должны помочь в данной ситуации.

F – Features and Benefits (Особенности и Преимущества)

Первое, что следует учесть, это то, что Windows 7 должна корректно распознавать устройства через USB, подключённые через VirtualBox. В вашем случае считыватель распознаётся как Generic EMV Smartcard Reader, но карта — нет. Это может быть связано с тем, что Windows не получает уведомления о вставке карты, или драйверы не полностью поддерживают устройство.

O – Offer (Предложение)

  1. Проверьте настройку USB в VirtualBox:

    • Убедитесь, что вы используете последнюю версию VirtualBox и дополнения к гостевой ОС (Guest Additions).
    • Убедитесь, что USB-контроллер в настройках виртуальной машины соответствует версиям вашего оборудования (USB 2.0 или USB 3.0).
  2. Переподключите считыватель:

    • Отключите считыватель от виртуальной машины и отсоедините USB от хоста. Вставьте карту в считыватель, затем подключите считыватель обратно к хосту, а затем к VirtualBox.
  3. Рестарт службы Smart Card:

    • В Windows 7 откройте "Управление компьютером" (compmgmt.msc) и перейдите в "Службы".
    • Найдите службу "Smart Card", перезапустите её, а затем попытайтесь снова считать карту.

R – Reason to believe (Аргументы)

Исходя из опыта многих пользователей, VirtualBox может столкнуться с проблемами доступа к устройствам, связанным с USB, особенно когда устройство меняет состояние (вставлено/удалено). Иногда операция "Обнаружения нового оборудования" в Guest OS может не срабатывать автоматически.

E – Emotional connection (Эмоциональная связь)

Проблемы такого плана могут вызывать чувство разочарования, поскольку полноценная работа приложения, требующего смарт-карту, нарушается. Однако стоит отметить, что решение часто скрывается в деталях конфигурации и последовательности действий.

S – Specifics (Конкретика)

  1. Сканирование изменений оборудования:

    • В открывшемся диспетчере устройств Windows выполните команду "Сканировать на предмет изменений оборудования" (может помочь командная утилита devcon rescan).
  2. Третий вариант: использование программного обеспечения третьих сторон

    • Рекомендуется попробовать использовать утилиту FlexiHub для облегчения доступа VirtualBox к смарт-картам в конфигурациях.

По всем вышеперечисленным пунктам, если проблема остается, возможно, стоит задуматься о переходе на более новую версию Windows, так как Windows 7 устарела и может иметь проблемы с поддержкой современных драйверов и USB-устройств.

Подходя решительно и систематически к решению проблемы с подключением смарт-карт в VirtualBox, можно добиться стабильной и эффективной работы приложений, требующих авторизации смарт-картами.

Оцените материал
Добавить комментарий

Капча загружается...