Я создал приложение C ++, которое загружает DLL (плагины). Перед загрузкой dll приложение проверяет, является ли цифровая подпись dll частью белого списка. Это сделано для того, чтобы загружались только авторизованные dll.
Я пытаюсь сделать что-то подобное, используя вне процесса COM-сервер / клиент. COM-сервер должен гарантировать, что только определенные клиенты могут получить к нему доступ (из белого списка). Я знаю, что Microsoft предоставляет много разных механизмов аутентификации для COM, но они казаться вращаться вокруг идентичности приложений (учетная запись используется для его запуска). В конечном итоге мне нужен безопасный способ убедиться, что клиент COM — это то, кем они себя называют, и что они в моем белом списке.
Я открыт для других способов достижения этого, но не использование COM на самом деле не вариант.
Спасибо за любую помощь, которую вы можете предоставить
Я думаю, что это может быть достигнуто в DCOM Config в сочетании с доверенными сертификатами клиентов.
Другой способ — реализовать метод в интерфейсе, где сервер проверяет цифровую подпись клиента. В этой ссылке приведен пример, как зачитать сертификат клиента
Как мне прочитать подпись встроенного кода в C ++?