Текущая ситуация такова: у нас есть производственная служба WCF .net 3.5, используемая несколькими приложениями в организации по сравнению с wsHttpBinding или netTcpBinding.Аутентификация пользователя выполняется на транспортном уровне с использованием встроенной безопасности Windows.Эта служба имеет метод Foo(string parameter)
, который может вызываться только членами указанных групп AD.Строковый параметр обязателен.
В игру вступило новое клиентское приложение (.net 3.5, консольное приложение C #), что исключает необходимость использования строкового параметра.Однако только вызовы из этого конкретного приложения должны позволять пропускать строковый параметр.Идентификатор вызывающей стороны клиентского приложения все еще должен быть известен серверу, поскольку все еще действует ограничение группы AD (исключая олицетворение на стороне клиента).
Я нашел способ передать«свидетельство» вызывающей (строго именованной) сборки в заголовках сообщений , но этот метод явно небезопасен, поскольку «свидетельство» может быть легко подделано.Кроме того, CAS (защита доступа к коду) кажется возможным решением, но я не могу понять, как использовать CAS в этом конкретном сценарии.
Есть ли у кого-нибудь предложения о том, как решить эту проблему?проблема?
Редактировать: Я нашел другую тему на эту тему ;очевидно, вывод, что это просто невозможно реализовать безопасным способом.