Запуск исполняемого файла C ++ из приложения C # и сохранение контекста безопасности на основе ролей

StackOverflow https://stackoverflow.com/questions/462160

  •  19-08-2019
  •  | 
  •  

Вопрос

Во-первых, я знаю, что это, вероятно, высокий заказ, но ...:)

У нас есть программное обеспечение, которое взаимодействует с оборудованием, производимым нашей компанией. Это программное обеспечение загружает сборку .NET, и это действует как наш интерфейс к оборудованию.

В настоящее время у нас есть приложение Launcher, написанное на C #, которое обеспечивает безопасность на основе ролей. Этот 'Launcher' запускает исполняемый файл C ++ с аргументами командной строки (сборка .NET для использования) через процесс. Затем исполняемый файл C ++ загружает предоставленную сборку .NET и использует ее для выполнения своих действий.

Проблема заключается в том, что я запускаю приложение C ++ в процессе, и я теряю контекст безопасности на основе ролей, предоставляемый модулем запуска.

Можно ли как-нибудь запустить приложение C ++ и сохранить контекст безопасности на основе ролей?

Спасибо, что нашли время прочитать это. Если у вас есть какие-либо вопросы, пожалуйста, дайте мне знать.

Спасибо,

Адам

Это было полезно?

Решение

Вам также придется изменить приложение C ++, чтобы проверить роли.

Если вы можете это сделать, вы можете разбить часть своего приложения на C # на несколько сборок. В частности, возьмите роли, входящие в приложение C #, и скомпилируйте их как dll с расширениями COM / ActiveX.

Затем вы можете вызвать C # dll (через COM), чтобы проверить разрешения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top