Вызов com-объекта с использованием поставщика учетных данных

Я хочу создать приложение для входа в Windows, которое будет использовать QR-код, графический пароль и пароль движения Kinect для моего школьного проекта.

Я узнал, что мне нужно будет использовать поставщиков учетных данных. Это мой первый раз, когда я использую его, и я очень смущен.

Мой вопрос: возможно ли создать приложение с помощью вышеперечисленного, а затем вызвать приложение поставщиком учетных данных? И должно ли приложение, которое я делаю, быть ком-объектом?

Заранее спасибо!


person David Ten    schedule 01.12.2012    source источник


Ответы (2)


Хорошая новость --- да это возможно! Плохие новости --- у вас много работы ;)
В качестве совета, лучше, если вы сделаете своего поставщика учетных данных как можно более простым, а всю работу по аутентификации пользователя через

QR-код, графический пароль и пароль Kinect Motion

поставит в другое приложение. Таким образом, этот поставщик учетных данных передаст введенные учетные данные этому приложению и получит результат проверки подлинности. Приложение сделает самую тяжелую работу. Это приложение должно быть службой Windows, потому что оно всегда работает в зависимости от того, есть ли какие-либо пользовательские сеансы или нет. Связь между приложением и поставщиком учетных данных может осуществляться, например, с помощью именованных каналов или любого другого механизма ipc.

По другим вопросам:
Поставщик учетных данных сам по себе является COM.
Для связи с другими приложениями они не обязательно должны быть COM.
Вы можете использовать любое приложение от поставщика учетных данных, насколько у вас достаточно прав.

person gdbcore    schedule 03.12.2012

Процесс не обязательно должен быть службой, вы можете запустить exe из вашего COM-объекта.

Что вы можете сделать, так это перепрограммировать / создать кодовую базу вашего COM-объекта, а затем привязать его к нему из Credetial Provider в Initialize().

В GetSerialization() вы должны вызвать метод в COM-объекте, который запускает процесс (exe) и подключается через именованный канал. Он возвращает необходимые значения поставщику учетных данных, и вы продолжаете вход в систему.

person Dawie Snyman    schedule 08.04.2013